You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: specification/validated-relationships-service-api.yaml
+31-10Lines changed: 31 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -72,20 +72,41 @@ info:
72
72
73
73
For more details see [Network access for APIs](https://digital.nhs.uk/developer/guides-and-documentation/network-access-for-apis).
74
74
75
-
## Security and authorisation
75
+
## Access Modes
76
76
77
-
This API is [user-restricted](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#user-restricted-apis), meaning an end user must be present, authenticated and authorised.
77
+
This API supports both [user-restricted](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#user-restricted-apis) and [application-restricted](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#application-restricted-apis) access modes.
78
78
79
-
The end user must be:
80
-
* a patient who receives health and social care or makes use of NHS services
81
-
* strongly authenticated, using [NHS login](https://digital.nhs.uk/services/nhs-login)
79
+
- [User-restricted access](#user-restricted-access) meaning an end user must be present, authenticated and authorised.
80
+
- [Application-restricted access](#application-restricted-access) meaning we authenticate the calling application but not the end user
82
81
83
-
To use this access mode, use one of the following security patterns:
82
+
For more information on access modes and how to use them, see the developer [security and authorisation guide](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation).
|[NHS login - combined authentication and authorisation](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation/user-restricted-restful-apis-nhs-login-combined-authentication-and-authorisation) |OAuth 2.0 authorisation code with API key and secret |No need to integrate and onboard separately with NHS login. |No access to user information. |
88
-
|[NHS login - separate authentication and authorisation](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation/user-restricted-restful-apis-nhs-login-separate-authentication-and-authorisation) |OAuth 2.0 token exchange with signed JWT |Gives access to user information. |Need to integrate and onboard separately with NHS login. |
84
+
### User-restricted access
85
+
86
+
User-restricted access meaning an end user must be present, authenticated and authorised.
87
+
88
+
#### Patient access mode
89
+
If the end user is a patient then you must use this access mode.
90
+
91
+
[Review all patient access modes](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#patient-access-mode)
92
+
93
+
Validated Relationships Service checks the patient is P9 verified and has a high [vector of trust](https://nhsconnect.github.io/nhslogin/vectors-of-trust/) (VOT).
94
+
95
+
Allowed vectors of trust are:
96
+
- `P9.Cp.Cd`
97
+
- `P9.Cp.Ck`
98
+
- `P9.Cm`
99
+
100
+
#### Healthcare worker access mode
101
+
If the end user is a healthcare worker then you must use this access mode.
102
+
103
+
[Review all CIS2 healthcare worker access modes](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#healthcare-worker-access-mode)
104
+
105
+
### Application-restricted access
106
+
107
+
This API is application-restricted, meaning we authenticate the calling application but not the end user.
108
+
109
+
[Review all application-restricted access modes](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#application-restricted-apis)
89
110
90
111
## Headers
91
112
This API is case-insensitive when processing request headers, meaning it will accept headers regardless of the letter casing used. (e.g. X-Request-Id, x-request-id are treated the same). When sending headers back in the response, we preserve the exact casing as received in the original request.
0 commit comments