Authentication en beveiliging

Al het netwerk verkeer word standaard beviligd door minimaal TLS-1.3 encryptie.

Voor authenticatie wordt gebruik gemaakt van oauth2 protocol met client-credentials grant. Dit is een industry standaard (See https://oauth.net/2/) waardoor er standaard ondersteuning is voor veel programmeer talen en frameworks. Standaarden als nl-gov en edustandaard zijn hier ook op gebaseerd.

Op dit moment worden er geen eisen aan de gebruikte certificaten gesteld anders dan dat ze geldig, herleidbaar naar de leverancier (domainnaam) en een geldig en controleerbaar root-certificaat moeten hebben. Edustandaard werkt aan een REST profiel, waarbij ook TLS 1.3 en client-credential grant de basis zijn.

sequenceDiagram
      autonumber
      consumer->>+authenticator: Get Auth Token
      authenticator->>-consumer: Auth Token
      consumer->>+producer: Request (with auth token)
      producer->>-consumer: Response

scopes

Each request will need a scope in the auth token. voor OKE zullen deze beginnen met “nl-test-admin”. de verschillende flows zullen verschillende catagorie scopes krijgen, waardoor er fijnmazig toestemming geven kan worden op niveau een MORA referentie componenten.

zie ook H5 Koppelvlakken in Implementation documentation en de openapi specificatie voor OKE

we onderscheiden de volgende scopes

eror handling

every request will use http response codes. 200 for a successful request, xxx for a unsuccesfull request, both with a response in JSON with more details of the warnings or errors.

The OKE will follow the guidelines from OOAPI workgroup en you can find details in : openAPI spec for OKE