Mercurial > hg > orthanc-authorization
diff Plugin/AuthorizationParserBase.cpp @ 77:94a9484d7f8f
fix security issues allowing to browse remote dicom servers + introduced UnitTests
author | Alain Mazy <am@osimis.io> |
---|---|
date | Wed, 15 Mar 2023 16:36:42 +0100 |
parents | 1a13c4fbc9a1 |
children | 7381a7674b36 |
line wrap: on
line diff
--- a/Plugin/AuthorizationParserBase.cpp Thu Mar 09 14:37:52 2023 +0100 +++ b/Plugin/AuthorizationParserBase.cpp Wed Mar 15 16:36:42 2023 +0100 @@ -102,6 +102,18 @@ target.push_back(AccessedResource(Orthanc::ResourceType_Study, study, studyDicomUid)); } + void AuthorizationParserBase::AddDicomPatient(AccessedResources& target, + const std::string& patientId) + { + std::string patient; + + if (!resourceHierarchy_->LookupOrthancId(patient, Orthanc::ResourceType_Patient, patientId)) + { + throw Orthanc::OrthancException(Orthanc::ErrorCode_UnknownResource); + } + + AddResourceInternal(target, Orthanc::ResourceType_Patient, patient); + } void AuthorizationParserBase::AddDicomSeries(AccessedResources& target, const std::string& studyDicomUid,