Control del acceso a una API de REST con grupos de usuarios de Amazon Cognito como autorizador - Amazon API Gateway

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.

Control del acceso a una API de REST con grupos de usuarios de Amazon Cognito como autorizador

Además de utilizar roles y políticas de IAM o autorizadores de Lambda (que anteriormente se denominaban autorizadores personalizados), también puede utilizar un grupo de usuarios de Amazon Cognito para controlar quién puede tener acceso a la API en Amazon API Gateway.

Para utilizar un grupo de usuarios de Amazon Cognito con la API, primero debe crear un autorizador del tipo COGNITO_USER_POOLS y configurar después un método de API para que utilice ese autorizador. Una vez implementada la API, lo primero que debe hacer el cliente es registrar al usuario en el grupo de usuarios, obtener un token de acceso o identidad para el usuario y llamar al método de API con uno de los tokens, que normalmente están establecidos en el encabezado Authorization de la solicitud. La llamada a la API solo tendrá éxito si se suministra el token solicitado y este es válido; de lo contrario, el cliente no tendrá autorización para hacer la llamada, ya que carecerá de las credenciales que permitirían autorizarlo.

El token de identidad se utiliza para autorizar las llamadas a la API en función de las solicitudes de identidad del usuario conectado. El token de acceso se utiliza para autorizar las llamadas a la API en función de los ámbitos personalizados de los recursos con protección de acceso especificados. Para obtener más información, consulte Uso de tokens con grupos de usuarios y Servidor de recursos y ámbitos personalizados.

Si desea crear y configurar un grupo de usuarios de Amazon Cognito para la API, debe realizar las siguientes tareas:

  • Utilice la API, la CLI, el SDK o la consola de Amazon Cognito para crear un grupo de usuarios; también puede utilizar un grupo de usuarios de otra cuenta de AWS.

  • Utilice la API, la CLI, el SDK o la consola de API Gateway para crear un autorizador de API Gateway con el grupo de usuarios elegido.

  • Utilice la API, la CLI, el SDK o la consola de API Gateway para habilitar el autorizador de los métodos de API seleccionados.

Para llamar a los métodos de API con un grupo de usuarios habilitado, los clientes de la API tienen que realizar las siguientes tareas:

  • Utilice la API, la CLI o el SDK de Amazon Cognito para registrar el usuario en el grupo de usuarios elegido y obtener un token de identidad o acceso. Para obtener más información sobre el uso de los SDK, consulte Ejemplos de código de Amazon Cognito con AWS SDK.

  • Utilice una plataforma específica del cliente para llamar a la API de API Gateway implementada y proporcione el token apropiado en el encabezado Authorization.

Como desarrollador de la API, debe proporcionar a los desarrolladores del cliente el ID del grupo de usuarios, el ID del cliente y, probablemente, los secretos del cliente asociados que se hayan definido con el grupo de usuarios.

nota

Si desea permitir que un usuario inicie sesión con las credenciales de Amazon Cognito y pueda obtener también unas credenciales temporales para utilizarlas con los permisos de un rol de IAM, utilice las identidades federadas de Amazon Cognito. Para cada método HTTP de punto de enlace de recurso de API, establezca el tipo de autorización, categoría Method Execution, en AWS_IAM.

En esta sección, se explica cómo crear un grupo de usuarios, cómo integrar una API de API Gateway con el grupo de usuarios y cómo invocar una API que está integrada con el grupo de usuarios.