Document toolboxDocument toolbox

Technische functionaliteiten (KMSaaS)



Dit document heeft niet tot doel om de technieken van encryptie toe te lichten, noch best practices. Toch kunnen we hier ter info enkele bijkomende informatie mee geven dat niet bindend is. Wij verwijzen naar de site van AWS en hun blauwdrukken in deze materie, waar u de laatste informatie kunt vinden. 

Customer Master Keys (CMK) en Data Keys (DK) 

De encryptie oplossing in AWS KMS gebruikt 2 type sleutels: 

  • Customer Master Key (CMK) 

  • Data Key (DK) gebruikt voor de eigenlijke encryptie van de informatie 

De CMKs worden centraal (in de AWS KMS account beheerd door het Agentschap Digitaal Vlaanderen) gegenereerd, gestockeerd (fysiek in HSMs) en worden gebruikt om de Data Key’s te encrypteren. 

De AWS KMS kan DKs genereren en de CMK wordt gebruikt om de DK te encrypteren en te decrypteren. De DKs worden vervolgens gebruikt om de gegevens van de afnemer te encrypteren en te decrypteren. 

De CMKs worden veilig opgeslagen in AWS KMS HSM. Ze kunnen niet in leesbare vorm worden geëxporteerd vanuit AWS KMS HSM. De DKs die in AWS KMS zijn gemaakt, kunnen met een CMK worden geëxporteerd en beveiligd.  

De geëncrypteerde DK is typisch samen met de Data in de AWS account van de afnemer gestockeerd. 

Elke keer een afnemer nieuwe CMK nodig heeft moet de afnemer de CMKs aan het Agentschap Digitaal Vlaanderen aanvragen. Deze procedure is duidelijk omschreven, zie Hoe kan ik aansluiten? 

 Er bestaat een hiërarchie tussen de CMKs en de DKs. Een CMK kan gebruikt worden om verschillende DKs te encrypteren.  

We adviseren om een CMK te gebruiken per afnemer/entiteit, per toepassing en per omgeving. Dit betekent dat de geëncrypteerde resources binnen een afnemer, toepassing en omgeving onder de hiërarchie vallen van dezelfde CMK.

Voorbeeld van gebruik van CMK & DK 

Agentschap A heeft 3 toepassingen (X, Y, Z). Toepassing X heeft 3 omgevingen (Productie, T&I, Dev). 

Elke omgeving heeft zijn eigen CMK. 

De Productie omgeving bevat 2 EC2 instances met elke keer 2 EBS volumes en 4 S3 buckets. Elke EBS volume en elke S3 bucket wordt met een aparte DK geëncrypteerd. Alle DK zijn door dezelfde CMK geëncrypteerd. 

De T&I omgeving is analoog aan de Productie omgeving. Deze omgeving maakt gebruik van een andere CMK. 

Toepassing Y heeft maar 1 Productie omgeving. Deze productie omgeving maakt gebruik van zijn eigen CMK. 

Key Rotatie 

De cryptografische best practices ontmoedigen het uitgebreid hergebruik van encryptie sleutels.  

Er zijn 2 mogelijkheden om nieuw cryptografisch materiaal voor AWS Key Management Service (AWS KMS) te creëren: 

  • Nieuwe CMK aanmaken en daarna de toepassing van de CMK of alias aanpassen 

  • Automatische sleutelrotatie inschakelen voor een bestaande CMK 

HSA backing key (HBK) rotatie 

Voor de bouwsteen “encryptie at rest in AWS” werd er beslist om de automatische sleutelrotatie van “CMK - Customer Managed” in te schakelen. 

AWS KMS genereert elk jaar nieuw cryptografisch materiaal voor de CMK. AWS KMS slaat ook het oudere cryptografisch materiaal van de CMK op, zodat het nog kan gebruikt worden om gegevens te decrypteren die het heeft geëncrypteerd. 

Sleutelrotatie wijzigt alleen de achtergrondsleutel (HBK) van de CMK. Het cryptografisch materiaal dat wordt gebruikt bij encryptie. De eigenschappen van de CMK veranderen niet. De CMK blijft onveranderd. De CMK is dezelfde logische bron, ongeacht hoe vaak de achtergrondsleutel ervan verandert. 

Customer Master Key (CMK) rotatie 

Het gebruik van een alias van de CMK is niet altijd mogelijk in de account van de AWS afnemer. Daarom moet de exacte CMK id ingevuld worden. 

Een nieuwe CMK aanmaken voor de key rotatie is in de context van de veiligheidsbouwsteen “encryptie at rest in AWS” complex te beheren.  

Dit vraagt elke keer een coördinatie tussen de beheerder van de KMS (om een nieuwe CMK aan te maken) en de beheerder van de toepassing (om de CMK aan te passen).  

Data Key (DK) rotatie 

De rotatie van de CMK roteert alleen de CMK maar niet de Data Key.  

Om de DK te roteren moet de data volledig op nieuw geëncrypteerd worden. 

Deze actie moet vanaf de afnemer’s AWS account geïnitieerd worden. De procedure is afhankelijk van de type gegevens (b.v. snapshot van een EBS volume).

Relevante pagina's

Terminologie 

Kostenmodel

Hoe maak ik gebruik van het Sleutelbeheer? 

Stel je vraag?

Vragen of suggesties, contacteer ons via: integraties@vlaanderen.be 

Heb je nood aan ondersteuning bij het gebruik van de toepassing, contacteer de 1700.