Skip to content

Commit 4058c3d

Browse files
NPA-4599: Block resources rather than specify only valid resources
1 parent 7983e81 commit 4058c3d

File tree

4 files changed

+23
-31
lines changed

4 files changed

+23
-31
lines changed

proxies/live/apiproxy/resources/py/check-app-enabled-endpoint.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
requested_endpoint = (path_suffix, request_verb)
55

66

7-
auth_permitted = requested_endpoint in [("/FHIR/R4/Consent", "GET")]
7+
auth_forbidden = requested_endpoint in [
8+
("/FHIR/R4/RelatedPerson", "GET"),
9+
("/FHIR/R4/QuestionnaireResponse", "POST"),
10+
]
811

9-
flow.setVariable("app_auth_permitted", auth_permitted)
12+
flow.setVariable("app_auth_forbidden", auth_forbidden)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
auth_level = flow.getVariable("accesstoken.auth_level")
2+
path_suffix = flow.getVariable("proxy.pathsuffix")
3+
request_verb = flow.getVariable("request.verb")
4+
5+
requested_resource = (path_suffix, request_verb)
6+
7+
if auth_level == "p9":
8+
blocked_resources = [("/FHIR/R4/Consent", "POST"), ("/FHIR/R4/Consent", "PATCH")]
9+
elif auth_level == "all3":
10+
blocked_resources = [("/FHIR/R4/QuestionnaireResponse", "POST")]
11+
else:
12+
blocked_resources = []
13+
14+
auth_forbidden = requested_resource in blocked_resources
15+
16+
flow.setVariable("user_auth_forbidden", auth_forbidden)

proxies/live/apiproxy/resources/py/user-enabled-endpoint.py

Lines changed: 0 additions & 27 deletions
This file was deleted.

proxies/live/apiproxy/targets/target.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
</Step>
3232
<Step>
3333
<Name>RaiseFault.403Forbidden</Name>
34-
<Condition>app_auth_permitted != true</Condition>
34+
<Condition>app_auth_forbidden = true</Condition>
3535
</Step>
3636
<Step>
3737
<Name>AddUserAuthHeaders</Name>
@@ -46,7 +46,7 @@
4646
</Step>
4747
<Step>
4848
<Name>RaiseFault.403Forbidden</Name>
49-
<Condition>user_auth_permitted != true</Condition>
49+
<Condition>user_auth_forbidden = true</Condition>
5050
</Step>
5151
<Step>
5252
<Name>DecodeAccessTokenJWT</Name>

0 commit comments

Comments
 (0)