Standardverschlüsselung für ein vorhandenes S3 -Bucket festlegen

Als Speicheradministrator können Sie die Standardverschlüsselung für ein vorhandenes Amazon S3 -Bucket festlegen, sodass alle Objekte verschlüsselt werden, wenn sie in einem Bucket gespeichert werden. Sie können Bucket Encryption-APIs verwenden, um die serverseitige Verschlüsselung mit Amazon S3-verwalteten Schlüsseln (SSE-S3) oder Amazon KMS-Kundenmasterschlüsseln (SSE-KMS) zu unterstützen.

Sie können die Standardverschlüsselung für ein vorhandenes Amazon S3 -Bucket mit der PutBucketEncryption -API verwalten. Alle in dieses Bucket hochgeladenen Dateien verfügen über diese Verschlüsselung, indem die Standardverschlüsselung auf Bucketebene definiert wird.

Voraussetzungen

  • Ein aktiver IBM Storage Ceph

  • Installation von Ceph Object Gateway.

  • Ein S3 -Bucket wurde erstellt.

  • Ein S3 -Benutzer, der mit Benutzerzugriff erstellt wurde

  • Zugriff auf einen Ceph Object Gateway -Client mit installiertem AWS -CLI-Paket.

Vorgehensweise

  1. Erstellen einer JSON-Datei für die Verschlüsselungskonfiguration:

    Beispiel

    [user@client ~]$ vi bucket-encryption.json
  2. Fügen Sie die Verschlüsselungskonfigurationsregeln zur Datei hinzu:

    Beispiel

    {
            "Rules": [
            {
                "ApplyServerSideEncryptionByDefault": {
                        "SSEAlgorithm": "AES256"
                }
           }
        ]
    }
  3. Legen Sie die Standardverschlüsselung für das Bucket fest:

    Syntax

    aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api put-bucket-encryption --bucket BUCKET_NAME --server-side-encryption-configuration file://PATH_TO_BUCKET_ENCRYPTION_CONFIGURATION_FILE/BUCKET_ENCRYPTION_CONFIGURATION_FILE.json

    Beispiel

    [user@client ~]$ aws --endpoint-url=http://host01:80 s3api put-bucket-encryption --bucket testbucket --server-side-encryption-configuration file://bucket-encryption.json

Überprüfung

  • Rufen Sie die Konfiguration für die Bucketverschlüsselung für das Bucket ab:

    Syntax

    aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api get-bucket-encryption --bucket BUCKET_NAME

    Beispiel

    [user@client ~]$  aws --profile ceph --endpoint=http://host01:80 s3api get-bucket-encryption --bucket testbucket
    
    {
        "ServerSideEncryptionConfiguration": {
            "Rules": [
                {
                    "ApplyServerSideEncryptionByDefault": {
                        "SSEAlgorithm": "AES256"
                    }
                }
            ]
        }
    }
Hinweis: Wenn das Bucket keine Standardverschlüsselungskonfiguration hat, gibt der Befehl get-bucket-encryption ServerSideEncryptionConfigurationNotFoundErrorzurück.