So konfigurieren Sie S3 -Bucket -Berechtigungen auf AWS

So konfigurieren Sie S3 -Bucket -Berechtigungen auf AWS
S3 (einfacher Speicherdienst) ist der von AWS bereitgestellte Speicherdienst und speichert Daten in S3 -Eimer. Standardmäßig sind alle S3 -Eimer privat und können im Internet nicht öffentlich zugegriffen werden. Nur der AWS -Benutzer mit spezifischen Berechtigungen kann auf die Objekte innerhalb des Eimers zugreifen. Außerdem kann der öffentliche Zugriff auf die S3 -Bucket -Objekte aktiviert werden, und das Objekt wird allen öffentlichen Internet zur Verfügung gestellt.

Es gibt zwei Arten von Berechtigungen in einem S3 -Eimer.

  • Benutzerbasiert
  • Ressourcenbasiert

Für benutzerbasierte Berechtigungen wird eine IAM-Richtlinie erstellt, die die Zugriffsstufe eines IAM-Benutzers für die S3-Eimer und seine Objekte definiert und an den IAM-Benutzer beigefügt ist. Jetzt hat der IAM -Benutzer nur Zugriff auf die spezifischen Objekte, die in der IAM -Richtlinie definiert sind.

Ressourcenbasierte Berechtigungen sind die Berechtigungen, die den S3-Ressourcen zugewiesen wurden. Mit diesen Berechtigungen können wir definieren, ob auf dieses S3 -Objekt auf mehrere S3 -Konten zugegriffen werden kann oder nicht. Es gibt die folgenden Arten von s3-basierten Richtlinien.

  • Eimer -Richtlinien
  • Zugriffskontrollliste

In diesem Artikel werden die detaillierten Anweisungen beschrieben, um den S3 -Bucket mithilfe der AWS -Verwaltungskonsole zu konfigurieren.

Benutzerbasierte Berechtigungen

Benutzerbasierte Berechtigungen sind die dem IAM-Benutzer zugewiesenen Berechtigungen, die definieren, ob der IAM-Benutzer Zugriff auf bestimmte S3-Objekte hat oder nicht. Zu diesem Zweck wird eine IAM -Richtlinie geschrieben und dem IAM -Benutzer beigefügt.

In diesem Abschnitt wird eine Inline -IAM -Richtlinie geschrieben, um dem IAM -Benutzer spezifische Berechtigungen zu erteilen. Melden Sie sich zunächst in die AWS -Verwaltungskonsole an und gehen Sie zum IAM -Service.

Die IAM -Richtlinie ist entweder einem Benutzer oder einer Benutzergruppe in IAM beigefügt. Wenn Sie die IAM -Richtlinie auf mehrere Benutzer anwenden möchten, fügen Sie alle Benutzer in eine Gruppe hinzu und fügen Sie die IAM -Richtlinie der Gruppe an.

Für diese Demo werden wir die IAM -Richtlinie einem einzelnen Benutzer anschließen. Klicken Sie aus der IAM -Konsole auf die Benutzer von der linken Seite.

Klicken Sie nun aus der Liste der Benutzer auf den Benutzer, den Sie anhängen möchten, die IAM -Richtlinie.

Wähle aus Berechtigungen Registerkarte und klicken Sie auf die Inline -Richtlinien hinzufügen Taste auf der rechten Seite der Registerkarte.

Sie können jetzt die IAM -Richtlinie entweder mit dem visuellen Editor oder dem Schreiben eines JSON erstellen. Wir werden den visuellen Herausgeber verwenden, um die IAM -Richtlinie für diese Demo zu schreiben.

Wir werden den Service, die Aktionen und die Ressourcen des visuellen Editors auswählen. Service ist der AWS -Service, für den wir die Richtlinie schreiben werden. Für diese Demo, S3 ist der Service.

Die Aktionen definieren die zulässigen oder verweigerten Aktionen, die auf S3 ausgeführt werden können. Wie wir eine Aktion hinzufügen können ListBucket Auf S3, damit der IAM -Benutzer S3 -Eimer auflistet. Für diese Demo werden wir nur gewähren Aufführen Und Lesen Berechtigungen.

Ressourcen definieren, welche S3 -Ressourcen von dieser IAM -Richtlinie betroffen sein werden. Wenn wir eine bestimmte S3 -Ressource auswählen, gilt diese Richtlinie nur für diese Ressource. Für diese Demo werden wir alle Ressourcen auswählen.

Nachdem Sie den Dienst, die Aktion und die Ressource ausgewählt haben, klicken Sie nun auf die JSON Registerkarte und es zeigt einen erweiterten JSON, der alle Berechtigungen definiert. Ändere das Wirkung aus Erlauben Zu Leugnen die angegebenen Maßnahmen an die angegebenen Ressourcen in der Richtlinie zu verweigern.

Klicken Sie nun auf die Überprüfungspolitik Taste in der unteren rechten Ecke der Konsole. Es wird nach dem Namen der IAM -Richtlinie gefragt. Geben Sie den Richtliniennamen ein und klicken Sie auf die Richtlinien erstellen Schaltfläche zum Hinzufügen von Inline -Richtlinien zum vorhandenen Benutzer.

Jetzt kann der IAM -Benutzer die in der IAM -Richtlinie auf allen S3 -Ressourcen angegebenen Aktionen nicht ausführen. Immer wenn der IAM versucht, eine verweigerte Aktion auszuführen, wird der folgende Fehler auf der Konsole erfolgt.

Ressourcenbasierte Berechtigungen

Im Gegensatz zu IAM-Richtlinien werden ressourcenbasierte Berechtigungen auf die S3-Ressourcen wie Eimer und Objekte angewendet. In diesem Abschnitt werden ressourcenbasierte Berechtigungen auf dem S3-Eimer konfiguriert.

Eimer -Richtlinien

S3 -Eimer -Richtlinien werden verwendet, um dem S3 -Eimer und seinen Objekten Berechtigungen zu erteilen. Nur der Eimer -Eigentümer kann die Bucket -Richtlinie erstellen und konfigurieren. Die von der Bucket -Richtlinie angewendeten Berechtigungen betreffen alle Objekte im S3 -Eimer mit Ausnahme der Objekte, die anderen AWS -Konten gehören.

Wenn ein Objekt aus einem anderen AWS -Konto in Ihren S3 -Bucket hochgeladen wird, gehört es im Besitz des AWS -Kontos (Objektschreiber). Dieses AWS -Konto (Objektschreiber) hat Zugriff auf dieses Objekt und kann Berechtigungen mit ACLS erteilen.

S3 -Bucket -Richtlinien sind in JSON geschrieben, und die Berechtigungen können für die Objekte von S3 -Eimer mit diesen Richtlinien hinzugefügt oder abgelehnt werden. In diesem Abschnitt wird eine Demo S3 -Bucket -Richtlinie geschrieben und sie dem S3 -Eimer angehängt.

Gehen Sie zunächst von der AWS -Management -Konsole zu S3.

Gehen Sie zum S3 -Eimer, den Sie die Eimer -Richtlinie anwenden möchten.

Gehe zum Berechtigungen Registerkarte im S3 -Eimer.

Scrollen zum nach unten zum Eimerpolitik Abschnitt und klicken Sie auf die bearbeiten Taste in der oberen rechten Ecke des Abschnitts, um die Eimer -Richtlinie hinzuzufügen.

Fügen Sie nun den folgenden Bucket -Richtlinien zum S3 -Eimer hinzu. Diese Beispiel -Eimer -Richtlinie blockiert jede Aktion auf dem S3 -Eimer, auch wenn Sie eine IAM -Richtlinie haben, die Zugriff auf S3 gewährt, die dem Benutzer angeschlossen ist. Im Ressource Feld der Richtlinie ersetzen Sie die Eimer-Namen Mit Ihrem S3 -Eimer -Namen, bevor Sie ihn an den S3 -Eimer anbringen.

Um eine benutzerdefinierte S3 -Bucket -Richtlinie zu schreiben, besuchen Sie den AWS -Richtliniengenerator von der folgenden URL.

https: // awspolicygen.S3.Amazonawen.com/PolicyGen.html


"Version": "2012-10-17",
"ID": "Policy-1",
"Stellungnahme": [

"SID": "Richtlinie, um den gesamten Zugriff auf S3 zu blockieren",
"Effekt": "leugnen",
"Rektor": "*",
"Aktion": "S3:*",
"Ressource": "ARN: AWS: S3 :::Eimer-Namen/*"

]

Nachdem Sie die S3 -Bucket -Richtlinie angehängt haben, versuchen Sie nun, eine Datei in den S3 -Bucket hochzuladen, und sie wirft den folgenden Fehler aus.

Zugriffskontrolllisten

Amazon S3 Access Control Listen verwalten Zugriff auf S3 -Bucket- und S3 -Objektebenen. Jedes S3 -Eimer und jedes S3 -Objekt verfügt über eine Zugriffskontrollliste, und wenn eine Anfrage empfangen wird, überprüft S3 seine Zugriffskontrollliste und entscheidet, ob die Genehmigung erteilt wird oder nicht.

In diesem Abschnitt konfiguriert die S3 -Zugriffskontrollliste, um den S3 -Bucket öffentlich zu machen, damit jeder auf der Welt auf die im Bucket gespeicherten Objekte zugreifen kann.

NOTIZ: Bitte stellen Sie sicher, dass Sie keine geheimen Daten im Eimer haben.

Gehen Sie zunächst aus der AWS -Verwaltungskonsole zum S3 -Dienst und wählen Sie den Eimer aus, den Sie für die Zugriffskontrollliste konfigurieren möchten. Konfigurieren Sie vor dem Konfigurieren der Zugriffskontrollliste zunächst den öffentlichen Zugriff auf den Bucket, um den öffentlichen Zugriff auf dem Eimer zu ermöglichen.

Gehen Sie im S3 -Eimer in die Berechtigungen Tab.

Scrollen zum nach unten zum Blockieren Sie den öffentlichen Zugang Abschnitt in der Berechtigungen Registerkarte und klicken Sie auf die bearbeiten Taste.

Es wird verschiedene Optionen öffnen, um den Zugriff zu blockieren, der über verschiedene Richtlinien gewährt wird. Deaktivieren Sie die Felder, die den von der Zugriffskontrollliste gewährten Zugriff blockieren, und klicken Sie auf die Änderungen speichern Taste.

Klicken Sie aus dem S3 -Eimer auf das Objekt, das Sie öffentlich machen möchten, und gehen Sie zur Registerkarte "Berechtigungen".

Klick auf das bearbeiten Taste an der rechten Ecke des Berechtigungen Registerkarte und überprüfen Sie die Kästchen.

Klick auf das Änderungen speichern Um die Liste der Zugriffskontrollliste anzuwenden, ist das S3 -Objekt jetzt für alle über das Internet zugegriffen. Gehen Sie zur Registerkarte Eigenschaften des S3 -Objekts (nicht zum S3 -Eimer) und kopieren Sie die S3 -Objekt -URL.

Öffnen Sie die URL im Browser und öffnet die Datei im Browser.

Abschluss

AWS S3 kann verwendet werden, um Daten zu setzen, auf die über das Internet zugegriffen werden kann. Gleichzeitig gibt es möglicherweise einige Daten, die Sie nicht der Welt aussetzen möchten. AWS S3 bietet eine Konfiguration mit niedriger Ebene, mit der der Zugriff auf Objektebene zulässig ist oder blockiert werden kann. Sie können S3 -Bucket -Berechtigungen so konfigurieren, dass einige Objekte im Eimer möglicherweise öffentlich sind, und einige können gleichzeitig privat sein. Dieser Artikel gibt wesentliche Anleitung zum Konfigurieren von S3 -Bucket -Berechtigungen mithilfe der AWS -Verwaltungskonsole.