Back to IAM & Security

AWS Key Management Service (KMS)

aws

FIPS 140-3 validated cryptographic key management and envelope encryption for cloud data at rest.

IAM & SECURITY
Amazon Web Services

FIPS 140-3 validated cryptographic key management and envelope encryption for cloud data at rest.

Click any section above to jump directly to it
GCP ➔ AWS Bridge
Fast-Track Mental Model Translation

Coming from Google Cloud?

Compare with Google Cloud KMS

Both provide centralized envelope encryption, FIPS 140 HSM backing, and customer-managed encryption keys (CMEK) across cloud storage and database services.

What's Conceptually Identical
  • Envelope encryption model with Data Encryption Keys.
  • Support for symmetric (AES-256) and asymmetric encryption and digital signatures.
  • Automatic annual key rotation and detailed audit logs.
Key Architectural Shifts in AWS
  • Access Control: AWS KMS requires an explicit Key Policy on every key; GCP Cloud KMS uses standard Cloud IAM role bindings.
  • Multi-Region: AWS offers native Multi-Region Keys that share key material; GCP offers dual-region and multi-region key rings.
  • Payload Limits: Both limit direct cryptographic payload sizes and mandate envelope encryption for large files.
Syntax & Command Translator
Generate Data Encryption Key
GCP:gcloud kms keys versions generate-random-bytes ...
AWS:aws kms generate-data-key --key-id alias/my-key --key-spec AES_256

What is AWS Key Management Service (KMS)?

AWS Key Management Service (AWS KMS) lets you easily create and manage cryptographic keys and control their use across a wide range of AWS services and in your applications. AWS KMS is integrated with AWS CloudTrail to provide you with logs of all key usage to help meet your regulatory and compliance needs. KMS protects keys inside FIPS 140-3 validated Hardware Security Modules (HSMs) where private key material never leaves the secure boundary.

Decision Guide: When to Choose This Service

When to Use AWS Key Management Service (KMS)

Use AWS KMS to generate and manage cryptographic keys, control access to encrypted data across AWS services (S3, EBS, RDS, DynamoDB), and implement client-side envelope encryption.

When NOT to Use (Recommended Alternatives)

Do NOT use AWS KMS to store application secrets, database passwords, or API keys directly (use AWS Secrets Manager or Parameter Store).

Core Architectural Pillars

Envelope Encryption

2-tier key hierarchy using KMS Master Keys (CMKs) to encrypt fast local Data Encryption Keys (DEKs).

Customer Managed Keys (CMK) vs AWS Managed Keys

Full control over rotation and key policy vs automated AWS service keys.

Key Policies

Resource-based policies that act as the primary, inescapable access control mechanism for every KMS key.

Automatic Annual Key Rotation

Rotates cryptographic key material every 365 days while transparently retaining old material for decryption.

Multi-Region Keys

Shared key ID and material across multiple AWS regions for seamless cross-region disaster recovery.