Mercurial > hg > orthanc-authorization
comparison Plugin/AuthorizationParserBase.h @ 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 | a2e5ea1869bd |
comparison
equal
deleted
inserted
replaced
76:d301047ee3c4 | 77:94a9484d7f8f |
---|---|
21 #include "IAuthorizationParser.h" | 21 #include "IAuthorizationParser.h" |
22 #include "ResourceHierarchyCache.h" | 22 #include "ResourceHierarchyCache.h" |
23 | 23 |
24 #include <Compatibility.h> // For std::unique_ptr<> | 24 #include <Compatibility.h> // For std::unique_ptr<> |
25 | 25 |
26 #if BUILD_UNIT_TESTS == 1 | |
27 # include <gtest/gtest_prod.h> | |
28 #endif | |
29 | |
30 | |
26 namespace OrthancPlugins | 31 namespace OrthancPlugins |
27 { | 32 { |
28 class AuthorizationParserBase : public IAuthorizationParser | 33 class AuthorizationParserBase : public IAuthorizationParser |
29 { | 34 { |
30 private: | 35 private: |
45 const std::string& orthancId); | 50 const std::string& orthancId); |
46 | 51 |
47 void AddOrthancPatient(AccessedResources& target, | 52 void AddOrthancPatient(AccessedResources& target, |
48 const std::string& orthancId); | 53 const std::string& orthancId); |
49 | 54 |
55 void AddDicomPatient(AccessedResources& target, | |
56 const std::string& patientId); | |
57 | |
50 void AddDicomStudy(AccessedResources& target, | 58 void AddDicomStudy(AccessedResources& target, |
51 const std::string& studyDicomUid); | 59 const std::string& studyDicomUid); |
52 | 60 |
53 void AddDicomSeries(AccessedResources& target, | 61 void AddDicomSeries(AccessedResources& target, |
54 const std::string& studyDicomUid, | 62 const std::string& studyDicomUid, |
65 virtual void Invalidate(Orthanc::ResourceType level, | 73 virtual void Invalidate(Orthanc::ResourceType level, |
66 const std::string& id) ORTHANC_OVERRIDE | 74 const std::string& id) ORTHANC_OVERRIDE |
67 { | 75 { |
68 resourceHierarchy_->Invalidate(level, id); | 76 resourceHierarchy_->Invalidate(level, id); |
69 } | 77 } |
78 | |
79 FRIEND_TEST(DefaultAuthorizationParser, Parse); | |
80 protected: | |
81 ResourceHierarchyCache* GetResourceHierarchy() | |
82 { | |
83 return resourceHierarchy_.get(); | |
84 } | |
70 }; | 85 }; |
71 } | 86 } |