Berechtigungen für den Amazon S3 S3-Bucket - AWS Config

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.

Berechtigungen für den Amazon S3 S3-Bucket

Standardmäßig werden alle Amazon-S3-Buckets und -Objekte als privat eingestuft. Nur der Ressourcenbesitzer, derAWSKonto, das den -Bucket erstellt hat, kann auf diesen Bucket zugreifen. Der Ressourceninhaber kann jedoch Zugriffsberechtigungen für weitere Ressourcen und Benutzer erteilen. Das Schreiben einer Zugriffsrichtlinie ist eine Möglichkeit dazu.

WennAWS Configerstellt automatisch einen Amazon S3 S3-Bucket für Sie (z. B.AWS Config-Konsole, um Ihren Übermittlungskanal einzurichten), werden diese Berechtigungen automatisch dem Amazon S3 S3-Bucket hinzugefügt. Wenn Sie jedoch einen vorhandenen Amazon S3 S3-Bucket angeben, müssen Sie sicherstellen, dass der S3-Bucket über die richtigen Berechtigungen verfügt.

Anmerkung

Ein Objekt erbt nicht die Berechtigungen von seinem Bucket. Wenn Sie beispielsweise einen Bucket erstellen und einem Benutzer Schreibzugriff erteilen, können Sie auf die Objekte dieses Benutzers nicht zugreifen, wenn Ihnen der Benutzer nicht explizit Zugriff erteilt.

Erforderliche Berechtigungen für den Amazon S3 S3-Bucket bei Verwendung von IAM-Rollen

WannAWS Configsendet Konfigurationsinformationen (Verlaufsdateien und Snapshots) an Amazon S3 S3-Bucket in Ihrem Konto und nimmt die IAM-Rolle an, die Sie bei der Einrichtung zugewiesen habenAWS Configaus. WannAWS Configsendet Konfigurationsinformationen an einen Amazon S3 S3-Bucket in einem anderen Konto, wird zunächst versucht, die IAM-Rolle zu verwenden. Dieser Versuch ist allerdings nicht erfolgreich, wenn die Zugriffsrichtlinie für den Bucket nicht gewährt wirdWRITEZugriff auf die IAM-Rolle. In diesem Fall sendet AWS Config die Informationen erneut, dieses Mal als AWS Config-Service-Prinzipal. Bevor die Übermittlung erfolgreich durchgeführt werden kann, muss die Zugriffsrichtlinie dem config.amazonaws.com-Prinzipalnamen WRITE-Zugriff erteilen. AWS Config wird dann zum Inhaber der an den S3-Bucket übermittelten Objekte. Sie müssen an den Amazon S3 S3-Bucket in einem anderen Konto eine Zugriffsrichtlinie anfügen (siehe Schritt 6 unten), um dies zu erteilenAWS ConfigZugriff auf den Amazon S3 S3-Bucket.

VorAWS Configkann Protokolle an Ihren Amazon S3 S3-Bucket liefernAWS Configprüft, ob der Bucket existiert und in welchemAWS-Region befindet sich der Bucket.AWS Configversucht Amazon S3 anzurufenHeadBucketAPI, um zu überprüfen, ob der Bucket existiert und um den Bucket-Bereich zu erhalten. Wenn bei der Überprüfung der Position keine Berechtigungen zum Auffinden des Buckets erteilt werden, ist in den AWS CloudTrail-Protokollen der Fehler AccessDenied zu sehen. Die Übergabe des Protokolls an Ihren Amazon S3 S3-Bucket ist jedoch erfolgreich, wenn Sie keine Berechtigungen für den Bucket-Standort bereitstellen.

Erforderliche Berechtigungen für den Amazon S3 S3-Bucket bei Verwendung von serviceverknüpften Rollen

DieAWS ConfigDie serviceverknüpfte Rolle verfügt nicht über die Berechtigung, Objekte in Amazon S3 S3-Buckets zu platzieren. Also, wenn du einrichtestAWS ConfigVerwendung einer serviceverknüpften Rolle,AWS Configsendet Konfigurationselemente alsAWS ConfigStattdessen -Service-Prinzipal. Sie müssen an den Amazon S3 S3-Bucket in Ihrem eigenen oder einem anderen Konto eine Zugriffsrichtlinie anfügen (siehe Schritt 6 unten), um dies zu erteilenAWS ConfigZugriff auf den Amazon S3 S3-Bucket.

ErteilungAWS ConfigZugriff auf den Amazon S3 S3-Bucket

Gehen Sie wie folgt vor, um einem Amazon S3 S3-Bucket in Ihrem eigenen oder einem anderen Konto eine Zugriffsrichtlinie hinzuzufügen. Die Zugriffsrichtlinie erlaubtAWS Configum Konfigurationsinformationen an den Amazon S3 S3-Bucket zu senden.

  1. Melden Sie sich mit dem Konto mit den S3-Bucket an der AWS Management Console an.

  2. Öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/.

  3. Wählen Sie den Bucket aus, den AWS Config zum Übermitteln der Konfigurationselemente verwenden soll, und wählen Sie dann Properties (Eigenschaften) aus.

  4. Wählen Sie Permissions (Berechtigungen).

  5. Wählen Sie Edit Bucket Policy.

  6. Kopieren Sie die folgende Richtlinie in das Fenster Bucket Policy Editor (Richtlinien-Editor für Buckets):

    Wichtig

    Als Best Practice für Sicherheit beim ZulassenAWS ConfigWenn Sie auf einen Amazon S3 S3-Bucket zugreifen, empfehlen wir dringend, den Zugriff in die Bucket-Richtlinie mit demAWS:SourceAccount-Bedingung. Wenn Ihre bestehende Bucket-Richtlinie dieser Best Practice für Sicherheit nicht entspricht, empfehlen wir Ihnen dringend, diese Bucket-Richtlinie so zu bearbeiten, dass sie diesen Schutz einschließt. Dies stellt sicher, dassAWS Configwird nur im Namen erwarteter Benutzer Zugriff gewährt.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
    Anmerkung

    AWS Configbefindet sich im Besitz vonAWSund gehört nicht spezifisch zu einem IhrerAWSKonten oder verknüpfte Konten in IhremAWSOrganisation. Dies bedeutet, dass wannAWS Configsendet Konfigurationselemente alsAWS ConfigDienstprinzipal (z. B. wenn die IAM-Rolle, die Sie beim Einrichten zugewiesen habenAWS Confighat nichtWRITEZugriff auf den Bucket oder beim EinrichtenAWS Configum eine dienstgebundene Rolle zu verwenden) funktioniert der Dienst nicht mit Organisations-ID oder auf Organisationseinheiten basierenden Bedingungen.

    Anmerkung

    Wenn Sie Berechtigungen für Ihre IAM-Rolle erteilen, anstattAWS ConfigDienstprinzipalname (SPN), stellen Sie sicher, dass Ihre IAM-RollePutObjectACLBerechtigung für kontoübergreifenden Bucket zur Vermeidung unzureichender Berechtigungsfehler Siehe Beispielrichtlinie für IAM-Rollen unter IAM-Rollenrichtlinie für Amazon S3 Bucketaus.

  7. Ersetzen Sie die folgenden Werte in der Bucket-Richtlinie:

    • targetBucketName— Der Name des Amazon S3 S3-Buckets, zu demAWS Configliefert Konfigurationselemente.

    • [optional] Präfix— Eine optionaler Zusatz zum Amazon S3 S3-Objektschlüssel, mit dem der Bucket ordnerähnlich organisiert werden kann.

    • sourceAccountID— Die ID des Kontos, für dasAWS Configliefert Konfigurationselemente an den Ziel-Bucket.

  8. Wählen Sie Save (Speichern) und dann Close (Schließen) aus.

Sie können dasAWS:SourceAccountBedingung in der oben genannten Amazon S3 S3-Bucket-Richtlinie, um den Config-Service-Prinzipal darauf zu beschränken, nur mit dem Amazon S3 S3-Bucket zu interagieren, wenn Vorgänge im Namen bestimmter Konten ausgeführt werden. Wenn Sie planen einzurichtenAWS ConfigIn vielen Konten derselben Organisation, um Konfigurationselemente an einen einzelnen Amazon S3 S3-Bucket zu liefern, empfehlen wir, IAM-Rollen anstelle von serviceverknüpften Rollen zu verwenden, damit SieAWS OrganizationsBedingungen Schlüssel wieAWS:PrincipalOrgIDaus. Weitere Informationen zum Verwalten von Zugriffsberechtigungen für eine IAM-Rolle, die mitAWS Configfinden Sie unter,Zugewiesene Berechtigungen für die IAM-RolleAWS Configaus. Weitere Informationen zum Verwalten von Zugriffsberechtigungen fürAWS Organizationsfinden Sie unter,Verwalten von Zugriffsberechtigungen für IhreAWSOrganisationaus.

AWS Configunterstützt auch dieAWS:SourceArnBedingung, die den Config-Service-Prinzipal darauf beschränkt, nur mit dem Amazon S3 S3-Bucket zu interagieren, wenn Vorgänge im Auftrag bestimmter Vorgänge ausgeführt werdenAWS ConfigLieferkanäle. Bei Verwendung desAWS Config-Service-Prinzipal, derAWS:SourceArnEigenschaft wird immer aufarn:aws:config:sourceRegion:sourceAccountID:*wohersourceRegionist die Region des Übermittlungskanals undsourceAccountIDist die ID des Kontos, das den Lieferkanal enthält. Weitere Informationen zuAWS ConfigLieferkanäle sieheVerwalten des Übermittlungskanalsaus. Fügen Sie beispielsweise die folgende Bedingung hinzu, um den Config-Service-Prinzipal darauf zu beschränken, mit Ihrem Amazon S3 S3-Bucket nur im Namen eines Lieferkanals imus-east-1Region im Konto123456789012:"ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:*"}aus.