Buen dia,
Hoy les quiero compartir como poder acceder a multiples cuentas de amazon desde 1 sola creando un swicht_role y a la vez otorgar permisos especificos a un grupo de usuarios.
La idea de este post es poder separar tus cuentas por ambiente , este es un ejemplo de como poder tener multiples cuentas separadas por ejemplo una cuenta por cada ambiente o simplemente diferentes cuentas:
#Atencion: El link que vamos a generar el usuario lo tiene que guardar cuando se lo pasemos porque la configuracion se guarda en una cookie y si borra el historial pierde el acceso, pero se soluciona volviendo a ingresar al LINK.
Example1 – Seperando Cuentas por ambientes:
Example2 – Tener acceso a diferentes cuentas desde una sola esto nos evitara loguearnos en todas las cuentas:
Si tu deseo es lograr algo asi este es tu post 🙂 Manos a la obra.
OBJETIVO PRINCIAL : Lograr acceso para un grupo de usuarios del account ITSHELL al account ITSHELLWS.
Abrimos la cuenta ‘ITSHELLWS’ que es la que vamos a compartir:
Lo primero que vamos a realizar es crear un nuevo rol lo voy a llamar ‘developers-itshell’.
Voy a seleccionar el acceso que le voy a otorgar a la cuenta en mi caso quiero acceso limitado:
Creamos el ROL , yo en mi caso le puse una descripcion para diferenciarlo:
Ingresamos al role creado ‘developers-itshell’ y lo vamos a editar clickeando en Edit trust relationship.
#ATENCION: Vamos a copiar el ROLE ARN en un editor de texto porque lo vamos a necesitar mas adelante.
Dentro de edit trust vamos escribir el siguiento codigo cambiando el account ID por el de la cuenta que va a poder acceder a este ambiente.
#NOTA: Cuando hablo de cuentas me refiero a la cuenta principal ya que con acceso a 1 vamos a crear un grupo que comparte acceso a usuarios de esa misma root account.
Example otorgando acceso a una sola root acount.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::412865213072:root" ] }, "Action": "sts:AssumeRole" } ] }
Example otorgando acceso a varias cuentas root account .
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::412865213072:root", "arn:aws:iam::623123453434:root", "arn:aws:iam::323123992183:root" ] }, "Action": "sts:AssumeRole" } ]
El resultado final seria algo asi y guardamos :
Ahora vamos a ingresar en la cuenta que vamos a dar acceso a nuestro grupo de desarrolladores.
Logueamos en ‘ITSHELL’:
Primero vamos a crear una nueva politica llamada ‘policy_acces_to_itshellws’ con el siguiente codigo y luego le vamos agregar una descripcion para saber q funcion cumple.
CODEÂ Politica: policy_access_to_itshellws
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Resource": [ "arn:aws:iam::881653854182:role/developers-itshell" ] } ] }
Luego de crear la politica vamos a crear un grupo llamado ‘developers-to-itshellws.org’ y le vamos attachar la politica creada en el paso anterior.
Ya con el grupo creado podemos deberiamos ver algo asi:
Ahora voy a crear un usuario al cual le voy a dar acceso al grupo creado anteriormente.
Ya con el usuario creado y el acceso otorgado en el grupo deberiamos tener algo asi:
Cerramos la cuenta admin de itshell y logueamos como el usuario good_developer creado anteriormente:
Ingresamos en la cuenta creada y en el ambiente ‘itshell’ no tiene acceso a nada ya que no le dimos permisos.
Ahora nos logueamos en ITSHELLWS y buscamos el rol que creamos al principio ( Si los hice volver al principio, pero no va a ser en vano porque vamos a copiar el Link.
Volvemos al navegador donde teniamos logueada la cuenta de good_developer y accedemos al Link.
Nos va a mostrar algo asi donde podemos editar el nombre,color ,etc . Pero vamos a dejarlo default y click a cambiar funcion.Â
Y listo ya tendriamos acceso a la otra account root que tenia el otro ambiente con acceso limitado al permiso que seleccionamos en mi caso era ‘Ec2ReadOnlyAccess’.
Ingresamos a EC2 y podemos ver las instancias! Eso significa que funciono.
Intentamos de ingresar a s3 y Access Denied. NICE!!
Por ultimo vamos a añadir al chrome una extension para poder editar los nombres y colores de nuestros swicht_accounts.
Click en la extension instalada y editamos el Account , Display Name y el color a gusto, donde dice role no tenemos que tocar nada!
Listo ya tenemos nuestro multiaccount – con acceso limitado. (uno puede otorgar el acceso que quiera y añadir mas usuarios al grupo)
Para darle acceso a otro usuario tenemos q añadirlo al grupo y luego pasarle el link donde configuramos la funcion swicht_account.
ENJOY!!
Recent Comments