Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ejemplos de políticas de IAM
En esta sección, encontrará ejemplos de políticas de IAM que conceden permisos para varias acciones de AWS KMS .
importante
Algunos de los permisos de las siguientes políticas solo se permiten cuando la política de KMS claves de la clave también los permite. Para obtener más información, consulte Referencia de permisos.
Para obtener ayuda sobre la redacción y el formato JSON de un documento de IAMJSONpolítica, consulte la referencia de políticas en la Guía del IAM usuario.
Ejemplos
- Permita que un usuario vea KMS las claves en la AWS KMS consola
- Permita que un usuario cree KMS claves
- Permite a un usuario cifrar y descifrar con cualquier KMS clave de una determinada Cuenta de AWS
- Permite a un usuario cifrar y descifrar con cualquier KMS clave de una región específica Cuenta de AWS
- Permite a un usuario cifrar y descifrar con claves específicas KMS
- Impida que un usuario desactive o elimine alguna clave KMS
Permita que un usuario vea KMS las claves en la AWS KMS consola
La siguiente IAM política permite a los usuarios el acceso de solo lectura a la AWS KMS consola. Los usuarios con estos permisos pueden ver todas KMS las claves que contienen Cuenta de AWS, pero no pueden crear ni cambiar ninguna KMS clave.
Para ver KMS las claves en las páginas de claves administradas por el cliente Claves administradas por AWSy en las páginas de claves administradas por el clienteListKeys, los directores necesitan GetResources los permisos kms: ListAliases, kms: y tag:, incluso si las claves no tienen etiquetas ni alias. Los permisos restantes, especialmente kms: DescribeKey, son necesarios para ver las columnas y los datos opcionales de las tablas KMS clave en las páginas de detalles KMS clave. Los ListRoles permisos iam: ListUsers e iam: son necesarios para mostrar la política clave en la vista predeterminada sin errores. Para ver los datos de la página de almacenes de claves personalizados y los detalles sobre KMS las claves de los almacenes de claves personalizados, los directores también necesitan el permiso kms:. DescribeCustomKeyStores
Si limitas el acceso de un usuario a determinadas KMS claves, la consola mostrará un error para cada KMS clave que no esté visible.
Esta política incluye dos declaraciones de política. El Resource
elemento de la primera declaración de política permite los permisos especificados en todas KMS las claves de todas las regiones del ejemplo Cuenta de AWS. Los usuarios de la consola no necesitan acceso adicional porque la AWS KMS
consola solo muestra KMS las claves de la cuenta del usuario principal. Esto es cierto incluso si tienen permiso para ver KMS las claves de otras Cuentas de AWS. Los IAM permisos restantes AWS KMS requieren un "Resource": "*"
elemento porque no se aplican a ninguna KMS clave en particular.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadOnlyAccessForAllKMSKeysInAccount", "Effect": "Allow", "Action": [ "kms:GetPublicKey", "kms:GetKeyRotationStatus", "kms:GetKeyPolicy", "kms:DescribeKey", "kms:ListKeyPolicies", "kms:ListResourceTags", "tag:GetResources" ], "Resource": "arn:aws:kms:*:111122223333:key/*" }, { "Sid": "ReadOnlyAccessForOperationsWithNoKMSKey", "Effect": "Allow", "Action": [ "kms:ListKeys", "kms:ListAliases", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" } ] }
Permita que un usuario cree KMS claves
La siguiente IAM política permite a un usuario crear todos los tipos de KMS claves. El valor del Resource
elemento se *
debe a que la CreateKey
operación no utiliza ningún AWS KMS recurso concreto (KMSclaves o alias).
Para restringir al usuario a determinados tipos de KMS claves, utilice las claves KeyOrigincondicionales KeySpec kms: KeyUsage, kms: y kms:.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "kms:CreateKey", "Resource": "*" } }
Es posible que las principales entidades que crean claves necesiten algunos permisos relacionados.
-
kms: PutKeyPolicy — Los directores que tengan
kms:CreateKey
permiso pueden establecer la política de claves inicial para la KMS clave. Sin embargo, laCreateKey
persona que llama debe tener el PutKeyPolicy permiso kms:, que le permite cambiar la política KMS clave, o debe especificar elBypassPolicyLockoutSafetyCheck
parámetro deCreateKey
, lo cual no es recomendable. LaCreateKey
persona que llama puede obtener elkms:PutKeyPolicy
permiso para la KMS clave mediante una IAM política o puede incluir este permiso en la política de claves de la KMS clave que está creando. -
kms: TagResource — Para añadir etiquetas a la KMS clave durante la
CreateKey
operación, laCreateKey
persona que llama debe tener el TagResource permiso kms: en una IAM política. No basta con incluir este permiso en la política de claves de la nueva KMS clave. Sin embargo, si laCreateKey
persona que llama lo incluyekms:TagResource
en la política de claves inicial, podrá añadir etiquetas en una llamada independiente una vez creada la KMS clave. -
kms: CreateAlias — Los responsables que creen una KMS clave en la AWS KMS consola deben tener el CreateAlias permiso kms: en la KMS clave y en el alias. (La consola realiza dos llamadas; una a
CreateKey
y una aCreateAlias
). Debes proporcionar el permiso de alias en una IAM política. Puede proporcionar el permiso KMS clave en una política o IAM política clave. Para obtener más información, consulte Control del acceso a alias.
Ademáskms:CreateKey
, la siguiente IAM política permite acceder a kms:TagResource
todas las KMS claves de la cuenta Cuenta de AWS y kms:CreateAlias
a todos los alias de la cuenta. También incluye algunos permisos útiles de solo lectura que solo se pueden proporcionar en una política. IAM
Esta IAM política no incluye el kms:PutKeyPolicy
permiso ni ningún otro permiso que se pueda establecer en una política clave. Se recomienda establecer estos permisos en la política de claves, donde se aplican exclusivamente a una KMS clave.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IAMPermissionsForParticularKMSKeys", "Effect": "Allow", "Action": "kms:TagResource", "Resource": "arn:aws:kms:*:111122223333:key/*" }, { "Sid": "IAMPermissionsForParticularAliases", "Effect": "Allow", "Action": "kms:CreateAlias", "Resource": "arn:aws:kms:*:111122223333:alias/*" }, { "Sid": "IAMPermissionsForAllKMSKeys", "Effect": "Allow", "Action": [ "kms:CreateKey", "kms:ListKeys", "kms:ListAliases" ], "Resource": "*" } ] }
Permite a un usuario cifrar y descifrar con cualquier KMS clave de una determinada Cuenta de AWS
La siguiente IAM política permite al usuario cifrar y descifrar datos con cualquier KMS clave en 111122223333. Cuenta de AWS
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt" ], "Resource": "arn:aws:kms:*:111122223333:key/*" } }
Permite a un usuario cifrar y descifrar con cualquier KMS clave de una región específica Cuenta de AWS
La siguiente IAM política permite a los usuarios cifrar y descifrar datos con cualquier KMS clave Cuenta de AWS 111122223333
en la región EE.UU. Oeste (Oregón).
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-west-2:111122223333:key/*" ] } }
Permite a un usuario cifrar y descifrar con claves específicas KMS
La siguiente IAM política permite al usuario cifrar y descifrar datos con KMS las dos claves especificadas en el elemento. Resource
Al especificar una KMS clave en una declaración IAM de política, debe usar la clave ARN de la KMS clave.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321" ] } }
Impida que un usuario desactive o elimine alguna clave KMS
La siguiente IAM política impide que un usuario deshabilite o elimine cualquier KMS clave, incluso cuando otra IAM política o una política de claves permita estos permisos. Una política que deniega de forma explícita los permisos anula todas las demás políticas, incluso aquellas que hayan permitido explícitamente los mismos permisos. Para obtener más información, consulte Solución de problemas de permisos de AWS KMS.
{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": [ "kms:DisableKey", "kms:ScheduleKeyDeletion" ], "Resource": "*" } }