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.
Beispiel 3: Verweigern Sie den Stream-Zugriff, es sei denn, ein bestimmtes Tag ist vorhanden
Mithilfe des aws:TagKeys Bedingungsschlüssels können Sie das Taggen eines Streams verweigern, es sei denn, ein erforderlicher Tag-Schlüssel ist in der Anfrage enthalten.
Verwendung der AWS CLI
-
Fügen Sie einer Rolle, die DynamoDB-Zugriff hat, eine vom Kunden verwaltete Richtlinie hinzu, wie im folgenden Beispiel gezeigt.
{ "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" } } } ] } -
Nehmen Sie die Rolle an und versuchen Sie, einen Stream mit einem Tag-Schlüssel zu kennzeichnen, der es nicht ist.
CostCenteraws 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
Verhalten mit und ohne Streams ABAC
- Ohne Streams ABAC
-
Wenn Streams ABAC für Sie nicht aktiviert ist AWS-Konto, sendet DynamoDB die Tag-Schlüssel in der Anfrage nicht an IAM. Die
NullBedingung stellt sicher, dass die Bedingung als falsch ausgewertet wird, wenn die Anforderung keine Tag-Schlüssel enthält. Da die Deny-Richtlinie nicht übereinstimmt, wird dertag-resourceBefehl erfolgreich abgeschlossen. - Mit Streams ABAC
-
Wenn Streams ABAC für Sie aktiviert ist AWS-Konto, wird der Tag-Schlüssel mit dem bedingungsbasierten Tag-Schlüssel verglichen, der in der
CostCenterDeny-Richtlinie enthaltenDepartmentist. Der Tag-Schlüssel stimmt aufgrund des OperatorsDepartmentnicht mit dem in der Deny-Richtlinie enthaltenen Tag-Schlüssel überein.StringNotEqualsDaher schlägt dieTagResourceAktion fehl und gibt einen zurückAccessDeniedException.