Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Uso del control de acceso basado en atributos con DynamoDB

Modo de enfoque
Uso del control de acceso basado en atributos con DynamoDB - Amazon DynamoDB

El control de acceso basado en atributos (ABAC) es una estrategia de autorización que define los permisos de acceso en función de las condiciones de etiqueta de las políticas basadas en la identidad u otras políticas de AWS, como las políticas basadas en recursos y las políticas de IAM de la organización. Puede asociar etiquetas a las tablas de DynamoDB, que después se evalúan en función de las condiciones basadas en etiquetas. Los índices asociados a una tabla heredan las etiquetas que agregue a la tabla. Puede agregar un máximo de 50 etiquetas para cada tabla de DynamoDB. El tamaño máximo admitido para todas las etiquetas de una tabla es de 10 KB. Para obtener más información sobre el etiquetado de recursos de DynamoDB y las restricciones de etiquetado, consulte Etiquetado de recursos en DynamoDB y Restricciones de etiquetado en DynamoDB.

Para obtener más información sobre cómo utilizar etiquetas para controlar el acceso a los recursos de AWS, consulte los siguientes temas en la Guía del usuario de IAM:

Con ABAC, puede aplicar distintos niveles de acceso para que los equipos y aplicaciones realicen acciones en las tablas de DynamoDB con menos políticas. Puede especificar una etiqueta en el elemento de condición de una política de IAM para controlar el acceso a las tablas o los índices de DynamoDB. Estas condiciones determinan el nivel de acceso que una entidad principal, un usuario o un rol de IAM tiene a las tablas y los índices de DynamoDB. Cuando una entidad principal de IAM realiza una solicitud de acceso a DynamoDB, las etiquetas del recurso y de la identidad se evalúan con respecto a las condiciones de etiqueta de la política de IAM. Posteriormente, la política entra en vigor solo si se cumplen las condiciones de etiqueta. De este modo, podrá crear una política de IAM que indique de forma efectiva una de las siguientes acciones:

  • Permitir al usuario administrar solo los recursos que tengan una etiqueta con una clave X y un valor Y.

  • Denegar el acceso a todos los usuarios a los recursos etiquetados con una clave X.

Por ejemplo, puede crear una política que permita a los usuarios actualizar una tabla solo si tiene el par clave-valor de etiqueta: "environment": "staging". Puede utilizar la clave de condición aws:ResourceTag para permitir o denegar el acceso a una tabla en función de las etiquetas que estén asociadas a dicha tabla.

Puede incluir condiciones basadas en atributos al crear la política o, posteriormente, con la AWS Management Console, la API de AWS, la AWS Command Line Interface (AWS CLI), AWS SDK o AWS CloudFormation.

El siguiente ejemplo permite la acción UpdateItem en una tabla denominada MusicTable si incluye una clave de etiqueta con el nombre environment y el valor production.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:UpdateItem" ], "Resource": "arn:aws:dynamodb:*:*:table/MusicTable", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } } ] }

¿Por qué debo utilizar ABAC?

  • Administración de políticas más sencilla: utilizará menos políticas porque no tendrá que crear políticas diferentes para definir el nivel de acceso de cada entidad principal de IAM.

  • Control de acceso escalable: el control de acceso de escalado es más fácil con ABAC porque no tiene que actualizar las políticas cuando crea nuevos recursos de DynamoDB. Puede utilizar etiquetas para autorizar el acceso a entidades principales de IAM que contengan etiquetas que coincidan con las etiquetas del recurso. Puede incorporar nuevas entidades principales de IAM o recursos de DynamoDB y aplicar las etiquetas adecuadas para conceder de forma automática los permisos necesarios sin tener que realizar ningún cambio de política.

  • Administración de permisos detallada: es una práctica recomendada conceder el privilegio mínimo cuando se crean políticas. Con ABAC, puede crear etiquetas para la entidad principal de IAM y utilizarlas a fin de conceder acceso a acciones y recursos específicos que coincidan con las etiquetas de la entidad principal de IAM.

  • Alineación con el directorio corporativo: puede asignar etiquetas con atributos de empleado existentes en el directorio corporativo para alinear las políticas de control de acceso con la estructura organizativa.

Claves de condición para implementar ABAC con DynamoDB

Puede utilizar las siguientes claves de condición en las políticas de AWS para controlar el nivel de acceso a las tablas y los índices de DynamoDB:

  • aws:ResourceTag/tag-key: controla el acceso en función de si el par clave-valor de la etiqueta en una tabla o un índice de DynamoDB coincide o no con la clave y el valor de la etiqueta de una política. Esta clave de condición es relevante para todas las API que operan en una tabla o un índice existente.

    Las condiciones dynamodb:ResourceTag se evalúan como si no hubiera asociado ninguna etiqueta a un recurso.

  • aws:RequestTag/tag-key: permite comparar el par clave-valor de etiqueta que se ha pasado en la solicitud con el par de etiqueta que se especifica en la política. Esta clave de condición es relevante para las API que contienen etiquetas como parte de la carga útil de la solicitud. Estas API incluyen CreateTable y TagResource.

  • aws:TagKeys: compara las claves de etiqueta de una solicitud con las claves que especifique en la política. Esta clave de condición es relevante para las API que contienen etiquetas como parte de la carga útil de la solicitud. Estas API incluyen CreateTable, TagResource y UntagResource.

Consideraciones para utilizar ABAC con DynamoDB

Cuando utilice ABAC con tablas o índices de DynamoDB, se aplicarán las siguientes consideraciones:

  • El etiquetado y ABAC no son compatibles con DynamoDB Streams.

  • El etiquetado y ABAC no son compatibles con las copias de seguridad de DynamoDB. Para utilizar ABAC con las copias de seguridad, le recomendamos que utilice AWS Backup.

  • Las etiquetas no se conservan en las tablas restauradas. Debe agregar etiquetas a las tablas restauradas para poder utilizar las condiciones basadas en etiquetas en las políticas.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.