Meteen naar de inhoud

Certificaten met een geldigheidsduur van 47 dagen komen eraan. Ben je klaar?

Handel nu →

Diepgaande analyse van AWS-Key Management Service

AWS-sleutelbeheer

Data encryptie in de cloud is de meest prominente gedachte die elke beveiligingsprofessional tegenwoordig in gedachten heeft. Tijdens het uitvoeren van gegevens encryptieBeveiligingssleutels zijn van het grootste belang. Het handmatig beheren van één beveiligingssleutel is relatief eenvoudig, maar als er veel beveiligingssleutels in gebruik zijn, wordt het beheer ervan omslachtig. Daarom ontstaat de behoefte aan geautomatiseerde sleutelbeheer diensten voor gegevensversleuteling.

AWS KMS (Key Management Service) biedt een gebruiksvriendelijke WebUI voor het beheer van beveiligingssleutels ter bescherming data-in-rust en data-in-gebruik. AWS KMS is een tijdelijke aanduiding voor CMK (Klant Hoofdsleutel) bronnen die sleutelmetadata bevatten om te versleutelen en decoderen de gegevens. AWS KMS kan ook worden geïntegreerd met diverse andere AWS-services, zoals Redshift, EBS, EFS, S3 en Secret Manager, om er maar een paar te noemen.

In het bericht van vandaag bespreken we de belangrijkste concepten van AWS KMS en de verschillende functies en integratie met andere AWS-services.

Sleutel typen

  1. AWS beheerde CMK'sDeze CMK's worden aangemaakt, beheerd en gebruikt door een AWS-service die is geïntegreerd met KMS namens de klant in diens AWS-account. "aws/s3" is bijvoorbeeld de standaardsleutel in S3 en wordt alleen gebruikt voor uw account om uw S3-buckets te versleutelen.
  2. Door de klant beheerde CMK'sDeze CMK's worden door de klant aangemaakt, beheerd en gebruikt in het AWS-account. Dit is de meest gebruikte methode bij gebruik van KMS, omdat het volledige toegangscontrole op gedetailleerd niveau biedt voor de beveiligingssleutels in een AWS-account.
  3. AWS-eigendom CMK'sDeze CMK's zijn eigendom van en worden beheerd door AWS-service(s) voor gebruik in meerdere AWS-accounts. De sleutel voor deze CMK's is niet zichtbaar voor gebruikers. Als u bijvoorbeeld de standaardversleuteling van S3 kiest, gebruikt S3 zijn eigen KMS CMK's die worden gedeeld over meerdere AWS-accounts.

Gegevenssleutels

Datasleutels zijn encryptiesleutels waarmee de gebruiker grote hoeveelheden data en andere data-encryptiesleutels kan versleutelen. Gebruikers kunnen AWS CMK's gebruiken om datasleutels te genereren, te versleutelen en te ontsleutelen. AWS KMS slaat de datasleutels echter niet op, beheert of volgt ze niet, en voert er ook geen cryptografische bewerkingen mee uit. Gebruikers moeten datasleutels buiten het bereik van AWS KMS gebruiken en beheren.

Toegangscontrole tot KMS CMK's

De belangrijkste manier om de toegang tot uw AWS KMS CMK's te beheren, is met IAM- en sleutelbeleid. Beleid is een combinatie van declaratieve statements die beschrijven wie toegang heeft tot wat.

  1. IAM-beleidBeleidsregels die aan een IAM-identiteit zijn gekoppeld, worden identiteitsgebaseerde beleidsregels genoemd.
  2. Belangrijk beleidBeleid dat aan bronnen is gekoppeld, wordt brongebaseerd beleid genoemd.

In AWS KMS moet u resourcegebaseerde beleidsregels (dat wil zeggen sleutelbeleid) koppelen aan uw CMK's. IAM-beleid alleen kan geen toegang tot CMK's verlenen aan IAM-gebruikers of -rollen.

Type CMKCMK-beheer via IAM-beleidCMK-beheer via sleutelbeleidKan **CMK-metadata bekijkenAlleen gebruikt voor een specifiek gebruikersaccountAutomatische rotatie
Klant beheerdJaJaJaJaOptioneel*
AWS beheerdNeeNeeJaJaElke 3 jaar
AWS-eigendomNeeNeeNeeNeeVariabel

* Standaard is “Automatische rotatie” uitgeschakeld, maar de gebruiker kan deze tot maximaal 1 jaar inschakelen.

** CMK-metadata is informatie over de CMK, zoals sleutelidentificatiegegevens, oorsprong, sleutelgebruik, sleutelstatus, enz.

Het metadatatype 'Origin' geeft bijvoorbeeld de bron van het sleutelmateriaal van de CMK aan. Als deze waarde AWS_KMS is, heeft AWS KMS het sleutelmateriaal aangemaakt. Als deze waarde EXTERNAL is, is het sleutelmateriaal geïmporteerd vanuit een externe sleutelbeheerinfrastructuur. Als deze waarde AWS_CLOUDHSM is, is het sleutelmateriaal aangemaakt in het AWS CloudHSM-cluster dat is gekoppeld aan een aangepaste sleutelopslag.

Op maat gemaakte cloud-sleutelbeheerservices

Ontvang flexibele en aanpasbare adviesdiensten die aansluiten bij uw cloudvereisten.

Symmetrische en asymmetrische CMK's:

AWS KMS beschermt de CMK die u gebruikt om uw gegevens en gegevenssleutels te beschermen. De CMK's worden alleen gegenereerd en gebruikt in hardware beveiligingsmodules zo ontworpen dat niemand er toegang toe heeft plaintext sleutelmateriaal.

AWS KMS ondersteunt symmetrische en asymmetrische CMK's:

  • Symmetrische CMK:Dit vertegenwoordigt een enkele 256-bits geheime encryptiesleutel die AWS KMS nooit onversleuteld achterlaat.
  • Asymmetrische CMK:Dit vertegenwoordigt een wiskundig gerelateerd paar openbare sleutel en privé sleutel dat u kunt gebruiken voor encryptie en decryptie of ondertekening en verificatie, maar niet beide. De privésleutel verlaat AWS KMS nooit onversleuteld. U kunt de openbare sleutel binnen AWS KMS gebruiken door de AWS KMS API-bewerkingen aan te roepen, of de openbare sleutel downloaden en buiten AWS KMS gebruiken.

AWS KMS biedt ook symmetrische datasleutels en asymmetrische datasleutelparen die ontworpen zijn voor gebruik voor client-side cryptografie buiten AWS KMS. De symmetrische datasleutel en de privésleutel in een asymmetrisch datasleutelpaar worden beschermd door een symmetrische CMK in AWS KMS.

KMS Aangepaste Sleutelopslag

A sleutelopslag is een veilige locatie voor het opslaan van cryptografische sleutels. Standaard worden de klanthoofdsleutels (CMK's) die u in AWS KMS aanmaakt, gegenereerd in en beschermd door hardwarebeveiligingsmodules (HSM's). FIPS 140-2 Level 2-compatibele cryptografische modules. De CMK's laten de modules nooit ongecodeerd achter.

A aangepaste sleutelopslag is een AWS KMS-resource die is gekoppeld aan een AWS CloudHSM-cluster dat wordt ondersteund door FIPS 140-2 Level 3 HSM's die eigendom zijn van en worden beheerd door de gebruiker.

Wanneer een gebruiker een AWS KMS CMK aanmaakt in zijn of haar aangepaste sleutelarchief, genereert AWS KMS een 256-bits, persistente, niet-exporteerbare symmetrische Advanced Encryption Standard (AES) sleutel in het bijbehorende AWS CloudHSM-cluster. Dit sleutelmateriaal laat uw HSM nooit ongecodeerd achter. Wanneer u een CMK gebruikt in een aangepast sleutelarchief, worden de cryptografische bewerkingen uitgevoerd in de HSM's in het cluster.

Wat is Bring Your Own Key (BYOK):

Een CMK is een logische weergave van een hoofdsleutel waarbij het sleutelmateriaal wordt gegenereerd en beheerd door AWS. Gebruikers kunnen echter een CMK aanmaken zonder sleutelmateriaal en vervolgens extern sleutelmateriaal in die CMK importeren. Dit staat bekend als BYOK, oftewel Breng uw eigen sleutel mee

Geïmporteerd sleutelmateriaal wordt ondersteund voor symmetrische CMK in AWS KMS-sleutelopslagplaatsen. Dit wordt echter niet ondersteund voor asymmetrische CMK- en aangepaste sleutelopslagplaatsen.

Wanneer geïmporteerd sleutelmateriaal wordt gebruikt, blijven de gebruikers verantwoordelijk voor het sleutelmateriaal, terwijl AWS KMS een kopie ervan mag gebruiken. Dit is een veelvoorkomend gebruiksvoorbeeld waarbij de gebruiker volledige controle wil hebben over het sleutelmateriaal voor wettelijke/zakelijke/compliance-/juridische doeleinden.

Conclusie

AWS KMS is een veelgebruikte KMS-service onder alle KMS as-a-service-opties die beschikbaar zijn bij cloudleveranciers. Omdat AWS KMS meerdere opties voor CMK's biedt, kan het soms moeilijk zijn om te beslissen welke optie men in verschillende scenario's moet kiezen. Gezien de functionaliteit en functies die beschikbaar zijn in elke CMK, is AWS Managed CMK een betere keuze als een gebruiker een sleutel wil gebruiken die beschikbaar is voor alle IAM-entiteiten in zijn AWS-account, omdat de CMK beschikbaar is voor alle IAM-gebruikers in hetzelfde account. Als een gebruiker echter gedetailleerde toegangscontrole over sleutels wil, lijkt Customer Managed CMK of BYOK een betere optie.