Usando roles con EC2 en AWS

Usando roles con EC2 en AWS

¿Qué son los roles en AWS?

Los roles permiten hacer uso del aws-cli sin tener que guardar las credenciales dentro del archivo .aws/credentials, es decir que nos proporciona un nivel de seguridad mayor ya que las credenciales que utilizamos no quedan expuestas.

¿Cuáles son los pasos para utilizar roles dentro de EC2?

  1. Ir a IAM y crear un nuevo AWS Service Role del tipo EC2.
Los tipos de roles existentes son:

AWS Service Role (servicios que requieren un rol).

AWS Linked Role (Lex).
Role Identity Provider Access (cognito, amazon, facebook, etc).
  1. Asigna los policies Amazon S3 Full Access.
  2. Dale un nombre al rol.
  3. Crea una nueva instancia asociando el role que acabas de crear a esta instancia.
  4. Expande la tab descriptions para ver las propiedades de la instancia, y enseguida del rol para revisar los policies.
  5. Expande la opción Actions / Settings, dentro de esta encontraras la opción Attach/Replace.

Ahora aws permite realizar esta operación de adjuntar o reemplazar un rol en ejecución, antes esto no era posible.

  1. Accede a la instancia utilizando SSH.
  2. Ingresa aws s3 ls para ver el listado de buckets.

Cuando se asigna un rol a una instancia, no es necesario utilizar las credenciales del usuario.

  1. Ingresa a aws configure y especifica únicamente la región.
  2. Lista el directorio de aws ls ~/.aws, no debe existir el archivo credentials dentro de el, ya que no son necesarias.
  3. Ahora intenta ver las propiedades de las instancias ec2 aws ec2 describe-instances.

Como solo asignamos policies para S3, el usuario no tiene permisos para realizar operaciones sobre las instancias de EC2.