Uso de políticas basadas en identidad (políticas de IAM) para Directory Service - AWS Directory Service

Uso de políticas basadas en identidad (políticas de IAM) para Directory Service

Este tema ofrece ejemplos de políticas basadas en identidad en las que un administrador de la cuenta puede adjuntar políticas de permisos a identidades de IAM (usuarios, grupos y roles). Estos ejemplos muestran las políticas de IAM en Directory Service. Debe modificar y crear sus propias políticas para adaptarlas a sus necesidades y a su entorno.

importante

Se recomienda que consulte primero los temas de introducción en los que se explican los conceptos básicos y las opciones disponibles para administrar el acceso a sus recursos de Directory Service. Para obtener más información, consulte Información general sobre la administración de los permisos de acceso a los recursos de Directory Service.

En las secciones de este tema se explica lo siguiente:

A continuación se muestra un ejemplo de una política de permisos.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowDsEc2IamGetRole", "Effect": "Allow", "Action": [ "ds:CreateDirectory", "ec2:RevokeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:CreateSecurityGroup", "ec2:RevokeSecurityGroupEgress", "ec2:DeleteSecurityGroup", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "iam:GetRole" ], "Resource": "*" }, { "Sid": "WarningAllowsCreatingRolesWithDirSvcPrefix", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::111122223333:role/DirSvc*" }, { "Sid": "AllowPassRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/Your-Role-Name", "Condition": { "StringEquals": { "iam:PassedToService": "cloudwatch.amazonaws.com" } } } ] }

Las tres instrucciones de la política conceden los siguientes permisos:

  • La primera instrucción otorga permiso para crear un directorio de Directory Service. Como Directory Service no admite permisos en el nivel de recurso, la política utiliza un carácter comodín (*) como valor de Resource.

  • La segunda instrucción otorga permisos para acceder a las acciones de IAM a efectos de que Directory Service pueda leer y crear roles de IAM en su nombre. El carácter comodín (*) que aparece al final del valor Resource significa que la declaración concede permiso para la acción de IAM en cualquier rol de IAM. Para limitar este permiso a un rol específico, sustituya el carácter comodín (*) en el ARN del recurso por el nombre de rol específico. Para obtener más información, consulte la sección Acciones de IAM.

  • La tercera instrucción concede permisos para un conjunto específico de recursos de Amazon EC2 necesarios a fin de permitir que Directory Service cree, configure y destruya sus directorios. Sustituya el ARN de su rol con su rol. Para obtener más información, consulte Acciones de Amazon EC2.

No puede ver un elemento Principal, ya que en una política basada en identidad no se especifica la entidad principal que obtiene el permiso. Al asociar la política a un usuario, el usuario es el elemento principal implícito. Cuando se asocia una política de permisos a un rol de IAM, la entidad principal identificada en la política de confianza del rol obtiene los permisos.

Para ver una tabla con todas las acciones de la API de Directory Service y los recursos a los que se aplican, consulte Directory ServicePermisos de la API de : referencia de acciones, recursos y condiciones.

Permisos necesarios para usar la consola de Directory Service

Para que un usuario trabaje con la consola de Directory Service, dicho usuario debe tener permisos enumerados en la política anterior o los permisos concedidos por el rol Acceso completo a Directory Service o Acceso de solo lectura a Directory Service, que se describen en AWS Políticas administradas (predefinidas) por para Directory Service.

Si crea una política de IAM que sea más restrictiva que el mínimo de permisos necesarios, la consola no funcionará del modo esperado para los usuarios con esa política de IAM.

AWS Políticas administradas (predefinidas) por para Directory Service

AWS aborda muchos casos de uso comunes y proporciona políticas de IAM predefinidas o administradas creadas y administradas por AWS. Las políticas administradas conceden los permisos necesarios para casos de uso comunes, lo que lo ayuda a decidir qué permisos necesita. Para obtener más información, consulte AWS Políticas de administradas por para AWS Directory Service.

Ejemplos de políticas administradas por el cliente

En esta sección, encontrará ejemplos de políticas de usuario que conceden permisos para diversas acciones de Directory Service.

nota

Todos los ejemplos utilizan la región Oeste de EE. UU. (Oregón) (us-west-2) y contienen identificadores de cuenta ficticios.

Ejemplo 1: permitir que un usuario haga cualquier acción Describe con cualquier recurso de Directory Service

La siguiente política de permisos concede permisos a un usuario para ejecutar todas las acciones que empiezan por Describe en un AD de Microsoft administrado por AWS con el ID d-1234567890 de directorio en la Cuenta de AWS 111122223333. Estas acciones muestran información acerca de un recurso de Directory Service, como un directorio o una instantánea. Asegúrese de cambiar la Región de AWS y el número de cuenta a la región que desee utilizar y su número de cuenta.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"ds:Describe*", "Resource": "arn:aws:ds:us-west-2:111122223333:directory/d-1234567890" } ] }

Ejemplo 2: permitir a un usuario crear un directorio

La siguiente política de permisos otorga permisos para permitir a un usuario crear un directorio y todos los demás recursos relacionados, como tales instantáneas y confianzas. Para ello, también se requieren permisos para determinados servicios de Amazon EC2.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateNetworkInterface", "ec2:CreateSecurityGroup", "ec2:DeleteNetworkInterface", "ec2:DeleteSecurityGroup", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress", "ec2:CreateTags" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ds:CreateDirectory", "ds:DescribeDirectories" ], "Resource": "arn:aws:ds:*:111122223333:*" } ] }

Uso de etiquetas con políticas de IAM

Puede aplicar permisos de nivel de recurso basados en etiquetas en las políticas de IAM que utiliza para la mayoría de acciones de la API de Directory Service. Esto le ofrece un mejor control sobre los recursos que un usuario puede crear, modificar o utilizar. Puede utilizar el elemento Condition (también llamado bloque Condition) junto con las siguientes claves contextuales de condición y valores en una política de IAM para controlar el acceso del usuario (permiso) en función de las etiquetas de un usuario:

  • Utilice aws:ResourceTag/tag-key: tag-value para permitir o denegar acciones de usuario en recursos con etiquetas específicas.

  • Utilice aws:ResourceTag/tag-key: tag-value para exigir (o impedir) el uso de una etiqueta específica al realizar una solicitud de API para crear o modificar un recurso que permita etiquetas.

  • Utilice aws:TagKeys: [tag-key, ...] para exigir (o impedir) el uso de un conjunto de claves de etiquetas al realizar una solicitud de API para crear o modificar un recurso que permita etiquetas.

nota

Las claves contextuales de condición y los valores de una política de IAM se aplican únicamente a las acciones de Directory Service en las que un identificador de un recurso que se puede etiquetar es un parámetro obligatorio.

Controlar el acceso mediante etiquetas en la Guía de usuario de IAM incluye información adicional sobre el uso de etiquetas. La sección de referencia de políticas JSON de IAM de esta guía incluye sintaxis, descripciones y ejemplos detallados de los elementos, variables y lógica de evaluación de las políticas JSON de IAM.

La siguiente política de etiquetas permite crear un directorio de Directory Service siempre que se utilicen las siguientes etiquetas:

  • Entorno: producción

  • Propietario: equipo de infraestructura

  • Centro de costos: 1234

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ds:CreateDirectory" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/Environment": "Production", "aws:RequestTag/Owner": "Infrastructure-Team", "aws:RequestTag/CostCenter": "12345" } } } ] }

La siguiente política de etiquetas permite actualizar y eliminar directorios de Directory Service siempre que se utilicen las siguientes etiquetas:

  • Proyecto: Atlas

  • Departamento: Ingeniería

  • Entorno: Pruebas

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ds:DeleteDirectory", "ds:UpdateDirectory" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Project": "Atlas", "aws:ResourceTag/Department": "Engineering", "aws:ResourceTag/Environment": "Staging" } } } ] }

La siguiente política de etiquetas deniega el etiquetado de Directory Service cuando el recurso tiene una de las siguientes etiquetas:

  • Producción

  • Seguridad

  • Confidencial

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "ds:AddTagsToResource" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": ["Production", "Security", "Confidential"] } } } ] }

Para obtener más información acerca de los ARN, consulte Nombres de recursos de Amazon (ARN) y espacios de nombres de servicios de AWS.

La siguiente lista de operaciones de API de Directory Service es compatible con los permisos de nivel de recursos basados en etiquetas: