

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Beispiele für die Verwendung von ABAC mit DynamoDB-Tabellen und -Indizes
<a name="abac-example-use-cases"></a>

Die folgenden Beispiele zeigen einige Anwendungsfälle zur Implementierung von attributbasierten Bedingungen mithilfe von Tags.

**Topics**
+ [Beispiel 1: Eine Aktion mit aws zulassen: ResourceTag](#abac-allow-example-resource-tag)
+ [Beispiel 2: Eine Aktion mit aws zulassen: RequestTag](#abac-allow-example-request-tag)
+ [Beispiel 3: Eine Aktion mit aws ablehnen: TagKeys](#abac-deny-example-tag-key)

## Beispiel 1: Eine Aktion mit aws zulassen: ResourceTag
<a name="abac-allow-example-resource-tag"></a>

Mithilfe des `aws:ResourceTag/tag-key`-Bedingungsschlüssels können Sie das Tag-Schlüssel-Wert-Paar, das in einer IAM-Richtlinie angegeben ist, mit dem Schlüssel-Wert-Paar vergleichen, das in einer DynamoDB-Tabelle angehängt ist. Sie können beispielsweise eine bestimmte Aktion zulassen, z. B. [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)wenn die Tag-Bedingungen in einer IAM-Richtlinie und einer Tabelle übereinstimmen. Führen Sie dazu die folgenden Schritte aus:

------
#### [ Using the AWS CLI ]

1. Erstellen Sie eine -Tabelle. Im folgenden Beispiel wird der AWS CLI Befehl [create-table verwendet, um eine Tabelle](https://docs.aws.amazon.com/cli/latest/reference/dynamodb/create-table.html) mit dem Namen zu erstellen. `myMusicTable`

   ```
   aws dynamodb create-table \
     --table-name myMusicTable \
     --attribute-definitions AttributeName=id,AttributeType=S \
     --key-schema AttributeName=id,KeyType=HASH \
     --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 \
     --region us-east-1
   ```

1. Fügen Sie dieser Tabelle ein Tag hinzu. Im folgenden Beispiel für den AWS CLI Befehl [tag-resource](https://docs.aws.amazon.com/cli/latest/reference/dynamodb/tag-resource.html) wird das Schlüssel-Wert-Paar für das Tag hinzugefügt. `Title: ProductManager` `myMusicTable`

   ```
   aws dynamodb tag-resource --region us-east-1 --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/myMusicTable --tags Key=Title,Value=ProductManager
   ```

1. Erstellen Sie eine [Inline-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) und fügen Sie sie einer Rolle hinzu, an die die [AmazonDynamoDBReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBReadOnlyAccess.html) AWS verwaltete Richtlinie angehängt ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "dynamodb:PutItem",
         "Resource": "arn:aws:dynamodb:*:*:table/*",
         "Condition": {
           "StringEquals": {
             "aws:ResourceTag/Title": "ProductManager"
           }
         }
       }
     ]
   }
   ```

------

   Mit dieser Richtlinie kann die Aktion `PutItem` für die Tabelle ausgeführt werden, wenn der Tag-Schlüssel und -Wert, die der Tabelle angehängt sind, mit den in der Richtlinie angegebenen Tags übereinstimmen.

1. Nehmen Sie die Rolle mit den in Schritt 3 beschriebenen Richtlinien an.

1. Verwenden Sie den AWS CLI Befehl [put-item](https://docs.aws.amazon.com/cli/latest/reference/dynamodb/put-item.html), um ein Element in den zu platzieren. `myMusicTable`

   ```
   aws dynamodb put-item \
       --table-name myMusicTable --region us-east-1 \
       --item '{
           "id": {"S": "2023"},
           "title": {"S": "Happy Day"},
           "info": {"M": {
               "rating": {"N": "9"},
               "Artists": {"L": [{"S": "Acme Band"}, {"S": "No One You Know"}]},
               "release_date": {"S": "2023-07-21"}
           }}
       }'
   ```

1. Scannen Sie die Tabelle, um zu überprüfen, ob das Element der Tabelle hinzugefügt wurde.

   ```
   aws dynamodb scan --table-name myMusicTable  --region us-east-1
   ```

------
#### [ Using the AWS SDK for Java 2.x ]

1. Erstellen Sie eine -Tabelle. Das folgende Beispiel verwendet die [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)API, um eine Tabelle mit dem Namen zu erstellen. `myMusicTable`

   ```
   DynamoDbClient dynamoDB = DynamoDbClient.builder().region(region).build();
   CreateTableRequest createTableRequest = CreateTableRequest.builder()
       .attributeDefinitions(
           Arrays.asList(
               AttributeDefinition.builder()
               .attributeName("id")
               .attributeType(ScalarAttributeType.S)
               .build()
           )
       )
       .keySchema(
           Arrays.asList(
               KeySchemaElement.builder()
               .attributeName("id")
               .keyType(KeyType.HASH)
               .build()
           )
       )
       .provisionedThroughput(ProvisionedThroughput.builder()
           .readCapacityUnits(5L)
           .writeCapacityUnits(5L)
           .build()
       )
       .tableName("myMusicTable")
       .build();
   
   CreateTableResponse createTableResponse = dynamoDB.createTable(createTableRequest);
   String tableArn = createTableResponse.tableDescription().tableArn();
   String tableName = createTableResponse.tableDescription().tableName();
   ```

1. Fügen Sie dieser Tabelle ein Tag hinzu. Die [TagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TagResource.html)API im folgenden Beispiel fügt dem Tag das Schlüssel-Wert-Paar `Title: ProductManager` hinzu. `myMusicTable`

   ```
   TagResourceRequest tagResourceRequest = TagResourceRequest.builder()
       .resourceArn(tableArn)
       .tags(
           Arrays.asList(
               Tag.builder()
               .key("Title")
               .value("ProductManager")
               .build()
           )
       )
       .build();
   dynamoDB.tagResource(tagResourceRequest);
   ```

1. Erstellen Sie eine [Inline-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) und fügen Sie sie einer Rolle hinzu, an die die [AmazonDynamoDBReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBReadOnlyAccess.html) AWS verwaltete Richtlinie angehängt ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "dynamodb:PutItem",
         "Resource": "arn:aws:dynamodb:*:*:table/*",
         "Condition": {
           "StringEquals": {
             "aws:ResourceTag/Title": "ProductManager"
           }
         }
       }
     ]
   }
   ```

------

   Mit dieser Richtlinie kann die Aktion `PutItem` für die Tabelle ausgeführt werden, wenn der Tag-Schlüssel und -Wert, die der Tabelle angehängt sind, mit den in der Richtlinie angegebenen Tags übereinstimmen.

1. Nehmen Sie die Rolle mit den in Schritt 3 beschriebenen Richtlinien an.

1. Verwenden Sie die [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)API, um ein Element in den zu platzieren`myMusicTable`.

   ```
   HashMap<String, AttributeValue> info = new HashMap<>();
   info.put("rating", AttributeValue.builder().s("9").build());
   info.put("artists", AttributeValue.builder().ss(List.of("Acme Band","No One You Know").build());
   info.put("release_date", AttributeValue.builder().s("2023-07-21").build());
   
   HashMap<String, AttributeValue> itemValues = new HashMap<>();
   itemValues.put("id", AttributeValue.builder().s("2023").build());
   itemValues.put("title", AttributeValue.builder().s("Happy Day").build());
   itemValues.put("info", AttributeValue.builder().m(info).build());
   
   
   PutItemRequest putItemRequest = PutItemRequest.builder()
                   .tableName(tableName)
                   .item(itemValues)
                   .build();
   dynamoDB.putItem(putItemRequest);
   ```

1. Scannen Sie die Tabelle, um zu überprüfen, ob das Element der Tabelle hinzugefügt wurde.

   ```
   ScanRequest scanRequest = ScanRequest.builder()
                   .tableName(tableName)
                   .build();
                   
   ScanResponse scanResponse = dynamoDB.scan(scanRequest);
   ```

------
#### [ Using the AWS SDK für Python (Boto3) ]

1. Erstellen Sie eine -Tabelle. Das folgende Beispiel verwendet die [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)API, um eine Tabelle mit dem Namen zu erstellen`myMusicTable`.

   ```
   create_table_response = ddb_client.create_table(
       AttributeDefinitions=[
           {
               'AttributeName': 'id',
               'AttributeType': 'S'
           },
       ],
       TableName='myMusicTable',
       KeySchema=[
           {
               'AttributeName': 'id',
               'KeyType': 'HASH'
           },
       ],
           ProvisionedThroughput={
           'ReadCapacityUnits': 5,
           'WriteCapacityUnits': 5
       },
   )
   
   table_arn = create_table_response['TableDescription']['TableArn']
   ```

1. Fügen Sie dieser Tabelle ein Tag hinzu. Die [TagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TagResource.html)API im folgenden Beispiel fügt dem Tag das Schlüssel-Wert-Paar `Title: ProductManager` hinzu. `myMusicTable`

   ```
   tag_resouce_response = ddb_client.tag_resource(
       ResourceArn=table_arn,
       Tags=[
           {
               'Key': 'Title',
               'Value': 'ProductManager'
           },
       ]
   )
   ```

1. Erstellen Sie eine [Inline-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) und fügen Sie sie einer Rolle hinzu, an die die [AmazonDynamoDBReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBReadOnlyAccess.html) AWS verwaltete Richtlinie angehängt ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
           "Effect": "Allow",
           "Action": "dynamodb:PutItem",
           "Resource": "arn:aws:dynamodb:*:*:table/*",
           "Condition": {
               "StringEquals": {
               "aws:ResourceTag/Title": "ProductManager"
               }
           }
           }
       ]
       }
   ```

------

   Mit dieser Richtlinie kann die Aktion `PutItem` für die Tabelle ausgeführt werden, wenn der Tag-Schlüssel und -Wert, die der Tabelle angehängt sind, mit den in der Richtlinie angegebenen Tags übereinstimmen.

1. Nehmen Sie die Rolle mit den in Schritt 3 beschriebenen Richtlinien an.

1. Verwenden Sie die [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)API, um ein Element in den zu platzieren`myMusicTable`.

   ```
   put_item_response = client.put_item(
       TableName = 'myMusicTable'
       Item = {
           'id': '2023',
           'title': 'Happy Day',
           'info': {
               'rating': '9',
               'artists': ['Acme Band','No One You Know'],
               'release_date': '2023-07-21'
           }
       }
   )
   ```

1. Scannen Sie die Tabelle, um zu überprüfen, ob das Element der Tabelle hinzugefügt wurde.

   ```
   scan_response = client.scan(
       TableName='myMusicTable'
   )
   ```

------

**Ohne ABAC**  
Wenn ABAC für Sie nicht aktiviert ist AWS-Konto, stimmen die Tag-Bedingungen in der IAM-Richtlinie und der DynamoDB-Tabelle nicht überein. Folglich gibt die `PutItem`-Aktion aufgrund der Auswirkung der `AmazonDynamoDBReadOnlyAccess`-Richtlinie einen `AccessDeniedException`-Fehler zurück.

```
An error occurred (AccessDeniedException) when calling the PutItem operation: User: arn:aws:sts::123456789012:assumed-role/DynamoDBReadOnlyAccess/Alice is not authorized to perform: dynamodb:PutItem on resource: arn:aws:dynamodb:us-east-1:123456789012:table/myMusicTable because no identity-based policy allows the dynamodb:PutItem action.
```

**Mit ABAC**  
Wenn ABAC für Sie aktiviert ist AWS-Konto, wird die `put-item` Aktion erfolgreich abgeschlossen und ein neues Element zu Ihrer Tabelle hinzugefügt. Das liegt daran, dass die Inline-Richtlinie in der Tabelle die `PutItem`-Aktion zulässt, wenn die Tag-Bedingungen in der IAM-Richtlinie und der Tabelle übereinstimmen.

## Beispiel 2: Eine Aktion mit aws zulassen: RequestTag
<a name="abac-allow-example-request-tag"></a>

Mithilfe des [RequestTagBedingungsschlüssels aws: /tag-key](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag) können Sie das Tag-Schlüssel-Wert-Paar, das in Ihrer Anfrage übergeben wurde, mit dem Tag-Paar vergleichen, das in der IAM-Richtlinie angegeben ist. Sie können beispielsweise eine bestimmte Aktion wie `CreateTable` mithilfe von `aws:RequestTag` zulassen, wenn die Tag-Bedingungen nicht übereinstimmen. Führen Sie dazu die folgenden Schritte aus:

------
#### [ Using the AWS CLI ]

1. Erstellen Sie eine [Inline-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) und fügen Sie sie einer Rolle hinzu, an die die [AmazonDynamoDBReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/ReadOnlyAccess.html) AWS verwaltete Richtlinie angehängt ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "dynamodb:CreateTable",
                   "dynamodb:TagResource"
               ],
               "Resource": "arn:aws:dynamodb:*:*:table/*",
               "Condition": {
                   "StringEquals": {
                       "aws:RequestTag/Owner": "John"
                   }
               }
           }
       ]
   }
   ```

------

1. Erstellen Sie eine Tabelle, die das Tag-Schlüssel-Wert-Paar von `"Owner": "John"` enthält.

   ```
   aws dynamodb create-table \
   --attribute-definitions AttributeName=ID,AttributeType=S \
   --key-schema AttributeName=ID,KeyType=HASH  \
   --provisioned-throughput ReadCapacityUnits=1000,WriteCapacityUnits=500 \
   --region us-east-1 \
   --tags Key=Owner,Value=John \
   --table-name myMusicTable
   ```

------
#### [ Using the AWS SDK für Python (Boto3) ]

1. Erstellen Sie eine [Inline-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) und fügen Sie sie einer Rolle hinzu, an die die [AmazonDynamoDBReadOnlyAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBReadOnlyAccess.html) AWS verwaltete Richtlinie angehängt ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "dynamodb:CreateTable",
                   "dynamodb:TagResource"
               ],
               "Resource": "arn:aws:dynamodb:*:*:table/*",
               "Condition": {
                   "StringEquals": {
                       "aws:RequestTag/Owner": "John"
                   }
               }
           }
       ]
   }
   ```

------

1. Erstellen Sie eine Tabelle, die das Tag-Schlüssel-Wert-Paar von `"Owner": "John"` enthält.

   ```
   ddb_client = boto3.client('dynamodb')
   
   create_table_response = ddb_client.create_table(
       AttributeDefinitions=[
           {
               'AttributeName': 'id',
               'AttributeType': 'S'
           },
       ],
       TableName='myMusicTable',
       KeySchema=[
           {
               'AttributeName': 'id',
               'KeyType': 'HASH'
           },
       ],
           ProvisionedThroughput={
           'ReadCapacityUnits': 1000,
           'WriteCapacityUnits': 500
       },
       Tags=[
           {
               'Key': 'Owner',
               'Value': 'John'
           },
       ],
   )
   ```

------

**Ohne ABAC**  
Wenn ABAC für Sie nicht aktiviert ist AWS-Konto, stimmen die Tag-Bedingungen in der Inline-Richtlinie und der DynamoDB-Tabelle nicht überein. Folglich schlägt die `CreateTable`-Anforderung fehl und Ihre Tabelle wird nicht erstellt.

```
An error occurred (AccessDeniedException) when calling the CreateTable operation: User: arn:aws:sts::123456789012:assumed-role/Admin/John is not authorized to perform: dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-1:123456789012:table/myMusicTable because no identity-based policy allows the dynamodb:CreateTable action.
```

**Mit ABAC**  
Wenn ABAC für Sie aktiviert ist AWS-Konto, wird Ihre Anfrage zur Tabellenerstellung erfolgreich abgeschlossen. Da das Tag-Schlüssel-Wert-Paar von `"Owner": "John"` in der `CreateTable`-Anforderung vorhanden ist, ermöglicht die Inline-Richtlinie dem Benutzer `John`, die Aktion `CreateTable` auszuführen.

## Beispiel 3: Eine Aktion mit aws ablehnen: TagKeys
<a name="abac-deny-example-tag-key"></a>

Mithilfe des TagKeys Bedingungsschlüssels [aws:](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys) können Sie die Tag-Schlüssel in einer Anfrage mit den Schlüsseln vergleichen, die in der IAM-Richtlinie angegeben sind. Sie können beispielsweise eine bestimmte Aktion wie `CreateTable` mithilfe von `aws:TagKeys` verweigern, wenn ein bestimmter Tag-Schlüssel *nicht* in der Anforderung vorhanden ist. Führen Sie dazu die folgenden Schritte aus:

------
#### [ Using the AWS CLI ]

1. Fügen Sie eine vom [Kunden verwaltete Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies) zu einer Rolle hinzu, der die AWS verwaltete [AmazonDynamoDBFullAccess-Richtlinie](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBFullAccess.html) zugeordnet ist, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

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

------

1. Nehmen Sie die Rolle an, der die Richtlinie angehängt wurde, und erstellen Sie eine Tabelle mit dem Tag-Schlüssel `Title`.

   ```
   aws dynamodb create-table \
   --attribute-definitions AttributeName=ID,AttributeType=S \
   --key-schema AttributeName=ID,KeyType=HASH  \
   --provisioned-throughput ReadCapacityUnits=1000,WriteCapacityUnits=500 \
   --region us-east-1 \
   --tags Key=Title,Value=ProductManager \
   --table-name myMusicTable
   ```

------
#### [ Using the AWS SDK für Python (Boto3) ]

1. Fügen Sie einer Rolle, der die [verwaltete [AmazonDynamoDBFullAccess-Richtlinie](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonDynamoDBFullAccess.html) zugewiesen ist, eine vom Kunden](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies) AWS verwaltete Richtlinie hinzu, wie im folgenden Beispiel gezeigt.

------
#### [ JSON ]

****  

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

------

1. Nehmen Sie die Rolle an, der die Richtlinie angehängt wurde, und erstellen Sie eine Tabelle mit dem Tag-Schlüssel `Title`.

   ```
   ddb_client = boto3.client('dynamodb')
   
   create_table_response = ddb_client.create_table(
       AttributeDefinitions=[
           {
               'AttributeName': 'id',
               'AttributeType': 'S'
           },
       ],
       TableName='myMusicTable',
       KeySchema=[
           {
               'AttributeName': 'id',
               'KeyType': 'HASH'
           },
       ],
           ProvisionedThroughput={
           'ReadCapacityUnits': 1000,
           'WriteCapacityUnits': 500
       },
       Tags=[
           {
               'Key': 'Title',
               'Value': 'ProductManager'
           },
       ],
   )
   ```

------

**Ohne ABAC**  
Wenn ABAC für Sie nicht aktiviert ist AWS-Konto, sendet DynamoDB die Tag-Schlüssel im `create-table` Befehl nicht an IAM. Die `Null`-Bedingung stellt sicher, dass die Bedingung als `false` ausgewertet wird, wenn in der Anforderung keine Tags vorhanden sind. Da die `Deny`-Richtlinie nicht übereinstimmt, wird der Befehl `create-table` erfolgreich ausgeführt.

**Mit ABAC**  
Wenn ABAC für Sie aktiviert ist AWS-Konto, werden die im `create-table` Befehl übergebenen Tag-Schlüssel an IAM übergeben. Der Tag-Schlüssel `Title` wird anhand des bedingungsbasierten Tag-Schlüssels `CostCenter` ausgewertet, der in der `Deny`-Richtlinie enthalten ist. Der Tag-Schlüssel `Title` stimmt aufgrund des `StringNotEquals`-Operators nicht mit dem in der `Deny`-Richtlinie vorhandenen Tag-Schlüssel überein. Daher schlägt die `CreateTable`-Aktion fehl und Ihre Tabelle wird nicht erstellt. Wenn Sie den Befehl `create-table` ausführen, wird ein`AccessDeniedException`-Fehler zurückgegeben.

```
An error occurred (AccessDeniedException) when calling the CreateTable operation: User: arn:aws:sts::123456789012:assumed-role/DynamoFullAccessRole/ProductManager is not authorized to perform: dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-1:123456789012:table/myMusicTable with an explicit deny in an identity-based policy.
```