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.
Blockieren des öffentlichen Zugriffs mit ressourcenbasierten Richtlinien in DynamoDB
Block Public Access (BPA) ist eine Funktion, die das Anhängen von ressourcenbasierten Richtlinien, die öffentlichen Zugriff auf Ihre DynamoDB-Tabellen, -Indizes oder -Streams in Ihren Amazon
BPAanalysiert anhand automatisierter Argumentation
Wichtig
BPAträgt zum Schutz Ihrer Ressourcen bei, indem verhindert wird, dass öffentlicher Zugriff über die ressourcenbasierten Richtlinien gewährt wird, die direkt mit Ihren DynamoDB-Ressourcen verknüpft sind, wie Tabellen, Indizes und Streams. Zusätzlich zur Verwendung sollten Sie die folgenden Richtlinien sorgfältig prüfenBPA, um sicherzustellen, dass sie keinen öffentlichen Zugriff gewähren:
-
Identitätsbasierte Richtlinien, die mit zugehörigen AWS Prinzipalen verknüpft sind (z. B. Rollen) IAM
-
Ressourcenbasierte Richtlinien, die mit zugehörigen AWS Ressourcen verknüpft sind (z. B. () -Schlüssel) AWS Key Management Service KMS
Sie müssen sicherstellen, dass der Prinzipal keinen *
Eintrag enthält oder dass einer der angegebenen Bedingungsschlüssel den Zugriff von Prinzipalen auf die Ressource einschränkt. Wenn die ressourcenbasierte Richtlinie öffentlichen Zugriff auf Ihre Tabelle, Indizes oder Stream-Across gewährt, blockiert DynamoDB Sie daran AWS-Konten, die Richtlinie zu erstellen oder zu ändern, bis die Spezifikation in der Richtlinie korrigiert und als nicht öffentlich eingestuft wurde.
Sie können eine Richtlinie nicht öffentlich machen, indem Sie einen oder mehrere Prinzipale innerhalb des Blocks angeben. Principal
Das folgende Beispiel für eine ressourcenbasierte Richtlinie blockiert den öffentlichen Zugriff, indem zwei Prinzipale angegeben werden.
{ "Effect": "Allow", "Principal": { "AWS": [ "
123456789012
", "111122223333
" ] }, "Action": "dynamodb:*", "Resource": "*" }
Richtlinien, die den Zugriff durch die Angabe bestimmter Bedingungsschlüssel einschränken, gelten ebenfalls nicht als öffentlich. Neben der Bewertung des in der ressourcenbasierten Richtlinie angegebenen Prinzipals werden die folgenden vertrauenswürdigen Bedingungsschlüssel verwendet, um die Bewertung einer ressourcenbasierten Richtlinie für den nichtöffentlichen Zugriff abzuschließen:
-
aws:PrincipalAccount
-
aws:PrincipalArn
-
aws:PrincipalOrgID
-
aws:PrincipalOrgPaths
-
aws:SourceAccount
-
aws:SourceArn
-
aws:SourceVpc
-
aws:SourceVpce
-
aws:UserId
-
aws:PrincipalServiceName
-
aws:PrincipalServiceNamesList
-
aws:PrincipalIsAWSService
-
aws:Ec2InstanceSourceVpc
-
aws:SourceOrgID
-
aws:SourceOrgPaths
Damit eine ressourcenbasierte Richtlinie nicht öffentlich ist, dürfen die Werte für Amazon Resource Name (ARN) und String-Schlüssel außerdem keine Platzhalter oder Variablen enthalten. Wenn Ihre ressourcenbasierte Richtlinie den aws:PrincipalIsAWSService
Schlüssel verwendet, müssen Sie sicherstellen, dass Sie den Schlüsselwert auf true gesetzt haben.
Die folgende Richtlinie beschränkt den Zugriff auf den Benutzer John
im angegebenen Konto. Aufgrund dieser Bedingung ist der Principal
Inhalt eingeschränkt und gilt nicht als öffentlich.
{ "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dynamodb:*", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalArn": "arn:aws:iam::123456789012:user/John" } } }
Das folgende Beispiel für eine Richtlinie, die nicht auf öffentlichen Ressourcen basiert, schränkt sourceVPC
die Verwendung des Operators ein. StringEquals
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection", "Condition": { "StringEquals": { "aws:SourceVpc": [ "vpc-91237329" ] } } } ] }