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.
Verwendung der attributbasierten Zugriffskontrolle mit DynamoDB Streams
DynamoDB Streams unterstützt die attributbasierte Zugriffskontrolle (ABAC), dieselbe Autorisierungsstrategie, die unter beschrieben wird. Verwenden ressourcenbasierter Richtlinien für DynamoDB Mit DynamoDB Streams ABAC hängen Sie Tags an Ihre Streams an und verwenden tagbasierte Bedingungen in Ihren IAM-Richtlinien, um den Zugriff darauf zu kontrollieren.
Stream-Ressourcen erben keine Tags aus ihrer übergeordneten Tabelle, und Sie können Tags in Streams unabhängig voneinander verwalten. Sie können bis zu 50 Tags für jeden DynamoDB-Stream hinzufügen. Die maximale Größe, die für alle Tags in einem Stream unterstützt wird, beträgt 10 KB. Weitere Informationen zum Taggen von DynamoDB-Ressourcen und zu den Tagging-Einschränkungen finden Sie unter und. Hinzufügen von Tags und Labels zu Ressourcen in DynamoDB Markierungseinschränkungen in DynamoDB
Sie können den ResourceTag Bedingungsschlüssel aws: verwenden, um den Zugriff auf einen Stream auf der Grundlage der Tags, die an diesen Stream angehängt sind, zuzulassen oder zu verweigern. Die folgende Richtlinie ermöglicht beispielsweise die GetRecords Aktion für jeden Stream, der den Tag-Schlüssel environment mit dem Wert enthältproduction.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetRecords" ], "Resource": "arn:aws:dynamodb:*:*:table/*/stream/*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } } ] }
Bedingungsschlüssel zur Implementierung von ABAC mit DynamoDB-Streams
DynamoDB Streams ABAC verwendet dieselben Bedingungsschlüssel wie DynamoDB-Tabellen:, und. aws:ResourceTag/tag-key aws:RequestTag/tag-key aws:TagKeys Eine Beschreibung der einzelnen Bedingungsschlüssel finden Sie unter Bedingungsschlüssel für die Implementierung von ABAC mit DynamoDB. Das folgende Verhalten ist spezifisch für DynamoDB-Streams:
-
Die Bedingungsschlüssel gelten für die DynamoDB-Streams-APIs, die mit einem Stream arbeiten, einschließlich TagResource
UntagResource, und lesen APIs wie.GetRecords -
Wenn DynamoDB Streams ABAC für Ihr Konto nicht aktiviert ist, werden die
aws:ResourceTagBedingungen so ausgewertet, als ob keine Tags an die Stream-Ressource angehängt wären.
Überlegungen zur Verwendung von ABAC mit DynamoDB-Streams
Wenn Sie ABAC mit DynamoDB-Streams verwenden, gelten die folgenden Überlegungen:
-
ABAC für DynamoDB-Streams ist von ABAC für DynamoDB-Tabellen getrennt. Wenn Sie ABAC für Tabellen aktivieren, wird es nicht automatisch für Streams in Ihrem Konto aktiviert. Sie müssen jedes einzeln aktivieren.
-
Sie können einen Stream taggen oder enttaggen, nachdem seine übergeordnete Tabelle gelöscht wurde. Verwenden Sie dazu die CLI oder das SDK
tag-resourceundlist-tags-of-resourceBefehle im Stream-ARN.untag-resourceDer Stream existiert nach dem Löschen der Tabelle noch 24 Stunden, bevor er entfernt wird. Diese Funktion ist über die Konsole oder CloudFormation nach dem Löschen einer Tabelle nicht verfügbar. -
Wenn Sie es CloudFormation zur Verwaltung Ihrer DynamoDB-Ressourcen verwenden, stellen Sie sicher, dass Ihre Servicerolle über
dynamodb:ListTagsOfResourceBerechtigungen für Stream-Ressourcen verfügtdynamodb:TagResource.dynamodb:UntagResource