Berechtigungen für den Amazon 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 Bucket

Standardmäßig werden alle Amazon-S3-Buckets und -Objekte als privat eingestuft. Nur der Ressourcenbesitzer, der dasAWS Konto ist, 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.

Wenn automatisch ein Amazon S3 S3-Bucket für SieAWS Config erstellt wird (wenn Sie beispielsweise dieAWS Config Konsole verwenden, um Ihren Versandkanal 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

Wenn Konfigurationsinformationen (Verlaufsdateien und Snapshots) an den Amazon S3 S3-Bucket in Ihrem KontoAWS Config gesendet werden, übernimmt dieser die IAM-Rolle, die Sie bei der Einrichtung zugewiesen habenAWS Config. Wenn Konfigurationsinformationen an einen Amazon S3 S3-Bucket in einem anderen KontoAWS Config gesendet werden, wird zunächst versucht, die IAM-Rolle zu verwenden. Dieser Versuch schlägt jedoch fehl, wenn die Zugriffsrichtlinie für den Bucket keinenWRITE Zugriff auf die IAM-Rolle gewährt. 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 eine Zugriffsrichtlinie, die in Schritt 6 unten erwähnt wird, an den Amazon S3 S3-Bucket in einem anderen Konto anhängen, umAWS Config Zugriff auf den Amazon S3 S3-Bucket zu gewähren.

BeforeAWS Config can deliver logs to your Amazon S3 S3-BucketAWS Config prüft, ob der Bucket existiert und in welcherAWS Region sich der Bucket befindet. AWS Configversucht, die Amazon S3 HeadBucketS3-API aufzurufen, um zu überprüfen, ob der Bucket existiert, und um die Bucket-Region abzurufen. 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 Protokollübertragung 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 Service-Linked Roles

DieAWS Config serviceverknüpfte Rolle ist nicht berechtigt, Objekte in Amazon S3 S3-Buckets zu platzieren. Wenn Sie also eine serviceverknüpfte RolleAWS Config verwenden,AWS Config werden stattdessen Konfigurationselemente alsAWS Config Service Principal gesendet. Sie müssen dem Amazon S3 S3-Bucket in Ihrem eigenen Konto oder einem anderen Konto eine Zugriffsrichtlinie anhängen, die in Schritt 6 unten erwähnt wird, umAWS Config Zugriff auf den Amazon S3 S3-Bucket zu gewähren.

AWS ConfigZugriff auf den Amazon S3 Bucket gewähren

Mit diesen Schritten können Sie eine Zugriffsrichtlinie zu einem Amazon S3 S3-Bucket in Ihrem eigenen Konto oder einem anderen Konto hinzufügen. Die Zugriffsrichtlinie ermöglicht das SendenAWS Config von Konfigurationsinformationen an einen Amazon S3 S3-Bucket.

  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 bewährte Sicherheitsmethode, wenn SieAWS Config den Zugriff auf einen Amazon S3 S3-Bucket zulassen, empfehlen wir dringend, den Zugriff in der Bucket-Richtlinie mit derAWS:SourceAccount Bedingung zu beschränken. Wenn Ihre bestehende Bucket-Richtlinie nicht dieser bewährten Sicherheitsmethode entspricht, empfehlen wir Ihnen dringend, diese Bucket-Richtlinie so zu bearbeiten, dass sie diesen Schutz einschließt. DadurchAWS Config wird sichergestellt, dass der Zugriff nur im Namen erwarteter Benutzer gewährt wird.

    { "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 Configgehört einem IhrerAWS Konten oder verknüpften Konten innerhalb IhrerAWS OrganisationAWS und gehört nicht speziell zu diesem. Das heißt, wennAWS Config Konfigurationselemente alsAWS Config Service Principal gesendet werden (z. B. wenn die IAM-Rolle, die Sie bei der Einrichtung zugewiesen haben,AWS Config keinenWRITE Zugriff auf den Bucket hat oder wenn Sie eine serviceverknüpfte Rolle einrichtenAWS Config), funktioniert der Service nicht mit Bedingungen, die auf der Organisations-ID oder den Organisationseinheiten basieren.

    Anmerkung

    Wenn Sie Ihrer IAM-Rolle Berechtigungen anstelle desAWS Config Service Principal Name (SPN) gewähren, stellen Sie sicher, dass Ihre IAM-Rolle überPutObjectACL Berechtigungen für einen kontoübergreifenden Bucket verfügt, um Fehler mit unzureichenden Berechtigungen zu vermeiden. Ein Beispiel für eine IAM-Rollenrichtlinie finden Sie unter IAM-Rollenrichtlinie für Ihren S3-Bucket.

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

    • targetBucketName— Der Name des Amazon S3 S3-Buckets,AWS Config an den Konfigurationselemente übermittelt.

    • [optional] Präfix — Eine optionale Ergänzung zum Amazon S3 S3-Objektschlüssel, die dabei hilft, eine ordnerähnliche Organisation im Bucket zu erstellen.

    • sourceAccountId — Die ID des Kontos, für das Konfigurationselemente an den Ziel-Bucket gesendetAWS Config werden.

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

Sie können dieAWS:SourceAccount Bedingung in der obigen Amazon S3 S3-Bucket-Richtlinie verwenden, um den Config-Serviceprinzip darauf zu beschränken, nur mit dem Amazon S3 S3-Bucket zu interagieren, wenn Operationen im Namen bestimmter Konten ausgeführt werden. Wenn Sie planen, mehrere Konten derselben Organisation einzurichtenAWS Config, um Konfigurationselemente an einen einzelnen Amazon S3 S3-Bucket zu liefern, empfehlen wir die Verwendung von IAM-Rollen anstelle von dienstgebundenen Rollen, sodass SieAWS Organizations Bedingungsschlüssel wie verwenden könnenAWS:PrincipalOrgID. Weitere Informationen zur Verwaltung der Zugriffsberechtigungen für eine IAM-Rolle zur Verwendung finden Sie unter Berechtigungen für die zugewiesene IAM-RolleAWS Config.AWS Config Weitere Informationen über die Verwaltung von Zugriffsberechtigungen fürAWS Organizations finden Sie unter Verwalten von Zugriffsberechtigungen für IhreAWS Organisation.

AWS Configunterstützt auch dieAWS:SourceArn Bedingung, dass der Config-Serviceprinzip nur mit dem Amazon S3 S3-Bucket interagiert, wenn Operationen im Namen bestimmterAWS Config Lieferkanäle ausgeführt werden. Wenn Sie denAWS Config Service Principal verwenden, wird dieAWS:SourceArn Eigenschaft immerarn:aws:config:sourceRegion:sourceAccountID:* aufsourceRegion die Region des Lieferkanals gesetzt undsourceAccountID entspricht der ID des Kontos, das den Lieferkanal enthält. Weitere Informationen zuAWS Config Lieferkanälen finden Sie unter Delivery Channel verwalten. Fügen Sie beispielsweise die folgende Bedingung hinzu, um den Config-Serviceprinzip darauf zu beschränken, mit Ihrem Amazon S3 S3-Bucket nur im Namen eines Lieferkanals in derus-east-1 Region des Kontos zu interagieren123456789012:"ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:*"}.