Agregar grupos a un grupo de usuarios - Amazon Cognito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Agregar grupos a un grupo de usuarios

Gracias a la compatibilidad entre los grupos y los grupos de usuarios de Amazon Cognito, se pueden crear y administrar grupos y agregar o eliminar usuarios de grupos. Utilice los grupos para crear recopilaciones de usuarios para administrar sus permisos o representar diferentes tipos de usuarios. Puede asignar una función AWS Identity and Access Management (de IAM) a un grupo para definir los permisos de los miembros de un grupo.

Puede usar grupos para crear un conjunto de usuarios dentro de un grupo de usuarios, cosa que suele hacerse a menudo para establecer los permisos para dichos usuarios. Por ejemplo, puede crear grupos diferentes para los usuarios que son lectores, colaboradores o editores de su sitio web y su aplicación. Con el rol de IAM asociado a un grupo, también puede configurar diferentes permisos para esos grupos distintos con el fin de que solo los colaboradores puedan ingresar contenido en Amazon S3 y que solo los editores puedan publicar contenido mediante una API en Amazon API Gateway.

Puede crear y administrar grupos en un grupo de usuarios desde las AWS Management Console API y la CLI. Como desarrollador (con AWS credenciales), puede crear, leer, actualizar, eliminar y enumerar los grupos de un grupo de usuarios. También puede añadir usuarios y eliminarlos de los grupos.

No se aplica ningún cargo adicional por usar grupos dentro de un grupo de usuarios. Para obtener más información, consulte Precios de Amazon Cognito.

Asignación de roles de IAM a grupos

Puede utilizar grupos para controlar los permisos de los recursos mediante un rol de IAM. Los roles de IAM incluyen políticas de confianza y políticas de permisos. La política de confianza del rol especifica quién puede usar el rol. Las políticas de permisos especifican las acciones y los recursos a los que los miembros del grupo pueden tener acceso. Al crear un rol de IAM, configure la política de confianza del rol para permitir que los usuarios del grupo asuman el rol. En las políticas de permisos del rol, especifique los permisos que desea que tenga el grupo.

Cuando se crea un grupo en Amazon Cognito, se especifica un rol de IAM proporcionando el ARN del rol. Cuando los miembros del grupo inician sesión con Amazon Cognito, pueden recibir credenciales temporales de los grupos de identidades. Sus permisos están determinados por el rol de IAM asociado.

Los usuarios individuales pueden pertenecer a varios grupos. En su calidad de desarrollador, tiene a disposición las opciones siguientes para elegir de forma automática el rol de IAM cuando un usuario pertenece a varios grupos:

  • Puede asignar valores de prioridad a cada grupo. Se elegirá el grupo que tenga la mejor prioridad (inferior) y se aplicará el rol de IAM que tenga asociado.

  • La aplicación también puede elegir entre las funciones disponibles al solicitar AWS credenciales para un usuario a través de un grupo de identidades, especificando un ARN de función en el GetCredentialsForIdentityCustomRoleARNparámetro. El rol de IAM especificado debe coincidir con un rol que esté disponible para el usuario.

Asignación de valores de prioridad a los grupos

Un usuario puede pertenecer a más de un grupo. En los tokens de ID y acceso del usuario, la reclamación cognito:groups contiene la lista de todos los grupos a los que pertenece el usuario. La notificación cognito:roles contiene la lista de los roles correspondientes a los grupos.

Dado que un usuario puede pertenecer a más de un grupo, se puede asignar a cada grupo un nivel de prioridad. Se trata de un número que no es negativo y que indica la prioridad del grupo en relación con los demás grupos a los que el usuario pertenece en el grupo de usuarios. Cero es la máxima prioridad. Los grupos con los valores de prioridad más bajos prevalecen sobre los grupos con los valores de prioridad más altos o nulos. Si un usuario pertenece a dos o más grupos, se aplica el rol de IAM del grupo con el valor de prioridad más bajo a la reclamación cognito:preferred_role del token de ID de usuario.

Dos grupos pueden tener la misma prioridad. Si esto ocurre, ningún grupo prevalece sobre el otro. Si dos grupos con el mismo valor de prioridad tienen el mismo ARN de rol, ese rol se utiliza en la notificación cognito:preferred_role en tokens de ID para los usuarios de cada grupo. Si los dos grupos tienen ARN de roles diferentes, la notificación cognito:preferred_role no se establece en los tokens de ID de los usuarios.

Uso de grupos para controlar el permiso con Amazon API Gateway

Puede utilizar los grupos de un grupo de usuarios para controlar los permisos con Amazon API Gateway. Los grupos a los que pertenece un usuario están incluidos en el token de ID y el token de acceso de un grupo de usuarios en la reclamación cognito:groups. Puede enviar tokens de ID o de acceso con solicitudes a Amazon API Gateway y utilizar un autorizador de grupos de usuarios de Amazon Cognito para una API REST. Para obtener más información, consulte Control del acceso a una API de REST con grupos de usuarios de Amazon Cognito como autorizador en la Guía para desarrolladores de API Gateway.

También puede autorizar el acceso a una API HTTP de Amazon API Gateway con un autorizador JWT personalizado. Para obtener más información, consulte Control del acceso a las API HTTP con autorizadores de JWT en la Guía para desarrolladores de API Gateway.

Limitaciones aplicadas a los grupos

Los grupos de usuarios están sujetos a las siguientes limitaciones:

  • El número de grupos que puede crear está limitado por las cuotas de servicio de Amazon Cognito.

  • Los grupos no pueden estar anidados.

  • No puede buscar usuarios en un grupo.

  • No se pueden buscar los grupos por nombre, aunque sí puede obtener una lista de ellos.

Creación de un grupo nuevo en la AWS Management Console

Utilice el siguiente procedimiento para crear un grupo nuevo.

Para crear un grupo nuevo
  1. Vaya a la consola de Amazon Cognito. Si se le solicita, introduzca sus AWS credenciales.

  2. Elija User Pools (Grupos de usuarios).

  3. Elija en la lista un grupo de usuarios existente.

  4. Elija la pestaña Groups (Grupos) y, a continuación, elija Create group (Crear un grupo).

  5. En la página Create a group (Crear un grupo), en Group name (Nombre del grupo), escriba un nombre sencillo para el grupo nuevo.

  6. Opcionalmente, puede incluir información adicional sobre este grupo en cualquiera de los siguientes campos:

    • Description (Descripción): Introduzca detalles sobre para qué se utilizará este nuevo grupo.

    • Precedence (Prioridad): Amazon Cognito evalúa y aplica todos los permisos de grupo para un usuario determinado en función de a qué grupo de aquellos a los que pertenece tiene un valor de prioridad inferior. Se elegirá el grupo que tenga la prioridad más baja y se aplicará el rol de IAM que tenga asociado. Para obtener más información, consulte Asignación de valores de prioridad a los grupos.

    • IAM role (Rol de IAM): Puede asignar un rol de IAM a su grupo cuando necesite controlar los permisos de los recursos. Si va a integrar un grupo de usuarios en un grupo de identidades, el ajuste IAM role (Rol de IAM) determina qué rol se asigna en el token de ID del usuario si el grupo de identidades está configurado para elegir el rol a partir del token. Para obtener más información, consulte Asignación de roles de IAM a grupos.

    • Add users to this group (Añadir usuarios a este grupo): Agregue usuarios existentes como miembros de este grupo después de crearlo.

  7. Elija Create (Crear) para confirmar.