Terraform S3 Bucket Policy

Terraform S3 Bucket Policy
Terraform ist ein (IAC) Tool für DevOp. Viele Cloud -Anbieter sind Partner von Terraform, und AWS ist einer von ihnen. Terraform kann Ihnen bei der Erstellung von S3 -Bucket (Cloud Storage Service) sowie der Konfiguration und Richtlinie auf effiziente Weise helfen. Durch das Erstellen einer S3 -Bucket -Richtlinie können Sie Berechtigungen für den Zugriff auf Ihre S3 -Bucket -Objekte festlegen und Sicherheit und Verschlüsselung sicherstellen.

Dieser Beitrag bietet einen Verfahrensführer für die Erstellung einer S3 -Bucket -Richtlinie mit Terraform.

Voraussetzung: Installation von AWS CLI und Terraform

Laden Sie die AWS CLI und Terraform in Ihrem System herunter und installieren Sie sie. Überprüfen Sie nach Abschluss der Installation, ob sie erfolgreich installiert sind oder nicht. Geben Sie also für AWS diesen Befehl ein:

AWS -Version

Es ist sichtbar, dass die AWS in Ihrem System erfolgreich installiert wird.

Für Terraformtyp:

Terraform --version

In der obigen Ausgabe ist es sichtbar, dass Terraform in Ihrem System erfolgreich installiert wird.

Der nächste Schritt besteht darin, Ihr AWS -Konto mit dem folgenden Befehl zu konfigurieren und die erforderlichen Details anzugeben:

AWS konfigurieren


Hinweis: Um zu erfahren, wie Sie AWS CLI konfigurieren, Lies hier!
Sie sind bereit, für das Erstellen und Verwalten Ihrer AWS -Cloud -Ressourcen und -Dienste mit Terraform zu codieren und zu verwalten.

Erstellen Sie die S3 -Bucket -Richtlinie mit Terraform

Um eine Terraform -Datei zu erstellen, erstellen wir zunächst ein Verzeichnis, in dem Sie mit dem Tippen arbeiten:

Mkdir Terraform_S3_Policy

Öffnen Sie das Verzeichnis mit jedem Code -Editor:

Erstellen Sie eine Terraform -Datei mit dem Namen “hauptsächlich.tf”Um den Code zu speichern:

Geben Sie diesen Code an, um zu erklären, dass der AWS -Anbieter verwendet wird:

Terraform
fordert_providers
AWS =
Source = "Hashicorp/AWS"
Version = "~> 4.0 "


Schreiben Sie den Code, um die Anbieterregion zu erwähnen, in der Ressourcen erstellt werden:

Anbieter "AWS"
Region = "US-East-1"

Code für die Erstellung von S3 -Bucket, für den Sie später in diesem Beitrag eine Richtlinie erstellen:

Ressource "AWS_S3_Bucket" "LinuxHintbucket"
Bucket = "LinuxHintbucket"
Tags =
Name = "mein Eimer"
Umwelt = "Dev"

Lassen Sie uns erklären, ob die Bucket -Objekte öffentlich zugänglich sind oder nicht, indem Sie sie auf "festlegen"WAHRBedeutet, es wird nicht öffentlich sein:

Ressource "AWS_S3_BUCKET_PUBLIC_ACCESS_BLOCK" "LinuxHintbucket"
bucket = aws_s3_bucket.LinuxHintbucket.Eimer
block_public_acls = true
block_public_policy = true

Der nächste Schritt besteht darin, die Konfiguration für die serverseitige Verschlüsselung mit AWS durchzuführen Wichtige Verwaltungsdienste, Durch Codierung:

Ressource "AWS_S3_Bucket_Server_side_encryption_configuration" "LinuxHintbucket"
bucket = aws_s3_bucket.LinuxHintbucket.Eimer
Regel
apply_server_side_encryption_by_default
SSE_ALGORITHM = "AWS: KMS"


Führen Sie die Konfiguration des S3 -Lebenszyklus durch, um Regeln mit vordefinierten Aktionen für S3 -Bucket festzulegen, um sie während eines Lebens auf Objekte durchzuführen, Typ:

Ressource "AWS_S3_Bucket_Lifecycle_Configuration" "LinuxHintbucket"
bucket = aws_s3_bucket.LinuxHintbucket.Ausweis

Legen Sie die Regeln nach Ihrer Präferenz für diesen Beitrag fest “Regel 1" ist für "Protokolle”Von S3 Bucket:

Regel
id = "Regel-1"
Filter
Und
Präfix = "logs/"
Tags =
Key1 = "value1"
Key2 = "value2"



status = "aktiviert"
Ablauf
Tage = 7

Lassen Sie uns eine andere Regel für "definieren"TMP”, Verwenden Sie dieses Stück Code:

Regel
id = "Regel-2"
Filter
Präfix = "TMP/"

status = "aktiviert"
Ablauf
Tage = 7

Konfigurieren wir Bucket -Metriken:

Ressource "AWS_S3_Bucket_Metric" "enable-metrics-bucket"
Bucket = "LinuxHintbucket"
NAME = "InsehyBucket"

Nach dem Eingeben dieses Code.

Geben Sie diesen Befehl in das Terminal ein, um den Arbeitsbereich zu initialisieren. Das Terminal kann der Code -Editor oder die Eingabeaufforderung in diesem Verzeichnis haben:

Terraform init

Geben Sie bei der erfolgreichen Initialisierung des Arbeitsbereichs diesen Befehl ein, um zu sehen, was erstellen oder ändern wird:

Terraformplan

Geben Sie diesen Befehl ein, um die Datei auszuführen:

Terraform gelten

Typ "JaWenn eine Nachricht für die Kontinuität angezeigt wird:

Es wird eine Erfolgsnachricht angezeigt, die darüber informiert, dass 5 Ressourcen erfolgreich hinzugefügt werden.

Bestätigen Sie die Schaffung der S3 -Bucket -Richtlinie

Um zu bestätigen, dass die Ressourcen erfolgreich in das AWS -Konto in der Amazon Management -Konsole, der Suche und dem Bucket Dashboard hinzugefügt werden. Im Dashboard können Sie den S3 -Eimer sehen, den Sie mit der Terraform -Datei erstellt haben:

Es ist sichtbar, dass der S3 -Eimer erfolgreich erstellt wird.

Der nächste Schritt besteht darin, den S3 -Eimer zu öffnen und die "auszuwählen"ManagementRegisterkarte hier, hier können Sie die sehen Lebenszyklus Regeln die mit der Terraform -Datei erstellt wurden:

Das bedeutet, dass Sie den S3 -Bucket zusammen mit der S3 -Bucket -Richtlinie mit der Terraform erfolgreich erstellt haben.

Abschluss

Um mit Terraform S3 Bucket in AWS zu erstellen, stellen Sie sicher, dass Terraform und AWS CL in Ihrem System installiert sind. Konfigurieren Sie die AWS -CLI und erstellen Sie ein Verzeichnis, um die Terraform -Datei zu speichern. In der Terraform -Datei den Code für die Bereitstellung von Details der AWS -Region, die Erstellung von S3 -Bucket und das Erstellen von Richtlinien durch Konfiguration seiner öffentlichen Zugriff, Verschlüsselung, Lebenszyklusregeln und Metriken. Initialisieren Sie den Arbeitsbereich zuletzt und führen Sie die Datei aus, um Änderungen vorzunehmen.