Standaarden:Beveiligd Gegevenstransport/certificaat validatie

Uit Kennisnet Developers Documentatie
< Standaarden:Beveiligd Gegevenstransport
Versie door Klein01 (overleg | bijdragen) op 21 jun 2021 om 11:45
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Naar navigatie springen Naar zoeken springen

Let op, deze voorschriften worden vervangen door de Uniforme Beveiligingsvoorschriften

Rijkwijdte

De genoemde validatie eisen hebben betrekking op alle voorkomende certificaten in de keten, te weten:

  • Client certificaat
  • Intermediate CA van het client certificaat, mits deze gebruikt wordt in de keten
  • Root CA van het client certificaat
  • Server certificaat
  • Intermediate CA van het server certificaat
  • Root CA van het server certificaat

Verloopdatum

Eisen

  • Er moet gecontroleerd worden of de verloopdatum van geen enkel certificaat in de keten verlopen is
  • Als een van de certificaten verlopen is, moet de verbinding direct verbroken worden

Verklaring

Certificaten hebben een vastgestelde geldigheidsperiode. Ze mogen niet voor en niet na de in het certificaat opgenomen periode gebruikt worden. Zie ook de eisen

Intrekkingsstatus

Eisen

  • De intrekkingsstatus van een certificaat moet gecontroleerd worden
  • Als een certificaat ingetrokken is moet direct de verbinding verbroken worden

Verklaring

Elke keer dat een certificaat geraadpleegd wordt moet gecontroleerd worden of de CA het niet heeft ingetrokken. Dit kan namelijk gebeuren omdat de partij van wie het certificaat is heeft besloten het terug te trekken omdat het een oud certificaat is dat is vervangen. Erger nog is als er iets mis is met deze partij dan wel de CA en dat de situatie niet meer te vertrouwen is, dan kan ook een certificaat worden teruggetrokken.
Ingetrokken certificaten mogen nooit gebruikt worden en zullen ook nooit meer in gebruik genomen worden. Er zal altijd een nieuw certificaat voor in de plaats moeten komen alvorens er weer gecommuniceerd mag worden met de partij van wie het certificaat was.

Validatie certificaat keten

Eisen

  • Bij elke vorm van beveiligde communicatie moet altijd de gehele certificaat keten gecontroleerd worden op correct functioneren

Verklaring

De certificaat keten moet voordat gecommuniceerd wordt altijd worden gecontroleerd. Is het intermediate certificaat wel uitgegeven door een CA in de lokale truststore? Is het certificaat van de wederpartij wel uitgegeven door de door hen meegeleverde CA? Zie ook de eisen aan de server

Certificaat voor de webservice geldig op het aangegeven domein?

Eisen

  • Het server certificaat dat uitgegeven is voor een specifiek domein moet overeenkomen met het domein in de URL. Er mag geen mismatch zijn tussen het domein waarvoor het certificaat bedoeld is en het domein dat opgevraagd wordt.
  • De verbinding moet direct verbroken worden bij een domein mismatch.

Verklaring

Het server certificaat is uitgegeven met als doel een specifiek domein te beschermen. Als client is het dan ook de bedoeling alle afwijkingen hierop af te wijzen. Als het domein in het certificaat niet overeenkomt met het domein waar de verbinding mee wordt opgezet, dan moet de verbinding worden afgewezen. Mogelijk is er aan de serverkant van de wederpartij iets mis met de configuratie of in het slechtste geval de verbinding of gehele server gecompromitteerd.

Client certificaat geldig binnen de keten?

Eisen

  • Het client certificaat dat wordt ontvangen door de webserver wanneer een client zich wil authentiseren met zijn certificaat moet uitgegeven zijn door de CA of CA's die zijn geaccepteerd als certificaat leverancier binnen de keten.
  • De verbinding moet verbroken worden als het client certificaat niet van een geaccepteerde CA afkomstig is.

Verklaring

De client certificaten binnen representeren een identiteit waarop vertrouwd moet kunnen worden. Deze identiteit wordt vastgesteld middels een vastomlijnde procedure, waar maar 1 of enkele CA's toe zijn gemachtigd om dit te doen. Op het moment dat een client certificaat is uitgegeven door een andere partij, ontstaat er geen vertrouwensrelatie tussen client en server. De server dient hierop de verbinding te verbreken.