Uso de políticas basadas en la identidad (IAMpolíticas) para Amazon ElastiCache - Amazon ElastiCache

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 la identidad (IAMpolíticas) para Amazon ElastiCache

En este tema se proporcionan ejemplos de políticas basadas en la identidad en las que un administrador de cuentas puede adjuntar políticas de permisos a las IAM identidades (es decir, a los usuarios, grupos y roles).

importante

Le recomendamos que lea primero los temas que explican los conceptos básicos y las opciones para administrar el acceso a ElastiCache los recursos de Amazon. Para obtener más información, consulte Descripción general de la administración de los permisos de acceso a sus ElastiCache recursos.

En las secciones de este tema se explica lo siguiente:

A continuación, se muestra un ejemplo de una política de permisos cuando se utiliza RedisOSS.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeReplicationGroups", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyReplicationGroup", "elasticache:ModifyCacheCluster" ], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }

A continuación, se muestra un ejemplo de una política de permisos cuando se utiliza Memcached.

{ "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 sentencia concede permisos para las ElastiCache acciones de Amazon (elasticache:Create*,elasticache:Describe*,elasticache:Modify*)

  • La segunda sentencia concede permisos para la IAM acción (iam:PassRole) en el nombre del IAM rol especificado al final del Resource valor.

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. Al adjuntar una política de permisos a un IAM rol, el principal identificado en la política de confianza del rol obtiene los permisos.

Para ver una tabla que muestra todas ElastiCache API las acciones de Amazon y los recursos a los que se aplican, consultaElastiCache APIpermisos: 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 IAM CreateServiceLinkedRole API). O deberías haber creado un rol ElastiCache vinculado a un servicio.

Cuando se combinan con los permisos mínimos necesarios para usar la ElastiCache consola de Amazon, las políticas de ejemplo de esta sección otorgan permisos adicionales. Los ejemplos también son relevantes para el AWS SDKs y el AWS CLI.

Para obtener instrucciones sobre cómo configurar IAM usuarios y grupos, consulte Creación IAM del primer grupo de usuarios y administradores en la Guía del IAM usuario.

importante

Pruebe siempre sus IAM políticas minuciosamente antes de utilizarlas en producción. Algunas ElastiCache acciones que parecen sencillas pueden requerir otras acciones que las respalden cuando se utiliza la ElastiCache consola. Por ejemplo, elasticache:CreateCacheCluster concede permisos para crear clústeres de ElastiCache caché. Sin embargo, para realizar esta operación, la ElastiCache consola utiliza una serie de List acciones Describe y acciones para rellenar las listas de consolas.

Ejemplo 1: Permitir a un usuario el acceso de solo lectura a los recursos ElastiCache

La siguiente política otorga permisos a ElastiCache las acciones que permiten al usuario enumerar los 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: Permitir a un usuario realizar tareas comunes de administrador del ElastiCache sistema

Las tareas comunes del administrador del sistema incluyen la modificación de los recursos. Es posible que un administrador del sistema también desee obtener información sobre los ElastiCache eventos. La siguiente política concede a un usuario permisos para realizar ElastiCache acciones relacionadas con estas tareas comunes del 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: permitir que un usuario acceda a todas ElastiCache API las acciones

La siguiente política permite al usuario acceder a todas ElastiCache las acciones. 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 IAM CreateServiceLinkedRole API

La siguiente política permite al usuario llamar al IAM CreateServiceLinkedRoleAPI. Se recomienda conceder este tipo de política de permisos al usuario que invoque operaciones mutativas ElastiCache .

{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"elasticache.amazonaws.com" } } } ] }

Ejemplo 5: permitir que un usuario se conecte a una caché sin servidor mediante la autenticación IAM

La siguiente política permite a cualquier usuario conectarse a cualquier caché sin servidor mediante la IAM autenticación entre el 1 de abril de 2021 y el 30 de junio de 2021.

{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:serverlesscache:*" ], "Condition": { "DateGreaterThan": {"aws:CurrentTime": "2023-04-01T00:00:00Z"}, "DateLessThan": {"aws:CurrentTime": "2023-06-30T23:59:59Z"} } }, { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:user:*" ] } ] }