...
- 500 – Interne serverfout, Dit kunnen technische of connectie problemen zijn met het backend systeem.
- 501 – Server heeft de HEAD aanvraag niet geïmplementeerd. HEAD is hetzelfde als GET, maar dan zonder body.
- 503 – Dienst niet beschikbaar. De aangeboden dienst kan in onderhoud zijn.
Autorisatie fouten.
In een productieomgeving is het wenselijk om voor het (kunnen) autoriseren zo min mogelijk informatie weg te geven.
Bestaat de FHIR Resource? | Kan autorisatie bepaalt worden? | Geautoriseerd? | HTTP Statuscode |
---|---|---|---|
√ | √ | √ | 20x (200 OK) |
√ | √ | x | 401 Unauthorized |
√ | x | ? | 403 Forbidden |
x | √ | √ | 404 Not Found |
x | √ | x | 403 Forbidden |
x | x | ? | 403 Forbidden |
Het idee van bovenstaande regels is dat eerst wordt bepaald of de aanroeper (principal) gerechtigd is voor een resource. Is het antwoord ‘nee’ of kan dat niet worden bepaald, bijvoorbeeld omdat de resource nodig is om deze beslissing te kunnen nemen en de resource niet bestaat, dan wordt 403 Forbidden teruggegeven. Op deze manier wordt geen informatie teruggegeven over het al dan niet bestaan van een resource aan een niet-geautoriseerde principal.
Een bijkomend voordeel van de strategie om eerst te bepalen of er toegang is, meer ruimte biedt om de toegangscontrole te scheiden van de business code.
Neem zoveel mogelijk context op in uw berichten en wees beschrijvend.
...