Vem kontrollerar nyckeln

Använda AWS-säkerhet för utvecklare

Rahul Singh

Technical Product Manager

Två typer av KMS-nycklar

AWS-hanterad

  • Skapas av tjänsten, alias aws/s3
  • Policyn kan läsas, inte redigeras
  • Ingen månadsavgift

Två staplade kort som jämför en AWS-hanterad nyckel med en kundhanterad nyckel över samma tre rader: nyckelpolicy, rotation och kostnad. Raden för nyckelpolicy i det kundhanterade kortet är markerad. Varje kort har sitt alias: aws slash s3 och alias slash reports.

Använda AWS-säkerhet för utvecklare

Två typer av KMS-nycklar

AWS-hanterad

  • Skapas av tjänsten, alias aws/s3
  • Policyn kan läsas, inte redigeras
  • Ingen månadsavgift

Kundhanterad

  • Skapas av dig, alias alias/reports, du skriver policyn
  • Du anger rotationsperioden
  • En dollar per månad, per nyckel

Två staplade kort som jämför en AWS-hanterad nyckel med en kundhanterad nyckel över samma tre rader: nyckelpolicy, rotation och kostnad. Raden för nyckelpolicy i det kundhanterade kortet är markerad. Varje kort har sitt alias: aws slash s3 och alias slash reports.

Använda AWS-säkerhet för utvecklare

Två grindar, båda måste öppnas

En dekrypteringsförfrågan närmar sig den första av två grindar. IAM-policygrinden är ritad i heldragen linje och numrerad ett, nyckelpolicygrinden bakom den är streckad och grå, och ingen av dem har svarat än.

  1. IAM-policy: vad anroparen får begära
Använda AWS-säkerhet för utvecklare

Två grindar, båda måste öppnas

En dekrypteringsförfrågan passerar från vänster till höger genom två numrerade grindar, markör ett är IAM-policyn och markör två är nyckelpolicyn, innan den når KMS-nyckeln. En klammer under de två grindarna märker dem som oberoende svar.

  1. IAM-policy: vad anroparen får begära
  2. Nyckelpolicy: vem nyckeln svarar på

Standardnyckelpolicy: delegerar till IAM

Grants: specifika nyckeloperationer för en huvudman, kan återkallas separat

Använda AWS-säkerhet för utvecklare

Nyckeln rör aldrig din data

Amazon S3, som agerar å dina vägnar, anropar AWS KMS vid markör ett, och KMS returnerar en datanyckel som en klartextkopia och en krypterad kopia. Den krypterade kopian lagras bredvid objektets chiffertext, och en streckad returväg vid markör två för den tillbaka genom ett dekrypteringsanrop.

Envelope encryption

Direkt kryptering: ett tak på 4 KB

Använda AWS-säkerhet för utvecklare

Nyckeln rör aldrig din data

Amazon S3, som agerar å dina vägnar, anropar AWS KMS vid markör ett, och KMS returnerar en datanyckel som en klartextkopia och en krypterad kopia. Den krypterade kopian lagras bredvid objektets chiffertext, och en streckad returväg vid markör två för den tillbaka genom ett dekrypteringsanrop.

Envelope encryption

Direkt kryptering: ett tak på 4 KB

  1. GenerateDataKey, två kopior tillbaka
  2. kms:Decrypt på den lagrade kopian
Använda AWS-säkerhet för utvecklare

Mellan konton ser ingen båda halvorna

Anroparens konto

  • Åtgärden tillåten i IAM
  • Resurs: nyckelns ARN

Två streckade kontopaneler åtskilda av en kontogräns. Anroparens roll och IAM-policy finns i den övre panelen, nyckelpolicyn och KMS-nyckeln finns i den nedre panelen, och förfrågan korsar gränsen mellan dem.

Använda AWS-säkerhet för utvecklare

Mellan konton ser ingen båda halvorna

Anroparens konto

  • Åtgärden tillåten i IAM
  • Resurs: nyckelns ARN

Nyckelägarens konto

  • Nyckelpolicy som namnger anroparen
  • Kontot, eller en roll i det

Två streckade kontopaneler åtskilda av en kontogräns. Anroparens roll och IAM-policy finns i den övre panelen, nyckelpolicyn och KMS-nyckeln finns i den nedre panelen, och förfrågan korsar gränsen mellan dem.

Använda AWS-säkerhet för utvecklare

Läs nekandet, inte gissningen

Identitetsbaserad

  • AccessDeniedException, följt av satsen som namnger grinden

  • no identity-based policy allows

  • Åtgärda anroparens IAM-policy

 

En dekrypteringsförfrågan stoppas vid den första grinden, där IAM-policyn har ett rött kryss och nyckelpolicyn bakom den är gråtonad och nås aldrig. En bildtext under diagrammet lyder: no identity-based policy allows.

 

Använda AWS-säkerhet för utvecklare

Läs nekandet, inte gissningen

Identitetsbaserad

  • AccessDeniedException, följt av satsen som namnger grinden

  • no identity-based policy allows

  • Åtgärda anroparens IAM-policy

Resursbaserad

  • no resource-based policy allows
  • Åtgärda nyckelpolicyn

En dekrypteringsförfrågan stoppas vid den första grinden, där IAM-policyn har ett rött kryss och nyckelpolicyn bakom den är gråtonad och nås aldrig. En bildtext under diagrammet lyder: no identity-based policy allows.

En dekrypteringsförfrågan passerar en grönmarkerad IAM-policy och stoppas sedan vid den andra grinden, där nyckelpolicyn har ett rött kryss. En bildtext under diagrammet lyder: no resource-based policy allows.

Använda AWS-säkerhet för utvecklare

Vad rotation faktiskt ändrar

Automatisk rotation

  • Standard 365 dagar
  • Intervall 90 till 2,560 dagar

Tre kort som visar minsta, standard- och maximala automatiska rotationsperioder i dagar, ovanför tre rader som visar vilka typer av nycklar som roterar och enligt vems schema.

Använda AWS-säkerhet för utvecklare

Vad rotation faktiskt ändrar

Automatisk rotation

  • Standard 365 dagar
  • Intervall 90 till 2,560 dagar

På begäran

  • RotateKeyOnDemand, upp till 25 gånger per nyckel

Två begränsningar

  • AWS-hanterade nycklar, fasta till årlig rotation
  • Automatisk rotation: endast symmetriskt, KMS-genererat material

Tre kort som visar minsta, standard- och maximala automatiska rotationsperioder i dagar, ovanför tre rader som visar vilka typer av nycklar som roterar och enligt vems schema.

Använda AWS-säkerhet för utvecklare

Vad rotation inte löser

Fyra rader jämförs på vardera sidan av en rotationslinje. Raden för nyckelmaterial ändras från version ett till version två, medan nyckelidentifieraren, aliaset och nyckelpolicyn samt objekten som skrevs tidigare är identiska på båda sidor.

Ändras: det underliggande nyckelmaterialet

Oförändrat: nyckel-ID, ARN, alias, nyckelpolicy

Använda AWS-säkerhet för utvecklare

Vad rotation inte löser

Fyra rader jämförs på vardera sidan av en rotationslinje. Raden för nyckelmaterial ändras från version ett till version två, medan nyckelidentifieraren, aliaset och nyckelpolicyn samt objekten som skrevs tidigare är identiska på båda sidor.

Ändras: det underliggande nyckelmaterialet

Oförändrat: nyckel-ID, ARN, alias, nyckelpolicy

  • Ingenting i din kod behöver ändras
  • Gamla objekt och en alltför bred policy: båda förblir oförändrade
Använda AWS-säkerhet för utvecklare

Så varför aktivera det

Vad du får

  • En version täcker aldrig all din data
  • Regler för efterlevnad och avtal som kräver rotation

Ett grönt kort rubricerat vad du får, under etiketten aktivera rotation. Det anger en granskningsregel som lyder rotera var 365:e dag med en grön bock, och en nyckel ritad som tre sammanlänkade versioner, v1, v2 och v3, med bildtexten att varje version bara täcker det den skrev.

Använda AWS-säkerhet för utvecklare

Så varför aktivera det

Vad du får

  • En version täcker aldrig all din data
  • Regler för efterlevnad och avtal som kräver rotation

 

Vad det kostar

  • Ingen kodändring, inget att kryptera om

Samma gröna kort vad du får, nu med ett andra kort under rubricerat vad det kostar. Det kortet ger två rader: din kod, oförändrad, och gamla objekt, ingen omkryptering.

Använda AWS-säkerhet för utvecklare

Nu kör vi en övning!

Använda AWS-säkerhet för utvecklare

Preparing Video For Download...