Sperren des öffentlichen Zugangs mit ressourcenbasierten Richtlinien - Amazon-DynamoDB

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.

Sperren des öffentlichen Zugangs mit ressourcenbasierten Richtlinien

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 Web Services () -Konten gewähren, identifiziert und verhindert.AWS Mit BPA können Sie den öffentlichen Zugriff auf Ihre DynamoDB-Ressourcen verhindern. BPA führt während der Erstellung oder Änderung einer ressourcenbasierten Richtlinie Prüfungen durch und hilft Ihnen, Ihre Sicherheitslage mit DynamoDB zu verbessern.

BPA analysiert anhand automatisierter Argumentation den Zugriff, der durch Ihre ressourcenbasierte Richtlinie gewährt wird, und warnt Sie, wenn solche Berechtigungen zum Zeitpunkt der Verwaltung einer ressourcenbasierten Richtlinie gefunden werden. Bei der Analyse wird der Zugriff auf alle ressourcenbasierten Richtlinienerklärungen, Aktionen und die in Ihren Richtlinien verwendeten Bedingungsschlüssel überprüft.

Wichtig

BPA trä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 von BPA sollten Sie die folgenden Richtlinien sorgfältig prüfen, um sicherzustellen, dass sie keinen öffentlichen Zugriff gewähren:

  • Identitätsbasierte Richtlinien, die mit zugehörigen AWS Principals verknüpft sind (z. B. IAM-Rollen)

  • Ressourcenbasierte Richtlinien, die mit zugehörigen AWS Ressourcen verknüpft sind (z. B. (KMS-) Schlüssel) AWS Key Management Service

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 Zeichenkettenschlü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" ] } } } ] }