Terraform S3 Bucket Policy

Terraform S3 Bucket Policy
Terraform est un outil (IAC) pour DevOps car ils préfèrent utiliser une interface de ligne de commande au lieu de GUI pour gérer et créer des ressources cloud. De nombreux fournisseurs de cloud sont des partenaires de Terraform, et AWS en fait partie. Terraform peut vous aider à créer un seau S3 (service de stockage cloud), ainsi que sa configuration et sa stratégie, de manière efficace. En créant une stratégie S3 Bucket, vous pouvez définir des autorisations pour accéder à vos objets S3 Bucket et assurer la sécurité et le chiffrement.

Ce message fournira un guide de procédure pour créer une politique de seau S3 à l'aide de Terraform.

Préalable: installation de CLI AWS et Terraform

Téléchargez et installez le CLI AWS et Terraform dans votre système. Après l'achèvement de l'installation, vérifiez s'ils sont installés avec succès ou non, donc pour AWS, tapez cette commande:

AWS - Version

Il est visible que l'AWS soit installé avec succès dans votre système.

Pour Terraform Type:

Terraform - Version

Dans la sortie ci-dessus, il est visible que Terraform soit installé avec succès dans votre système.

L'étape suivante consiste à configurer votre compte AWS à l'aide de la commande suivante et en fournissant les détails requis:

AWS Configure


Remarque: pour apprendre à configurer AWS CLI, Lire ici!
Vous êtes prêt à coder pour créer et gérer vos ressources et services AWS Cloud à l'aide de Terraform.

Créer une stratégie S3 Bucket à l'aide de Terraform

Pour créer un fichier Terraform, créons d'abord un répertoire dans lequel vous travaillerez en tapant:

mkdir terraform_s3_policy

Ouvrez le répertoire avec n'importe quel éditeur de code:

Créer un fichier Terraform nommé "principal.TF«Pour stocker le code:

Fournissez ce code pour déclarer que le fournisseur AWS est utilisé:

Terraform
requis_providers
aws =
source = "hashicorp / aws"
version = "~> 4.0 "


Écrivez le code pour mentionner la région du fournisseur, dans laquelle des ressources seront créées:

fournisseur "aws"
région = "US-East-1"

Code pour la création du seau S3 pour lequel vous créerez une politique plus tard dans cet article:

ressource "aws_s3_bucket" "LinuxHintBucket"
Bucket = "LinuxHintBucket"
tags =
Name = "mon seau"
Environnement = "dev"

Déclarons si les objets de seau seront accessibles au public ou non, en le plaçant sur «vrai"Signifie, ce ne sera pas public:

Ressource "aws_s3_bucket_public_access_block" "LinuxHintBucket"
seau = aws_s3_bucket.Linuxhintbucket.seau
block_public_acls = true
block_public_policy = true

L'étape suivante consiste à faire la configuration du cryptage côté serveur à l'aide d'AWS Services de gestion clés, par codage:

ressource "aws_s3_bucket_server_side_encryption_configuration" "LinuxHintBucket"
seau = aws_s3_bucket.Linuxhintbucket.seau
règle
applicable_server_side_encryption_by_default
sse_algorithm = "aws: kms"


Effectuez la configuration du cycle de vie S3, pour définir des règles avec des actions prédéfinies pour que S3 se comporte sur des objets pendant une vie, type:

Ressource "aws_s3_bucket_lifecycle_configuration" "LinuxHintBucket"
seau = aws_s3_bucket.Linuxhintbucket.identifiant

Définissez les règles en fonction de votre préférence, pour ce post "règle 1" est pour "bûches”De seau S3:

règle
id = "règle-1"
filtre
et
prefix = "logs /"
tags =
Key1 = "value1"
Key2 = "value2"



status = "activé"
Expiration
jours = 7

Définissons une autre règle pour «TMP», En utilisant ce morceau de code:

règle
id = "règle-2"
filtre
prefix = "tmp /"

status = "activé"
Expiration
jours = 7

Configurons les mesures de seau:

ressource "aws_s3_bucket_metric" "activer-metrrics-bucket"
Bucket = "LinuxHintBucket"
name = "WholeBucket"

Après avoir tapé ce code, pour créer une stratégie S3 Bucket et enregistrer le fichier.

Pour initialiser l'espace de travail, tapez cette commande dans le terminal. Le terminal peut être de l'éditeur de code ou de l'invite de commande dans ce répertoire:

Terraform init

Sur l'initialisation réussie de l'espace de travail, tapez cette commande pour voir ce qui va créer ou changer:

plan de terre

Tapez cette commande pour exécuter le fichier:

Terraform s'applique

Taper "Oui«Lorsqu'un message pour la continuité apparaît:

Un message de réussite est affiché, informant que 5 ressources sont ajoutées avec succès.

Confirmer la création de la politique S3 Bucket

Pour confirmer que les ressources sont ajoutées avec succès au compte AWS, dans la console de gestion Amazon, recherchez et ouvrez le tableau de bord du seau. Dans le tableau de bord, vous pourrez voir le seau S3 que vous avez créé à l'aide du fichier Terraform:

Il est visible que le seau S3 soit créé avec succès.

L'étape suivante consiste à ouvrir le seau S3 et à sélectionner le «Gestion«Onglet, ici vous pourrez voir le Cycle de vie règles qui ont été créés à l'aide du fichier terraform:

Ce qui signifie que vous avez réussi à créer le seau S3 avec la politique S3 Bucket en utilisant la terraform.

Conclusion

Pour créer un seau S3 dans AWS à l'aide de Terraform, assurez-vous que Terraform et AWS CL sont installés dans votre système. Configurez le CLI AWS et créez un répertoire pour enregistrer le fichier Terraform. Dans le fichier Terraform, le code pour fournir les détails de la région AWS du fournisseur, la création du seau S3 et la création de stratégie en configurant son accès public, son chiffrement, ses règles de cycle de vie et ses mesures. Enfin, initialisez l'espace de travail et exécutez le fichier pour apporter des modifications.