

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Esempio 3: nega l'accesso allo stream a meno che non sia presente un tag specifico
<a name="streams-abac-example-3"></a>

Utilizzando la chiave `aws:TagKeys` condition, puoi negare di taggare uno stream a meno che nella richiesta non sia inclusa una chiave di tag richiesta.

## Utilizzo di AWS CLI
<a name="streams-abac-example-3-cli"></a>

1. Aggiungi una policy gestita dai clienti a un ruolo con accesso a DynamoDB, come illustrato nell'esempio seguente.

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Deny",
         "Action": [
           "dynamodb:TagResource"
         ],
         "Resource": "arn:aws:dynamodb:*:*:table/*/stream/*",
         "Condition": {
           "Null": {
             "aws:TagKeys": "false"
           },
           "ForAllValues:StringNotEquals": {
             "aws:TagKeys": "CostCenter"
           }
         }
       }
     ]
   }
   ```

1. Assumi il ruolo e prova a taggare uno stream con una chiave di tag che non lo è. `CostCenter`

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

## Comportamento con e senza Streams ABAC
<a name="streams-abac-example-3-behavior"></a>

Senza Streams ABAC  
Se Streams ABAC non è abilitato per il tuo, Account AWS DynamoDB non invia le chiavi dei tag nella richiesta a IAM. La `Null` condizione garantisce che la condizione risulti falsa se non ci sono chiavi di tag nella richiesta. Poiché la politica Deny non corrisponde, il `tag-resource` comando viene completato correttamente.

Con Streams ABAC  
Se Streams ABAC è abilitato per te Account AWS, la chiave del tag `Department` viene valutata rispetto alla chiave di tag basata sulle condizioni presente nella politica Deny. `CostCenter` La chiave del tag `Department` non corrisponde alla chiave del tag presente nella politica Deny a causa dell'operatore. `StringNotEquals` Pertanto, l'`TagResource`azione fallisce e restituisce un`AccessDeniedException`.