🗝️Key Management Service (KMS)

  • Es un servicio regional y publico.

  • Crea, guarda y maneja llaves.

  • Symmetric y Asymmetric keys.

  • Cryptographic operations (encrypt, decrypt)

  • Keys never leave KMS - (Provee FIPS 140-2 (L2))

  • KMS keys are logical backed by physical key material.

  • KMS keys can be used to encrypt o decrypt data up to 4kb.

  • Support for multi region keys.

  • Keys are aws owned & Customer Owned.

  • Customer owned tiene dos tipos:

    • AWS Managed: Creada por los servicios de AWS como s3.

    • Customer Managed: Creadas por el cliente para usar en una aplicacion o dentro de aws. Son mas configurables, puedes editar los key policies.

    • Ambas soportan rotacion

  • Se pueden crear aliases. (por region).

  • Every kms key tiene un Key policy.

Asymmetric Keys in KMS

GenerateDataKey Limits

  • 50,000 (us-east-1, us-west-2, eu-west-1) compartido.

  • 10,000 (us-east-2, ap-southeast-1 & 2, ap-northeast-1, eu-central, eu-west-1)

  • 5,500 per second (shared) - Other regions.

  • Soft limits *

  • Para reducir los KMS calls, se puede usar el Data key caching del Encryption SDK,que usa algo llamado Cryptographic Materials Cache (CMM), permite reusar los DEK usando el SDK. Al desviarse un poco del best practice esta opcion te permite setear parametros adicionales como:

    • Security Treshold (max age) * Mandatorio

    • Max messages encrypted * Opcional

    • Max bytes encrypted. * Opcional.

Additional Reading Resources

AWS Encryption SDK
Encryption SDK Tresholds
Is caching right for you?

KMS Grants

  • Permite permisos en 1 KMS key.

  • Estan diseñados para acceso temporal.

  • Se basan en el concepto de minimo privilegio.

  • Grants no deniegan acceso, solo permiten.

  • No causan modifcar los key policy.

  • 5 Minutos desde que creas un grant y puedes usarlo. (Existen los GranToken que pueden ser generados y usados antes de que se pueda usar el grant )

  • Grants permiten operaciones sobre los keys incluyendo CreateGrant.

Multi Region Keys

  • Decreases latency.

  • Disaster Recovery Benefits (DR)

  • Great use for Active Active applications with global HA / FT

  • Digital Signing.

Encryption Context

KMS Encryption Context

Last updated