Concesiones de OAuth 2.0 - 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.

Concesiones de OAuth 2.0

El servidor de autorización de OAuth 2.0 del grupo de usuarios de Amazon Cognito emite tokens en respuesta a tres tipos de concesiones de autorización de OAuth 2.0. Puede configurar los tipos de concesión admitidos para cada cliente de aplicaciones del grupo de usuarios. No puede habilitar concesiones de credenciales de cliente en el mismo cliente de la aplicación que cualquiera de las concesiones de códigos implícitos o de autorización. Las solicitudes de concesiones de códigos implícitos y de autorización comienzan en Autorizar punto de conexión y las solicitudes de concesiones de credenciales de clientes comienzan en Punto de conexión de token.

Concesión de código de autorización

En respuesta a la solicitud de autenticación correcta, el servidor de autorización agrega un código de autorización en un parámetro code a la URL de devolución de llamada. A continuación, debe intercambiar el código para los tokens de ID, acceso y actualización con Punto de conexión de token. Para solicitar la concesión de un código de autorización, establezca response_type en code en la solicitud. Para obtener una solicitud de ejemplo, consulte Concesión de código de autorización.

La concesión del código de autorización es la forma más segura de concesión de autorización. No muestra el contenido del token directamente a los usuarios. En cambio, la aplicación es responsable de recuperar y almacenar de forma segura los tokens de los usuarios. En Amazon Cognito, la concesión de un código de autorización es la única forma de obtener los tres tipos de token (ID, acceso y actualización) del servidor de autorización. También puede obtener los tres tipos de token mediante la autenticación a través de la API de grupos de usuarios de Amazon Cognito, pero la API no emite tokens de acceso con otros ámbitos que aws.cognito.signin.user.admin.

Implicit grant (Concesión implícita)

En respuesta a la solicitud de autenticación correcta, el servidor de autorización agrega un token de acceso a un parámetro access_token y un token de identificación en un parámetro id_token, a la URL de devolución de llamada. Una concesión implícita no requiere ninguna interacción adicional con Punto de conexión de token. Para solicitar una concesión implícita, establezca response_type en token en la solicitud. La concesión implícita solo genera un identificador y un token de acceso. Para obtener una solicitud de ejemplo, consulte Concesión de token sin ámbito openid.

La concesión implícita es una concesión de autorización antigua. A diferencia de lo que ocurre con la concesión del código de autorización, los usuarios pueden interceptar e inspeccionar los tokens. Para evitar la entrega de tokens mediante una concesión implícita, configure el cliente de la aplicación para que solo admita la concesión de códigos de autorización.

Client credentials (Credenciales del cliente)

Las credenciales del cliente son una concesión de acceso únicamente con autorización. machine-to-machine Para recibir una concesión de credenciales de cliente, omita Autorizar punto de conexión y genere una solicitud directamente al Punto de conexión de token. El cliente de la aplicación debe tener un secreto de cliente y admitir solo la concesión de credenciales de cliente. En respuesta a la solicitud correcta, el servidor de autorización devuelve un token de acceso.

El token de acceso de la concesión de credenciales de un cliente es un mecanismo de autorización que contiene los ámbitos de OAuth 2.0. Por lo general, el token contiene notificaciones de alcance personalizadas que autorizan las operaciones HTTP a las API protegidas por el acceso. Para obtener más información, consulte Autorización de alcances, M2M y API con servidores de recursos.

La concesión de credenciales de cliente añade costes a tu factura. AWS Para obtener más información, consulte Precios de Amazon Cognito.

Para obtener más información sobre estas subvenciones y su implementación, consulte Cómo usar OAuth 2.0 en Amazon Cognito: Obtenga información sobre las diferentes subvenciones de OAuth 2.0 en el blog de seguridad.AWS