🥇 Autorización

El proceso de especificar exactamente que acciones un principal puede o no realizar es llamado autorization (autorización). Este es manejado en IAM definiendo privilegios específicos y politicas, y asociando estas politicas con los principals.

🍿 ¿Qué son las Policies?

Una policy es un documento JSON que define un grupo de permisos para accesar y manipular recursos de AWS. Los policy documents contienen una o mas permisos, y cada permiso define.

arn:sws:service:region:account-id:[resource-type:]resource

Para algunos servicios, el asterisco es permitido; por ejemplo para S3 puede tener un resource nombreDelDirectorio* para indicar que todos los objetos que se encuentran en el folder.

🥤 Ejemplos de tipos de ARN

Bucket de S3
arn:aws:s3:us-east-1:123456789012:my_corporate_bucket/*
IAM User
arn:aws:iam:us-east-1:123456789012:user/David
Tabla en DynamoDB
arn:aws:dynamodb:us-east-1:123456789012:table/tablename

🥤 Action (Accion)

Específica el subgrupo de acciones dentro del servicio a las cuales se otorga o niega permiso. Por ejemplo, un permiso puede ser concedido a cualquier accion de lectura para S3. Un grupo de acciones puede ser asignado utilizando un wildcard () por ejemplo (Read).

🥤 Condition (Condición)

Define uno o mas restricciones adicionales que limitan las acciones permitidas por el permiso. Por ejemplo, el permiso puede contener una condición que limite la habilidad de accesar a un recurso desde llamadas que vengan desde un rango de IPs, un intervalo de tiempo, u otras condiciones que varian de acuerdo a los servicios.

🍿 ¿Cómo asociar policies con principals?

Una policy puede ser asociada con un usuario de IAM de dos diferentes formas.

User Policy.
Existen unicamente en el contexto del usuario al cual se asocian. En la consola, una policy de usuario es ingresada desde la interface de usuario en la pagina del usuario.
Managed Policies.

Son creadas en la tab de policies, en la pagina de IAM, o mediante CLI, y existen idependientemente de cualquier usuario. Esta policy puede ser asociado con muchos usuarios o grupos de usuarios. Existen muchas de estas y tambien se pueden crear nuevas.

Utilizar managed policies asegura que cuando aparezcan nuevos permisos para nuevas características o funcionalidades, los usuarios seguirán manteniendo acceso correcto.

El otro método de asociacion de policies con usarios es a mediante los grupos. Los grupos simplifican el manejo de permisos para largos numeros de usuarios. Cuando una policy es asignada a un grupo, cualquier usuario que es un miembro de ese grupo asume esos permisos. Esto hace mas sencillo el asignar policies a un grupo completo en su organización.

Esta es una forma mas sencilla de manejar los procesos asociados a las policies, y de no tener que estar añadiendo manualmente estas policias a cada usuario.

🍿 ¿Cuáles son las formas en las que un policy puede ser asociado a un grupo?

Group Policy (Politica de grupo).
Estas policies existen únicamente en el contexto del grupo al cual estan asociadas.
Managed Policies (Politicas Administradas)
En la misma forma que las policies manejadas pueden ser asociadas con los usuarios pueden serlo con los grupos.

Como recomendación utilice la cuenta del root para crear un grupo llamado Administradores, y asignar la managed policy “IAMFullAcces”. Después cree un nuevo usuario llamado Administrador, asignele un password y añádale al grupo Administradores. En este punto, puede terminar la sesión del root y realizar las actividades futuras como administrador.

Roles
La última forma en que un actor puede asociarse a una policy es mediante un role. En este caso el actor puede.

Después de que el usuario asumio el role, un token temporal es asignado y asociado con las policies del role. El token contiene información requerida para hacer llamadas a la API. Este token contiene el standard key ademas de un token adicional de sesion requerido para realizar llamadas con privilegios del role.

Autenticación (Authentication) Otras funcionalidades de IAM
comments powered by Disqus