Introducción a OAuth2

OAuth2 es un marco de autorización que permite a las aplicaciones acceder a recursos proporcionados por otras empresas, como plataformas abiertas de Tencent, Alibaba, Huawei y otras empresas. OAuth2 proporciona un conjunto completo de procesos de autorización para programas web, de escritorio y móviles.

OAuth define 4 roles:

1. El cliente solicita al propietario del recurso que otorgue permisos.

2. El propietario del recurso acepta la autorización y emite la licencia de autorización al cliente.

3. El cliente solicita el token de acceso al servidor de autorización a través de autenticación y licencia de autorización.

4. Después de verificar la identidad del cliente y la validez de la licencia de autorización, el servidor de autorización emite un token de acceso al cliente.

5. El cliente accede a recursos protegidos en el servidor de recursos a través del token de acceso.

6. Después de verificar la validez del token de acceso, el servidor de recursos devuelve el recurso protegido.

El proceso anterior es un proceso de acceso de autorización básico, pero el proceso diferirá según el método de autorización. Los cuatro métodos de autorización de OAuth2 se presentarán a continuación.

OAuth2-*** define 4 modos de autorización y también define un mecanismo para definir modos de autorización adicionales. Aquí presentamos principalmente 4 modos de autorización básicos:

(A) El cliente guía al usuario a la página de autorización a través del agente de usuario

(B) El servidor de autorización verifica la identidad del propietario del recurso y determina el recurso si el propietario concede o deniega la solicitud de acceso del cliente

(C) Si el propietario del recurso permite que el cliente acceda, el servidor de autorización redirigirá al agente de usuario al URI de redirección proporcionado por el cliente al realizar la solicitud y adjunte el código de autorización

(D) El cliente utiliza el código de autorización para solicitar el token de acceso desde el punto final del token del servidor de autorización. La solicitud puede ir acompañada del URI de redirección en (C) (utilizado para verificar si el URI que envió es consistente con el URI registrado por el cliente)

(E) El servidor de autorización verifica la identidad del cliente, código de autorización y URI de redirección. Si la verificación es válida, el servidor de autorización devuelve el token de acceso y el token de actualización (opcional)

(A) El cliente guía al usuario a la página de autorización a través del agente de usuario

( B) El servidor de autorización verifica la identidad del propietario del recurso y determina si el propietario del recurso concede o deniega la solicitud de acceso del cliente

(C) Si el propietario del recurso permite que el cliente acceda, el servidor de autorización guiará el agente de usuario para redirigir al URI de redirección proporcionado cuando el cliente lo solicita y, al mismo tiempo, adjuntar un fragmento de URI.

El fragmento de URI incluye el token de acceso

(D) El agente de usuario redirige solicitando recursos del cliente (los propios recursos del cliente) desde el host virtual (www, FTP, correo electrónico y otros servicios espaciales)

(E) El recurso del cliente del host virtual devuelve una página web que puede acceder al URI de redirección completo y al fragmento de URI que contiene el token de acceso.

(F) El agente de usuario ejecuta el script en la página web para extraer el token de acceso en el fragmento de URI

(G) El agente de usuario envía el token de acceso al cliente

(A) El propietario del recurso proporciona la cuenta y la contraseña al cliente

(B) El cliente solicita al servidor de autorización obtener el token de acceso a través de la cuenta y la contraseña del propietario del recurso

(C ) Después de que el servidor de autorización verifica que la identidad del cliente y la cuenta y contraseña del propietario del recurso son válidas, emite un token de acceso al cliente

(A) El cliente se autentica a través del servidor de autorización y solicita el token de acceso

(B) Después de verificar que la identidad del cliente es válida, el servidor de autorización emite un token de acceso al cliente