Durchsetzung und Festlegung des Anwendungsbereichs von SSE-KMS für Tabellen und Tabellen-Buckets - Amazon Simple Storage Service

Durchsetzung und Festlegung des Anwendungsbereichs von SSE-KMS für Tabellen und Tabellen-Buckets

Sie können ressourcenbasierte Richtlinien für S3 Tables, KMS-Schlüsselrichtlinien, identitätsbasierte IAM-Richtlinien oder eine beliebige Kombination davon verwenden, um die Verwendung von SSE-KMS für S3-Tabellen und Tabellen-Buckets durchzusetzen. Weitere Informationen zu Identitäts- und Ressourcenrichtlinien für Tabellen finden Sie unter Zugriffsverwaltung für S3 Tables. Informationen zum Verfassen von Schlüsselrichtlinien finden Sie im Entwicklerhandbuch unter AWS Key Management Service-Schlüsselrichtlinien. Die folgenden Beispiele zeigen, wie Sie mithilfe von Richtlinien zur Durchsetzung von SSE-KMS verwenden können.

Dies ist ein Beispiel für eine Tabellen-Bucket-Richtlinie, die Benutzer daran hindert, Tabellen in einem bestimmten Tabellen-Bucket zu erstellen, es sei denn, sie verschlüsseln Tabellen mit einem bestimmten Schlüssel. AWS KMS Um diese Richtlinie zu verwenden, ersetzen Sie die Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "EnforceKMSEncryption", "Effect": "Deny", "Principal": "*", "Action": [ "s3tables:CreateTable" ], "Resource": [ "arn:aws:s3tables:us-west-2:111122223333:bucket/example-table-bucket/*" ], "Condition": { "StringNotEquals": { "s3tables:sseAlgorithm": "aws:kms", "s3tables:kmsKeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } } ] }

Diese IAM-Identitätsrichtlinie verlangt von Benutzern, bei der Erstellung oder Konfiguration von S3-Tables-Ressourcen einen bestimmten AWS KMS Schlüssel für die Verschlüsselung zu verwenden. Um diese Richtlinie zu verwenden, ersetzen Sie die Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RequireKMSKeyOnTables", "Action": [ "s3tables:CreateTableBucket", "s3tables:PutTableBucketEncryption", "s3tables:CreateTable" ] "Effect": "Deny", "Resource": "*", "Condition": { "StringNotEquals": { "s3tables:sseAlgorithm": "aws:kms", "s3tables:kmsKeyArn": "<key_arn>" } } } ] }

Dieses Beispiel für eine KMS-Schlüsselrichtlinie ermöglicht, dass der Schlüssel von einem bestimmten Benutzer nur für Verschlüsselungsvorgänge in einem bestimmten Tabellen-Bucket verwendet wird. Diese Art von Richtlinie ist nützlich, um den Zugriff auf einen Schlüssel in kontenübergreifenden Szenarien einzuschränken. Um diese Richtlinie zu verwenden, ersetzen Sie die Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

JSON
{ "Version":"2012-10-17", "Id": "Id", "Statement": [ { "Sid": "AllowPermissionsToKMS", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:s3:arn": "<table-bucket-arn>/*" } } } ] }