AWS Terraform · 4 min read · Feb 11, 2026

Crear un usuario IAM en AWS usando Terraform

En este artículo, veremos cómo crear un usuario IAM. Antes de proceder, asumo que estás familiarizado con los conceptos básicos de Terraform y los usuarios IAM de AWS. Si deseas aprender más sobre los usuarios IAM, haz clic aquí. En este artículo crearemos un usuario y le asignaremos permisos de administrador.

Requisitos previos

  1. Comprensión básica de Terraform.
  2. Terraform está instalado en tu sistema.
  3. Cuenta de AWS (Crea una si no tienes una).
  4. ‘access_key’ y ‘secret_key’ de un usuario IAM de AWS. (Haz clic aquí para aprender a crear un usuario IAM con ‘access_key’ y ‘secret_key’ en AWS, )

Lo que haremos

  1. Escribir archivos de configuración de Terraform para crear un usuario IAM.
  2. Crear un usuario IAM usando los archivos de configuración de Terraform.
  3. Eliminar el usuario IAM creado usando Terraform.

Escribir archivos de configuración de Terraform para el usuario IAM

Crea un directorio dedicado donde puedas crear archivos de configuración de Terraform.

Usa el siguiente comando para crear un directorio y cambiar tu directorio de trabajo actual a él.

*mkdir terraform

  • cd terraform/

Estoy usando “vim” como editor para escribir en archivos, puedes usar un editor de tu elección y copiar y pegar las siguientes configuraciones para crear variables.tf, terraform.tfvars y main.tf.

Crea ‘main.tf’ que es responsable de crear un usuario IAM en AWS. Este main.tf leerá los valores de las variables de variables.tf y terraform.tfvars.

vim main.tf

provider "aws" {
      region     = "${var.region}"
      access_key = "${var.access_key}"
      secret_key = "${var.secret_key}"
}

resource "aws_iam_user" "user" {
  name = var.name
}

resource "aws_iam_user_policy_attachment" "attach-user" {
  user       = "${aws_iam_user.user.name}"
  policy_arn = var.policy_arns
}

Significado de los argumentos utilizados en la configuración anterior:

  • user - El usuario al que se debe aplicar la política
  • policy_arn - El ARN de la política que deseas aplicar

La configuración anterior creará un usuario y le adjuntará una política.

Crea ‘variables.tf’ que contiene la declaración y definición de las variables.

Aquí,

la variable “name” contiene el nombre de usuario IAM que se asignará al que se creará.

La variable “policy_arns” contiene el ARN de la política que necesitamos adjuntar al usuario que crearemos. Aquí he asignado el ARN de la política que proporcionará acceso de administrador al usuario que creamos.

vim variables.tf

variable "access_key" {
     description = "Clave de acceso a la consola de AWS"
}
variable "secret_key" {
     description = "Clave secreta a la consola de AWS"
}
variable "region" {
     description = "Región de AWS VPC"
}
variable "name" {
  default = "myadmin"
  type        = "string"
  description = "El nombre del usuario"
}

variable "policy_arns" {
  default = "arn:aws:iam::aws:policy/AdministratorAccess"
  type        = string
  description = "ARN de la política que se asociará con el usuario IAM creado"
}

Una vez que hayas creado ‘variables.tf’, no olvides cambiar los valores asignados a la variable. Debes cambiar los valores resaltados ya que son específicos de mi entorno. Puedes mantener el resto de las variables como están. Si no deseas asignar acceso de administrador al usuario que estás creando, puedes cambiarlo definiendo el ARN de la política de tu elección.

Crea ‘terraform.tfvars’ que contiene la definición de las variables access_key y secret_key definidas en el archivo anterior. Hemos mantenido la declaración de estas 2 variables en el archivo ‘terraform.tfvars’ junto con ‘region’.

Para crear un usuario IAM no necesitamos específicamente una región particular, solo he mantenido esta variable aquí para que puedas entender esta variable de región y puedas usarla en tus otros archivos de creación de recursos.

Las siguientes claves deben ser cambiadas por las claves de tu usuario IAM utilizadas para crear recursos en AWS. Antes de especificar estas claves, debes crearlas desde la consola de AWS y no compartir estas claves con nadie.

vim terraform.tfvars

region = "eu-west-3"
access_key = "AKIAQ6GAIA5XFLXF6HOV"
secret_key = "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"

Ahora, deberías tener 3 archivos, a saber, variables.tf, terraform.tfvars y main.tf.

Crear un usuario IAM usando los archivos de configuración de Terraform

Antes de ejecutar los siguientes comandos, asegúrate de haber configurado la access_key y secret_key válidas.

El primer comando que se debe usar es ‘terraform init’. Este comando descarga e instala complementos para los proveedores utilizados dentro de la configuración. En nuestro caso, es AWS.

** terraform init

El segundo comando que se debe usar es ‘terraform plan’. Este comando se utiliza para ver los cambios que tendrán lugar en la infraestructura.

terraform plan

El comando ‘terraform apply’ creará los recursos en AWS mencionados en el archivo main.tf. Se te pedirá que proporciones tu entrada para crear los recursos.

terraform apply

Cuando ejecutes el comando anterior, tras una finalización exitosa, podrás ver que se ha agregado 1 nuevo recurso y 0 han sido destruidos.

Puedes ir a la consola de usuarios de AWS bajo Usuarios para verificar si el usuario IAM ha sido creado o no.

Nota: Una vez que crees un usuario, asígnale una contraseña desde la consola de AWS usando el usuario raíz.

Eliminar el usuario IAM creado usando Terraform


Si ya no necesitas los recursos que creaste usando la configuración mencionada en el archivo main.tf, puedes usar el comando “terraform destroy” para eliminar todos esos recursos.

terraform destroy

Conclusión

En este artículo vimos los pasos para crear un usuario IAM con privilegios de administrador. También vimos cómo se puede eliminar el usuario IAM en solo un comando.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.