Amazon S3: S3-Bucket-Zugriff, der Zugriff auf den Produktions-Bucket ohne vorherige MFA wird aber verweigert - AWS Identitäts- und Zugriffsverwaltung

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.

Amazon S3: S3-Bucket-Zugriff, der Zugriff auf den Produktions-Bucket ohne vorherige MFA wird aber verweigert

Dieses Beispiel zeigt, wie Sie eine identitätsbasierte Richtlinie erstellen können, die einem Amazon-S3-Administrator den Zugriff auf jeden Bucket erlaubt, einschließlich dem Aktualisieren, Hinzufügen und Löschen von Objekten. Dabei wird jedoch explizit der Zugriff auf den Production-Bucket verweigert, wenn sich der Benutzer nicht innerhalb der letzten 30 Minuten per Multifaktor-Authentifizierung (MFA) angemeldet hat. Diese Richtlinie gewährt die erforderlichen Berechtigungen, um diese Aktion in der Konsole oder programmgesteuert mithilfe der API AWS CLI oder AWS auszuführen. Um diese Richtlinie zu verwenden, ersetzen Sie den kursiv gedruckten Platzhaltertext in der Beispielrichtlinie durch Ihre eigenen Informationen. Befolgen Sie dann die Anweisungen unter Erstellen einer Richtlinie oder Bearbeiten einer Richtlinie.

Diese Richtlinie ermöglicht niemals den programmgesteuerten Zugriff auf den Production-Bucket mit langfristig geltenden Benutzerzugriffsschlüsseln. Dies wird mit dem aws:MultiFactorAuthAge-Bedingungsschlüssel mit dem NumericGreaterThanIfExists-Bedingungsoperator erreicht. Diese Richtlinienbedingung gibt true zurück, wenn MFA nicht vorhanden ist oder wenn das Alter des MFA größer als 30 Minuten ist. In diesen Situationen wird der Zugriff verweigert. Um programmgesteuert auf den Production Bucket zuzugreifen, muss der S3-Administrator temporäre Anmeldeinformationen verwenden, die in den letzten 30 Minuten mithilfe des API-Vorgangs generiert wurden. GetSessionToken

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListAllS3Buckets", "Effect": "Allow", "Action": ["s3:ListAllMyBuckets"], "Resource": "arn:aws:s3:::*" }, { "Sid": "AllowBucketLevelActions", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::*" }, { "Sid": "AllowBucketObjectActions", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:GetObject", "s3:GetObjectAcl", "s3:DeleteObject" ], "Resource": "arn:aws:s3:::*/*" }, { "Sid": "RequireMFAForProductionBucket", "Effect": "Deny", "Action": "s3:*", "Resource": [ "arn:aws:s3:::Production/*", "arn:aws:s3:::Production" ], "Condition": { "NumericGreaterThanIfExists": {"aws:MultiFactorAuthAge": "1800"} } } ] }