informatica:programacion:api
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| informatica:programacion:api [2022/04/16 12:10] – [OAuth] tempwin | informatica:programacion:api [2022/04/16 13:09] (actual) – [OAuth] tempwin | ||
|---|---|---|---|
| Línea 11: | Línea 11: | ||
| Acceso limitado a ciertos recursos mediante autorización. | Acceso limitado a ciertos recursos mediante autorización. | ||
| - | OAuth viene de Other Authorization, | + | OAuth viene de **Open |
| En resumen: | En resumen: | ||
| Línea 28: | Línea 28: | ||
| * **Cliente** / **Aplicación** (//third party//): quien accede a los recursos | * **Cliente** / **Aplicación** (//third party//): quien accede a los recursos | ||
| * **Authorization Server**: provee el token de acceso al cliente/ | * **Authorization Server**: provee el token de acceso al cliente/ | ||
| + | |||
| + | Flujo del protocolo OAuth: | ||
| + | |||
| + | - El cliente hace una petición de autorización al Resource Owner | ||
| + | - El Resource Owner responde con una permiso de acceso (// | ||
| + | - El cliente envía el permiso obtenido al Authorization Server que es responsable de proteger los recursos del Resource Owner | ||
| + | - El Authorization Server envía al cliente el token de acceso. | ||
| + | - El cliente usa el token de acceso con el Resource Server para obtener los recursos protegidos. | ||
| + | - El Resource Server envía los recursos solicitados por el cliente y a los que tiene autorización. | ||
| + | |||
| + | < | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | Client | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | Tipos de autorizaciones (// | ||
| + | |||
| + | * **Authorization code**: el cliente pide autorización al propietario del recursos a través del Authorization Server. El propietario del recursos tiene que acceder al Authorization Server para darle permisos. | ||
| + | * **Implicit**: | ||
| + | * **Resource Owner**: permisos totales sobre los recursos. | ||
| + | * **Client credencials**: | ||
| + | |||
| + | El más utilizado es el de **Authorization Code**. | ||
| + | |||
| + | Un **token de acceso** (//access token//) se usa para poder acceder a un recurso protegido. | ||
| + | |||
| + | El **refresh token** es lo que se utiliza para conseguir un nuevo token de acceso. Se utiliza cuando el token de acceso tiene un tiempo de vida limitado. | ||
| + | |||
| + | === Authorization Code Grant === | ||
| + | |||
| + | Antes de comenzar el flujo del protocolo, el cliente debe haber conseguir del Authentication Server un **Client ID**. | ||
| + | |||
| + | El cliente / aplicación hace una petición HTTP al // | ||
| + | |||
| + | El cliente envía el código de autorización al Authorization Server y este le devuelve el **access token**. | ||
| + | |||
| + | === Registro de clientes === | ||
| + | |||
| + | El cliente hace una solicitud HTTP al Authorization Server y este le devuelve: | ||
| + | |||
| + | * Client ID | ||
| + | * Client Secret (cuando el tipo de cliente es confidencial) | ||
| ===== APIs públicas ===== | ===== APIs públicas ===== | ||
| * [[https:// | * [[https:// | ||
informatica/programacion/api.1650103807.txt.gz · Última modificación: por tempwin
