comparison Plugin/DefaultConfiguration.json @ 149:423531fb1200

SINGLE_RESOURCE_PATTERNS to facilitate api-key support
author Alain Mazy <am@osimis.io>
date Thu, 15 Feb 2024 16:30:21 +0100
parents 20c638fa8b07
children 9f686ee4b158
comparison
equal deleted inserted replaced
148:20c638fa8b07 149:423531fb1200
57 ["post", "^/tools/lookup$", ""], // currently used to authorize downloads in Stone (to map the StudyInstanceUID into an OrthancID. Not ideal -> we should define a new API that has the resource ID in the path to be able to check it at resource level) but, on another hand, you do not get any Patient information from this route 57 ["post", "^/tools/lookup$", ""], // currently used to authorize downloads in Stone (to map the StudyInstanceUID into an OrthancID. Not ideal -> we should define a new API that has the resource ID in the path to be able to check it at resource level) but, on another hand, you do not get any Patient information from this route
58 58
59 // elemental browsing in OE2 59 // elemental browsing in OE2
60 ["post", "^/tools/find$", "all|view"], 60 ["post", "^/tools/find$", "all|view"],
61 ["get" , "^/(patients|studies|series|instances)(|/)", "all|view"], 61 ["get" , "^/(patients|studies|series|instances)(|/)", "all|view"],
62 ["get" , "^/(patients|studies|series|instances)/([a-f0-9-]+)$", "all|view"],
63 ["get" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/(studies|study|series|instances)$", "all|view"],
64 ["get" , "^/instances/([a-f0-9-]+)/(tags|header)$", "all|view"],
65 ["get" , "^/statistics$", "all|view"], 62 ["get" , "^/statistics$", "all|view"],
66 ["get" , "^/changes$", "all|view"], 63 ["get" , "^/changes$", "all|view"],
64
65 // single resources patterns (SINGLE_RESOURCE_PATTERNS is an alias for all single resource patterns defined in https://orthanc.uclouvain.be/hg/orthanc-authorization/file/tip/Plugin/DefaultAuthorizationParser.cpp)
66 // (a user must have access to the route + have an authorized label to access the resource)
67 ["get" , "SINGLE_RESOURCE_PATTERNS", "all|view"],
67 68
68 // create links to open viewer or download resources 69 // create links to open viewer or download resources
69 ["put", "^/auth/tokens/(viewer-instant-link|meddream-instant-link)$", "all|view"], 70 ["put", "^/auth/tokens/(viewer-instant-link|meddream-instant-link)$", "all|view"],
70 ["put", "^/auth/tokens/(download-instant-link)$", "all|download"], 71 ["put", "^/auth/tokens/(download-instant-link)$", "all|download"],
71 72
89 ["get" , "^/DICOM_WEB_ROOT/servers$", "all|send|q-r-remote-modalities"], 90 ["get" , "^/DICOM_WEB_ROOT/servers$", "all|send|q-r-remote-modalities"],
90 ["get" , "^/DICOM_WEB_ROOT/(servers)/(.*)/stow$", "all|send"], 91 ["get" , "^/DICOM_WEB_ROOT/(servers)/(.*)/stow$", "all|send"],
91 92
92 // DICOMWeb QIDO-RS 93 // DICOMWeb QIDO-RS
93 ["get" , "^/DICOM_WEB_ROOT/(studies|series|instances)(|/)$", "all|view"], 94 ["get" , "^/DICOM_WEB_ROOT/(studies|series|instances)(|/)$", "all|view"],
94 // DICOMWeb WADO-RS (a user must have access to the route + have an authorized label)
95 ["get" , "^/DICOM_WEB_ROOT/studies/([.0-9]+)(|/series|/metadata)(|/)$", "all|view"],
96 ["get" , "^/DICOM_WEB_ROOT/studies/([.0-9]+)/series/([.0-9]+)(|/instances|/rendered|/metadata)(|/)$", "all|view"],
97 ["get" , "^/DICOM_WEB_ROOT/studies/([.0-9]+)/series/([.0-9]+)/instances/([.0-9]+)(|/|/frames/.*|/rendered|/metadata|/bulk/.*)(|/)$", "all|view"],
98 95
99 // modifications/anonymization 96 // modifications/anonymization
100 ["post", "^/(patients|studies|series|instances)/([a-f0-9-]+)/(modify|merge)(.*)$", "all|modify"], 97 ["post", "^/(patients|studies|series|instances)/([a-f0-9-]+)/(modify|merge)(.*)$", "all|modify"],
101 ["post", "^/(patients|studies|series|instances)/([a-f0-9-]+)/anonymize(.*)$", "all|anonymize"], 98 ["post", "^/(patients|studies|series|instances)/([a-f0-9-]+)/anonymize(.*)$", "all|anonymize"],
102 99
103 // labels 100 // labels
104 ["get", "^/tools/labels$", "all|view|edit-labels"], 101 ["get", "^/tools/labels$", "all|view|edit-labels"],
105 ["get" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/labels$", "all|view"],
106 ["put" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/labels/(.*)$", "all|edit-labels"], 102 ["put" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/labels/(.*)$", "all|edit-labels"],
107 ["delete" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/labels/(.*)$", "all|edit-labels"], 103 ["delete" , "^/(patients|studies|series|instances)/([a-f0-9-]+)/labels/(.*)$", "all|edit-labels"],
108 104
109 // deletes 105 // deletes
110 ["delete" , "^/(patients|studies|series|instances)/([a-f0-9-]+)$", "all|delete"], 106 ["delete" , "^/(patients|studies|series|instances)/([a-f0-9-]+)$", "all|delete"],