comparison Plugin/PermissionParser.cpp @ 194:85859ec3aa7e

added support for roles/permissions edition
author Alain Mazy <am@orthanc.team>
date Fri, 14 Jun 2024 16:26:53 +0200
parents c4b908970ae4
children 2f1e872e8eaa
comparison
equal deleted inserted replaced
188:c4b908970ae4 194:85859ec3aa7e
149 Replace(regex, "DICOM_WEB_ROOT", strippedDicomWebRoot); 149 Replace(regex, "DICOM_WEB_ROOT", strippedDicomWebRoot);
150 150
151 LOG(WARNING) << "Authorization plugin: adding a new permission pattern: " << lowerCaseMethod << " " << regex << " - " << permission; 151 LOG(WARNING) << "Authorization plugin: adding a new permission pattern: " << lowerCaseMethod << " " << regex << " - " << permission;
152 152
153 permissionsPattern_.push_back(PermissionPattern(parsedMethod, regex, permission)); 153 permissionsPattern_.push_back(PermissionPattern(parsedMethod, regex, permission));
154
155 { // extract individual permissions
156 std::set<std::string> permissions;
157 Orthanc::Toolbox::SplitString(permissions, permission, '|');
158
159 for (std::set<std::string>::const_iterator it = permissions.begin(); it != permissions.end(); ++it)
160 {
161 if (!it->empty())
162 {
163 permissionsList_.insert(*it);
164 }
165 }
166
167 }
154 } 168 }
155 169
156 bool PermissionParser::Parse(std::set<std::string>& permissions, 170 bool PermissionParser::Parse(std::set<std::string>& permissions,
157 std::string& matchedPattern, 171 std::string& matchedPattern,
158 const OrthancPluginHttpMethod& method, 172 const OrthancPluginHttpMethod& method,