Política de cubo Terraform S3

Política de cubo Terraform S3
Terraform es una herramienta (IAC) para DevOps, ya que prefieren usar una interfaz de línea de comandos en lugar de GUI para administrar y crear recursos en la nube. Muchos proveedores de la nube son socios de Terraform, y AWS es uno de ellos. Terraform puede ayudarlo a crear S3 Bucket (Servicio de almacenamiento en la nube), junto con su configuración y política, de manera eficiente. Al crear una política de cubo S3, puede establecer permisos para acceder a sus objetos de cubo S3 y garantizar la seguridad y el cifrado.

Esta publicación proporcionará una guía de procedimiento para crear una política de cubo S3 utilizando Terraform.

Prerrequisito: Instalación de AWS CLI y Terraform

Descargue e instale el AWS CLI y Terraform en su sistema. Después de la finalización de la instalación, verifique si están instalados correctamente o no, por lo que para AWS escriba este comando:

AWS -Versión

Es visible que el AWS se instale con éxito en su sistema.

Para el tipo de terraform:

Terraform -Versión

En la salida anterior, es visible que Terraform se instale con éxito en su sistema.

El siguiente paso es configurar su cuenta AWS utilizando el siguiente comando y proporcionando los detalles requeridos:

AWS Configurar


Nota: Aprender a configurar AWS CLI, Leer aquí!
Está listo para codificar para crear y administrar sus recursos y servicios de la nube de AWS utilizando Terraform.

Crear política de cubo S3 usando Terraform

Para crear un archivo Terraform, primero creemos un directorio en el que trabajará escribiendo:

mkdir terraform_s3_policy

Abra el directorio con cualquier editor de código:

Cree un archivo Terraform llamado "principal.TF"Para almacenar el código:

Proporcione este código para declarar que se está utilizando el proveedor de AWS:

Terraform
requerido_providers
AWS =
fuente = "Hashicorp/AWS"
versión = "~> 4.0 "


Escriba el código para mencionar la región del proveedor, en la que se crearán los recursos:

Proveedor "AWS"
región = "US-East-1"

Código para la creación de S3 Bucket para el que creará una política más adelante en esta publicación:

Recurso "AWS_S3_Bucket" "Linuxhintbucket"
bucket = "Linuxhintbucket"
etiquetas =
Nombre = "mi cubo"
Ambiente = "dev"

Declaremos si los objetos de cubos serán accesibles públicamente o no, al establecerlo en "verdadero"Significa que no será público:

recurso "AWS_S3_BUCKET_Public_Access_Block" "LinuxHintBucket"
cubo = aws_s3_bucket.Linuxhintbucket.balde
block_public_acls = verdadero
block_public_policy = verdadero

El siguiente paso es hacer la configuración para el cifrado del lado del servidor usando AWS Servicios de gestión clave, por codificación:

recursos "AWS_S3_BUCKET_SERVER_SIDE_ENCRYPTION_CONFIGURATION" "Linuxhintbucket"
cubo = aws_s3_bucket.Linuxhintbucket.balde
regla
Aplicar_server_side_encryption_by_default
sse_algorithm = "AWS: KMS"


Haga la configuración del ciclo de vida S3, para establecer reglas con acciones predefinidas para que el cubo S3 funcione en objetos durante toda la vida, tipo:

Recurso "AWS_S3_Bucket_Lifecycle_Configuration" "LinuxHintBucket"
cubo = aws_s3_bucket.Linuxhintbucket.identificación

Establezca reglas de acuerdo con su preferencia, para esta publicación "regla 1" es para "registro"De S3 Bucket:

regla
id = "regla-1"
filtro
y
prefijo = "Logs/"
etiquetas =
Key1 = "valor1"
Key2 = "value2"



status = "habilitado"
vencimiento
días = 7

Definamos otra regla para "TMP", Usando este código:

regla
id = "regla-2"
filtro
prefijo = "tmp/"

status = "habilitado"
vencimiento
días = 7

Configuremos las métricas de cubos:

recursos "AWS_S3_BUCKET_METRIC" "Enable-Metrics-Bucket"
bucket = "Linuxhintbucket"
name = "WholeBucket"

Después de escribir este código, para crear una política de cubo S3 y guardar el archivo.

Para inicializar el espacio de trabajo, escriba este comando en el terminal. El terminal puede ser del editor de código o del símbolo del sistema en este directorio:

Terraform init

En la inicialización exitosa del espacio de trabajo, escriba este comando para ver qué va a crear o cambiar:

plan de terraformación

Escriba este comando para ejecutar el archivo:

Terraform aplicar

Tipo ""Cuando aparece un mensaje para la continuidad:

Se muestra un mensaje de éxito, informando que 5 recursos se agregan con éxito.

Confirme la creación de la política de cubo S3

Para confirmar que los recursos se agregan con éxito a la cuenta de AWS, en la consola de administración de Amazon, la búsqueda y abrir el tablero del cubo. En el tablero, podrá ver el cubo S3 que creó usando el archivo Terraform:

Es visible que el cubo S3 se cree con éxito.

El siguiente paso es abrir el cubo S3 y seleccionar el "Gestión"Tab, aquí podrá ver el Ciclo vital normas que fueron creados usando el archivo Terraform:

Lo que significa que ha creado con éxito el cubo S3 junto con la política de cubo S3 utilizando el Terraform.

Conclusión

Para crear un cubo S3 en AWS usando Terraform, asegúrese de que Terraform y AWS CL estén instalados en su sistema. Configure la AWS CLI y cree un directorio, para guardar el archivo Terraform. En el archivo de TerraForm, el código para proporcionar detalles de la región de AWS del proveedor, la creación de S3 Bucket y la creación de políticas al configurar su acceso público, cifrado, reglas de ciclo de vida y métricas. Por último, inicialice el espacio de trabajo y ejecute el archivo para hacer cambios.