Tiempo aproximado para lectura: 00:05:00 min
Duda
Como se implementa el protocolo oAuth2 ?
Ambiente
FRAMEWORK - Framework (Línea Protheus) MI - SOAP REST - Todas las versiones 12
Solución
Después de configurar el entorno y comprender cómo funciona el token de acceso y actualizar el token, es hora de usar el protocolo oAuth2 para validar el acceso a las API.
Para ello, siga los pasos que se describen a continuación:
1.- Solicite un token de acceso solicitando "POST" al punto de enlace: "/tlpp/oauth2/token" enviando los parámetros: grant_type/username/password.
https://localhost:47500/rest/tlpp/oauth2/token?grant_type=password&username=josemaria&password=123456abc
2.- Si todas las configuraciones se han realizado correctamente, la devolución de la solicitud anterior traerá el token de acceso (access_token) que se debe usar para acceder a la API deseada.
Para esto en el momento de la solicitud, el token debe enviarse en el encabezado de la solicitud de la siguiente manera:
Accept: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJUT1RWUy1BRFZQTC1GV0pXVCIsInN1YiI6Im1hcmlvIiwiaWF0IjoxNTUzMDIyMjYwLCJleHAiOjE1NTMwMjU4NjAsInJlc3RyaWN0ZWR0byI6WyJhcGkvcHJvdGhldXMvIiwiYXBpL2ZyYW1ld29yay8iXX0.jgvejFxPYDchLtj04r7mi
Llave
|
Valor
|
Descripción
|
---|---|---|
Aceptar | aplicación/json | Formato de contenido aceptado en la respuesta a la solicitud |
Autorización | Portador eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.... | Token de acceso para obtener permiso para usar la API solicitada |
En el momento de recibir la solicitud, el servidor comprobará la configuración realizada y validará el token enviado.
Si todo es correcto, se accederá a la API solicitada, de lo contrario, el error que se produjo en la validación se devolverá en la respuesta de solicitud.
3.- Si en el elemento anterior la devolución de la solicitud es "token caducado", es hora de usar el Refresh Token. Para ello, se debe realizar una solicitud de tipo "POST" al endpoint: "/tlpp/oauth2/token" enviando los parámetros: refresh_token/grant_type.
4.- Dado que el token de actualización está en buen estado y no ha caducado, la devolución de la solicitud traerá una respuesta idéntica a la del elemento 1, con un nuevo access_token.
Si el token de actualización enviado ha caducado, debe volver a realizar los procedimientos siguiendo los pasos del primer elemento de esta lista para obtener un nuevo token de acceso.
0 Comentarios