View a markdown version of this page

Ejemplo 2: Permiso para etiquetar un flujo mediante aws:RequestTag - Amazon DynamoDB

Ejemplo 2: Permiso para etiquetar un flujo mediante aws:RequestTag

Con la clave de condición aws:RequestTag/tag-key, puede comparar el par clave-valor de etiqueta que se pasa en la solicitud con el par de etiquetas especificado en la política de IAM. Por ejemplo, puede permitir etiquetar una transmisión solo si la solicitud incluye una etiqueta específica.

Uso de la CLI de AWS

  1. Cree una política insertada y agréguela a un rol, como se muestra en el siguiente ejemplo.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:TagResource" ], "Resource": "arn:aws:dynamodb:*:*:table/*/stream/*", "Condition": { "StringEquals": { "aws:RequestTag/CostCenter": "12345" } } } ] }
  2. Etiquete la transmisión con el par clave-valor de etiqueta requerido.

    aws dynamodb tag-resource \ --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/myMusicTable/stream/2024-01-01T00:00:00.000 \ --tags Key=CostCenter,Value=12345

Comportamiento con y sin ABAC de Streams

Sin ABAC de Streams

Si ABAC de Streams no está habilitado para la Cuenta de AWS, las condiciones de etiquetado de la política insertada y la solicitud no coinciden. La acción TagResource devuelve una AccessDeniedException.

Con ABAC de Streams

Si ABAC de Streams está habilitado para la Cuenta de AWS, la solicitud de etiqueta se completa correctamente. Como el par clave-valor de etiqueta de "CostCenter": "12345" está presente en la solicitud TagResource, la política insertada permite la acción.