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.
Uso de políticas basadas en identidad (políticas de IAM) para Amazon ElastiCache
Este tema contiene ejemplos de políticas basadas en identidades, donde los administradores de cuentas pueden asociar políticas de permisos a identidades de IAM (es decir, a usuarios, grupos y funciones).
importante
Recomendamos que primero lea los temas en los que se explican los conceptos básicos y las opciones para administrar el acceso a los recursos de Amazon ElastiCache. Para obtener más información, consulte Información general sobre la administración de los permisos de acceso a los recursos de ElastiCache.
En las secciones de este tema se explica lo siguiente:
A continuación se muestra un ejemplo de una política de permisos.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyCacheCluster" ], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
La política tiene dos instrucciones:
-
La primera declaración concede permisos para las acciones de Amazon ElastiCache (
elasticache:Create*
,elasticache:Describe*
,elasticache:Modify*
) -
La segunda declaración concede permisos para la acción de IAM (
iam:PassRole
) en el nombre de rol de IAM especificado al final del valorResource
.
La política no especifica el elemento Principal
, ya que en una política basada en la identidad no se especifica el elemento principal que obtiene el permiso. Al asociar una política a un usuario, el usuario es la entidad principal implícita. Cuando asocia una política de permisos a un rol de IAM, el elemento principal identificado en la política de confianza de rol obtiene los permisos.
Para ver una tabla con todas las acciones de la API de Amazon ElastiCache y los recursos a los que se aplican, consulte ElastiCache Permisos de API: referencia de acciones, recursos y condiciones.
Ejemplos de políticas administradas por los clientes
Si no está utilizando una política predeterminada y elige utilizar una política administrada de forma personalizada, asegúrese de una de las dos cosas. Debería tener permisos para llamar a iam:createServiceLinkedRole
(para obtener más información, consulte Ejemplo 4: permitir que un usuario llame a la API CreateServiceLinkedRole de IAM). También debe haber creado un rol vinculado al servicio de ElastiCache.
Combinadas con los permisos mínimos necesarios para utilizar la consola de Amazon ElastiCache, las políticas de ejemplo de esta sección conceden permisos adicionales. Los ejemplos también son relevantes para los SDK de AWS y la AWS CLI.
Para obtener instrucciones sobre la configuración de grupos y usuarios de IAM, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.
importante
Pruebe siempre sus políticas de IAM antes de utilizarlas en entornos de producción. Algunas acciones de ElastiCache que parecen sencillas pueden requerir otras acciones de apoyo cuando se utiliza la consola de ElastiCache. Por ejemplo, elasticache:CreateCacheCluster
concede permisos para crear clústeres de caché de ElastiCache. Sin embargo, para realizar esta operación, la consola de ElastiCache utiliza varias acciones Describe
y List
a fin de completar las listas de la consola.
Ejemplos de
- Ejemplo 1: permitir al usuario acceso de solo lectura a los recursos de ElastiCache
- Ejemplo 2: conceder a un usuario permiso para realizar tareas comunes de administrador del sistema de ElastiCache
- Ejemplo 3: conceder a un usuario permiso para tener acceso a todas las acciones de API de ElastiCache
- Ejemplo 4: permitir que un usuario llame a la API CreateServiceLinkedRole de IAM
Ejemplo 1: permitir al usuario acceso de solo lectura a los recursos de ElastiCache
La siguiente política concede permisos para utilizar acciones de ElastiCache que permiten a un usuario mostrar recursos. Normalmente, este tipo de política de permisos se adjunta a un grupo de administradores.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECReadOnly", "Effect":"Allow", "Action": [ "elasticache:Describe*", "elasticache:List*"], "Resource":"*" } ] }
Ejemplo 2: conceder a un usuario permiso para realizar tareas comunes de administrador del sistema de ElastiCache
Las tareas comunes del administrador del sistema incluyen la modificación de los recursos. También es posible que el administrador del sistema necesite obtener información acerca de los eventos de ElastiCache. La siguiente política concede a un usuario permisos a fin de realizar acciones de ElastiCache para estas tareas comunes de administrador del sistema. Normalmente, este tipo de política de permisos se adjunta al grupo de administradores del sistema.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowMutations", "Effect":"Allow", "Action":[ "elasticache:Modify*", "elasticache:Describe*", "elasticache:ResetCacheParameterGroup" ], "Resource":"*" } ] }
Ejemplo 3: conceder a un usuario permiso para tener acceso a todas las acciones de API de ElastiCache
La siguiente política permite a un usuario acceder a todas las acciones de ElastiCache. Recomendamos que conceda este tipo de política de permisos solo a un usuario administrador.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowAll", "Effect":"Allow", "Action":[ "elasticache:*" ], "Resource":"*" } ] }
Ejemplo 4: permitir que un usuario llame a la API CreateServiceLinkedRole de IAM
La siguiente política permite al usuario llamar a la API CreateServiceLinkedRole
de IAM. Recomendamos que conceda este tipo de política de permisos al usuario que invoca las operaciones de ElastiCache mutantes.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWSServiceName":"elasticache.amazonaws.com" } } } ] }