authentication

hi!:

I' have problems with the authentication sentence of the configuration file. When i turn to true, make the http request and stop inmediatly...

any ideas?

in my console apears this:

.
.
...
terminate called after throwing an instance of 'Orthanc::OrthancException'
Abortado

Regards!

Hello,

You most probably have a syntax error in your JSON configuration file.

Please post it so that we can provide further help.

Regards,
Sébastien-

well… here it goes:):

{
/**

  • General configuration of Orthanc
    **/

// The logical name of this instance of Orthanc. This one is
// displayed in Orthanc Explorer and at the URI “/system”.
“Name” : “MyOrthanc”,

// Path to the directory that holds the heavyweight files
// (i.e. the raw DICOM instances)
“StorageDirectory” : “OrthancStorage”,

// Path to the directory that holds the SQLite index (if unset,
// the value of StorageDirectory is used). This index could be
// stored on a RAM-drive or a SSD device for performance reasons.
“IndexDirectory” : “OrthancStorage”,

// Enable the transparent compression of the DICOM instances
“StorageCompression” : false,

// Maximum size of the storage in MB (a value of “0” indicates no
// limit on the storage size)
“MaximumStorageSize” : 0,

// Maximum number of patients that can be stored at a given time
// in the storage (a value of “0” indicates no limit on the number
// of patients)
“MaximumPatientCount” : 0,

// List of paths to the custom Lua scripts that are to be loaded
// into this instance of Orthanc
“LuaScripts” : [
],

// List of paths to the plugins that are to be loaded into this
// instance of Orthanc (e.g. “/libPluginTest.so” for Linux, or
// “./PluginTest.dll” for Windows).
“Plugins” : [
],

/**

  • Configuration of the HTTP server
    **/

// HTTP port for the REST services and for the GUI
“HttpPort” : 8042,

/**

  • Configuration of the DICOM server
    **/

// The DICOM Application Entity Title
“DicomAet” : “ORTHANC”,

// Check whether the called AET corresponds during a DICOM request
“DicomCheckCalledAet” : false,

// The DICOM port
“DicomPort” : 4242,

// The default encoding that is assumed for DICOM files without
// “SpecificCharacterSet” DICOM tag. The allowed values are “Ascii”,
// “Utf8”, “Latin1”, “Latin2”, “Latin3”, “Latin4”, “Latin5”,
// “Cyrillic”, “Arabic”, “Greek”, “Hebrew”, “Thai”, “Japanese”,
// and “Chinese”.
“DefaultEncoding” : “Latin1”,

// The transfer syntaxes that are accepted by Orthanc C-Store SCP
“DeflatedTransferSyntaxAccepted” : true,
“JpegTransferSyntaxAccepted” : true,
“Jpeg2000TransferSyntaxAccepted” : true,
“JpegLosslessTransferSyntaxAccepted” : true,
“JpipTransferSyntaxAccepted” : true,
“Mpeg2TransferSyntaxAccepted” : true,
“RleTransferSyntaxAccepted” : true,

/**

  • Security-related options for the HTTP server
    **/

// Whether remote hosts can connect to the HTTP server
“RemoteAccessAllowed” : true,

// Whether or not SSL is enabled
“SslEnabled” : false,

// Path to the SSL certificate (meaningful only if SSL is enabled)
“SslCertificate” : “certificate.pem”,

// Whether or not the password protection is enabled
“AuthenticationEnabled” : true,

// The list of the registered users. Because Orthanc uses HTTP
// Basic Authentication, the passwords are stored as plain text.
“RegisteredUsers” : {
// “alice” : “alicePassword”
},

/**

  • Network topology
    **/

// The list of the known DICOM modalities
“DicomModalities” : {
/**

  • Uncommenting the following line would enable Orthanc to
  • connect to an instance of the “storescp” open-source DICOM
  • store (shipped in the DCMTK distribution) started by the
  • command line “storescp 2000”.
    **/
    // “sample” : [ “STORESCP”, “localhost”, 2000 ]

/**

  • A fourth parameter is available to enable patches for a
  • specific PACS manufacturer. The allowed values are currently
  • “Generic” (default value), “StoreScp” (storescp tool from
  • DCMTK), “ClearCanvas”, “MedInria” and “Dcm4Chee”. This
  • parameter is case-sensitive.
    **/
    // “clearcanvas” : [ “CLEARCANVAS”, “192.168.1.1”, 104, “ClearCanvas” ]
    },

// The list of the known Orthanc peers
“OrthancPeers” : {
/**

  • Each line gives the base URL of an Orthanc peer, possibly
  • followed by the username/password pair (if the password
  • protection is enabled on the peer).
    **/
    // “peer” : [ “http://localhost:8043/”, “alice”, “alicePassword” ]
    // “peer2” : [ “http://localhost:8044/” ]
    },

/**

  • Advanced options
    **/

// Dictionary of symbolic names for the user-defined metadata. Each
// entry must map a number between 1024 and 65535 to an unique
// string.
“UserMetadata” : {
// “Sample” : 1024
},

// Dictionary of symbolic names for the user-defined types of
// attached files. Each entry must map a number between 1024 and
// 65535 to an unique string.
“UserContentType” : {
// “sample” : 1024
},

// Number of seconds without receiving any instance before a
// patient, a study or a series is considered as stable.
“StableAge” : 60,

// Enable the HTTP server. If this parameter is set to “false”,
// Orthanc acts as a pure DICOM server. The REST API and Orthanc
// Explorer will not be available.
“HttpServerEnabled” : true,

// Enable the DICOM server. If this parameter is set to “false”,
// Orthanc acts as a pure REST server. It will not be possible to
// receive files or to do query/retrieve through the DICOM protocol.
“DicomServerEnabled” : true,

// By default, Orthanc compares AET (Application Entity Titles) in a
// case-insensitive way. Setting this option to “true” will enable
// case-sensitive matching.
“StrictAetComparison” : false,

// When the following option is “true”, the MD5 of the DICOM files
// will be computed and stored in the Orthanc database. This
// information can be used to detect disk corruption, at the price
// of a small performance overhead.
“StoreMD5ForAttachments” : true,

// The maximum number of results for a single C-FIND request at the
// Patient, Study or Series level. Setting this option to “0” means
// no limit.
“LimitFindResults” : 0,

// The maximum number of results for a single C-FIND request at the
// Instance level. Setting this option to “0” means no limit.
“LimitFindInstances” : 0,

// The maximum number of active jobs in the Orthanc scheduler. When
// this limit is reached, the addition of new jobs is blocked until
// some job finishes.
“LimitJobs” : 10,

// If this option is set to “false”, Orthanc will not log the
// resources that are exported to other DICOM modalities of Orthanc
// peers in the URI “/exports”. This is useful to prevent the index
// to grow indefinitely in auto-routing tasks.
“LogExportedResources” : true,

// Enable or disable HTTP Keep-Alive (experimental). Set this option
// to “true” only in the case of high HTTP loads.
“KeepAlive” : false,

// If this option is set to “false”, Orthanc will run in index-only
// mode. The DICOM files will not be stored on the drive.
“StoreDicom” : true
}

I just changed the two first lines to which the article refers:

http://book.orthanc-server.com/faq/authentication.html

I have also tested the minimal configuration, with the daemon, and the result is as follows:

● orthanc.service - LSB: Orthanc init script
Loaded: loaded (/etc/init.d/orthanc)
Active: active (exited) since lun 2017-01-09 16:34:45 ART; 39s ago
Process: 32646 ExecStop=/etc/init.d/orthanc stop (code=exited, status=0/SUCCESS)
Process: 32656 ExecStart=/etc/init.d/orthanc start (code=exited, status=0/SUCCESS)

ene 09 16:34:45 ne systemd[1]: Starting LSB: Orthanc init script…
ene 09 16:34:45 ne systemd[1]: Started LSB: Orthanc init script.

using the configuration file ( /etc/orthanc/orthanc.json ), with the example user from the documentation

Hello,

[…]

// Whether or not the password protection is enabled
“AuthenticationEnabled” : true,

// The list of the registered users. Because Orthanc uses HTTP
// Basic Authentication, the passwords are stored as plain text.
“RegisteredUsers” : {
// “alice” : “alicePassword”
},

[…]

You must provide at least one user inside “RegisteredUsers”, against which to authenticate. Simply uncomment the line about the “alice” user, and set its password to whatever you want.

HTH,
Sébastien-

doesn’t work…

$ /etc/init.d/orthanc status
● orthanc.service - LSB: Orthanc init script
Loaded: loaded (/etc/init.d/orthanc)
Active: active (exited) since mar 2017-01-10 09:14:55 ART; 1min 26s ago
Process: 852 ExecStop=/etc/init.d/orthanc stop (code=exited, status=0/SUCCESS)
Process: 862 ExecStart=/etc/init.d/orthanc start (code=exited, status=0/SUCCESS)

ene 10 09:14:55 ne systemd[1]: Started LSB: Orthanc init script.

content of orthanc.json

Your configuration file works properly on my computer.

Make sure the folder " /var/lib/orthanc/db-v4" is writable, and make sure you use the proper configuration by inspecting the Orthanc logs.

Sébastien-

Now it works correctly! thank you very much!

I just changed the permissions of / var / lib / orthanc / db-v4

Regards!