Hoppa till innehåll

47-dagarscertifikat kommer. Är du redo?

Agera nu →

Djupdykning i AWS-nyckelhanteringstjänsten

AWS-nyckelhantering

Datakryptering i molnet är den mest framträdande tanken som alla säkerhetsexperter har i huvudet nuförtiden. När de utför datahantering krypteringSäkerhetsnycklar är av yttersta vikt. När det gäller att hantera en enda säkerhetsnyckel manuellt är det relativt enkelt, men om antalet säkerhetsnycklar som används är stort blir uppgiften att hantera dessa nycklar besvärlig. Därför uppstår behovet av automatiserade nyckelhantering tjänster för datakryptering.

AWS KMS (Key Management Service) tillhandahåller ett lättanvänt webbgränssnitt för att hantera hanteringen av säkerhetsnycklar för att skydda data i vila och data i brukAWS KMS är en platshållare för CMK (kundhuvudnyckel) resurser som innehåller viktiga metadata för att kryptera & Avkryptera data. Dessutom kan AWS KMS integreras med olika andra AWS-tjänster, såsom Redshift, EBS, EFS, S3 och Secret Manager, för att nämna några.

I dagens inlägg kommer vi att diskutera de viktigaste koncepten inom AWS KMS och dess olika funktioner och integration med andra AWS-tjänster.

Nyckeltyper

  1. AWS-hanterade CMK:erDessa CMK:er skapas, hanteras och används av en AWS-tjänst integrerad med KMS för kundens räkning i deras AWS-konto. Till exempel är "aws/s3" standardnyckeln i S3 och används endast för ditt konto för att kryptera dina S3-buckets.
  2. Kundhanterade CMK:erDessa CMK:er skapas, hanteras och används av kunden i AWS-kontot. Detta är den mest använda metoden när man använder KMS, eftersom den ger fullständig åtkomstkontroll på detaljerad nivå över säkerhetsnycklarna i ett AWS-konto.
  3. AWS-ägda CMK:erDessa CMK:er ägs och hanteras av AWS-tjänster för användning i flera AWS-konton. Nyckeln för dessa CMK:er är inte synlig för användare. Om du till exempel väljer S3:s standardkryptering använder S3 sina egna KMS CMK:er som delas mellan flera AWS-konton.

Datanycklar

Datanycklar är krypteringsnycklar som användaren kan använda för att kryptera stora mängder data och andra datakrypteringsnycklar. Användare kan använda AWS CMK:er för att generera, kryptera och dekryptera datanycklar. AWS KMS lagrar, hanterar eller spårar dock inte datanycklarna och utför inte kryptografiska operationer med datanycklar. Användare måste använda och hantera datanycklar utanför AWS KMS omfattning.

Åtkomstkontroll till KMS CMK:er

Det primära sättet att kontrollera åtkomsten till dina AWS KMS CMK:er är med IAM- och nyckelpolicyer. Policyer är en kombination av deklarativa uttalanden som beskriver vem som har åtkomst till vad.

  1. IAM-policyerPolicyer som är kopplade till en IAM-identitet kallas identitetsbaserade policyer.
  2. NyckelpolicyerPrinciper som är kopplade till resurser kallas resursbaserade principer.

I AWS KMS måste du koppla resursbaserade policyer till dina CMK:er, dvs. nyckelpolicyer. IAM-policyer ensamma kan inte ge åtkomst till CMK:er till IAM-användare eller -roller.

Typ av CMKCMK-hantering via IAM-policyCMK-hantering via nyckelpolicyKan visa **CMK-metadataAnvänds endast för ett specifikt användarkontoAutomatisk rotation
KundhanteradJaJaJaJaFrivillig*
AWS-hanteradNejNejJaJaVartannat år
AWS-ägtNejNejNejNejVarierar

* Standardinställningen är "Automatisk rotation" inaktiverad, men användaren kan aktivera den i upp till 1 år.

** CMK-metadata är information om CMK:n, såsom nyckelidentifierare, ursprung, nyckelanvändning, nyckeltillstånd etc.

Till exempel anger metadatatypen "Ursprung" källan till CMK:ns nyckelmaterial. När detta värde är AWS_KMS skapade AWS KMS nyckelmaterialet. När detta värde är EXTERNAL importerades nyckelmaterialet från extern nyckelhanteringsinfrastruktur. När detta värde är AWS_CLOUDHSM skapades nyckelmaterialet i AWS CloudHSM-klustret som är associerat med ett anpassat nyckelarkiv.

Skräddarsydda molnnyckelhanteringstjänster

Få flexibla och anpassningsbara konsulttjänster som anpassas till dina molnbehov.

Symmetriska och asymmetriska CMK:er:

AWS KMS skyddar CMK:n som du använder för att skydda dina data och datanycklar. CMK:erna genereras och används endast i hårdvarusäkerhetsmoduler utformad så att ingen kan komma åt oformatterad text nyckelmaterial.

AWS KMS stöder symmetriska och asymmetriska CMK:er:

  • Symmetrisk CMKDetta representerar en enda 256-bitars hemlig krypteringsnyckel som aldrig lämnar AWS KMS okrypterad.
  • Asymmetrisk CMKDetta representerar ett matematiskt relaterat par av offentlig nyckel och privat nyckel som du kan använda för kryptering och dekryptering eller signering och verifiering, men inte båda. Den privata nyckeln lämnar aldrig AWS KMS okrypterad. Du kan använda den publika nyckeln i AWS KMS genom att anropa AWS KMS API-operationer, eller ladda ner den publika nyckeln och använda den utanför AWS KMS.

AWS KMS tillhandahåller även symmetriska datanycklar och asymmetriska datanyckelpar som är utformade för att användas för klientsideskryptografi utanför AWS KMS. Den symmetriska datanyckeln och den privata nyckeln i ett asymmetriskt datanyckelpar skyddas av en symmetrisk CMK i AWS KMS.

KMS Custom Key-butik

A nyckelbutik är en säker plats för att lagra kryptografiska nycklar. Som standard genereras och skyddas de kundmasternycklar (CMK:er) som du skapar i AWS KMS av hårdvarusäkerhetsmoduler (HSM:er) som är FIPS Kryptografiska moduler som är kompatibla med nivå 140-2. CMK:erna lämnar aldrig modulerna okrypterade.

A butik för specialanpassade nycklar är en AWS KMS-resurs som är associerad med ett AWS CloudHSM-kluster som backas upp av FIPS 140-2 nivå 3 HSM:er som ägs och hanteras av användaren.

När en användare skapar en AWS KMS CMK i sitt anpassade nyckelarkiv genererar AWS KMS en 256-bitars, persistent, icke-exporterbar symmetrisk nyckel enligt Advanced Encryption Standard (AES) i det associerade AWS CloudHSM-klustret. Detta nyckelmaterial lämnar aldrig din HSM okrypterad. När du använder en CMK i ett anpassat nyckelarkiv utförs de kryptografiska operationerna i HSM:erna i klustret.

Vad är Ta med egen nyckel (BYOK):

En CMK är en logisk representation av en huvudnyckel där nyckelmaterialet genereras och ägs av AWS. Användare kan dock skapa en CMK utan nyckelmaterial och sedan importera externt nyckelmaterial till den CMK:n. Detta kallas BYOK, dvs. ta med egen nyckel

Importerat nyckelmaterial stöds för symmetrisk CMK i AWS KMS-nyckelarkiv; detta stöds dock inte heller för asymmetrisk CMK och anpassade nyckelarkiv.

När importerat nyckelmaterial används förblir användarna ansvariga för nyckelmaterialet samtidigt som AWS KMS tillåts använda en kopia av det. Detta är ett vanligt användningsfall där användaren vill ha fullständig kontroll över nyckelmaterialet för regulatoriska/affärsmässiga/efterlevnads-/juridiska ändamål.

Slutsats

AWS KMS är en vanligt förekommande KMS-tjänst bland alla KMS as-a-service-alternativ som finns tillgängliga från molnleverantörer. Eftersom AWS KMS erbjuder flera alternativ för CMK:er blir det ibland svårt att bestämma vilket alternativ man ska välja under olika scenarier. Med tanke på funktionaliteten och funktionerna som finns tillgängliga i varje CMK, om en användare vill använda en nyckel som är tillgänglig för alla IAM-enheter i sitt AWS-konto, är AWS Managed CMK ett bättre val eftersom CMK:n är tillgänglig för alla IAM-användare i samma konto. Men om användaren vill ha en detaljerad åtkomstkontroll över nycklar verkar Customer Managed CMK eller BYOK vara ett bättre alternativ.