¿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?
- 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).
- Asigna los policies Amazon S3 Full Access.
- Dale un nombre al rol.
- Crea una nueva instancia asociando el role que acabas de crear a esta instancia.
- Expande la tab descriptions para ver las propiedades de la instancia, y enseguida del rol para revisar los policies.
- 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.
- Accede a la instancia utilizando SSH.
- 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.
- Ingresa a aws configure y especifica únicamente la región.
- Lista el directorio de aws ls ~/.aws, no debe existir el archivo credentials dentro de el, ya que no son necesarias.
- 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.