Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

En este apartado se explica cómo solicitar autorización utilizando el refresh_token, con algunos ejemplos y posibles errores.

  • Qué es un refresh_token?

El refresh_token o token de refresco es un token que le permitirá solicitar autorización para consumir nuestros servicios web sin tener que enviar las credenciales en el mensaje.

Es muy importante guardar este token bajo estrictas normas de seguridad, al igual que las credenciales de acceso.
  • Cómo obtengo uno?

Para obtener un token de refresco debemos solicitar autorización, aquí explicamos cómo hacerlo.

  • Solicitar autorización con refresh_token

La solicitud es muy similar a la realizada en el paso anterior, se envía un POST a la misma URL: https://a.paypertic.com/auth/realms/entidades/protocol/openid-connect/token

El cuerpo del mensaje debe también debe ser de tipo x-www-form-urlencoded y en el mismo deben ir los siguientes campos: grant_type, client_id, client_secret y agreguearemos uno nuevo, refresh_token.

Debemos completar el campo refresh_token con el valor obtenido en el paso previo y cambiar el valor de grant_type por "refresh_token".

Por ejemplo:

curl -X POST \
  https://a.paypertic.com/auth/realms/entidades/protocol/openid-connect/token \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d 'grant_type=refresh_token&client_id=16465308-1844-4abe-abe6-f184149ee740&client_secret=a2d03fa3-f6c4-45e5-9792-dc0d8b51a25c&refresh_token=eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJLdnB0T0R6RXdlQUp4LXZVWDc1NFJWVnFlak51NGwtTXUxUE9UbVB4Q1dBIn0.eyJqdGkiOiI1YzBjNmZiOC01NjMwLTQzZDUtYjBlMC1jNzZhNzA1ZjYxY2YiLCJleHAiOjE1NTg4MjYxMDMsIm5iZiI6MCwiaWF0IjoxNTU4ODIzMTAzLCJpc3MiOiJodHRwczovL2EucGF5cGVydGljLmNvbS9hdXRoL3JlYWxtcy9lbnRpZGFkZXMiLCJhdWQiOiIxNjQ2NTMwOC0xODQ0LTRhYmUtYWJlNi1mMTg0MTQ5ZWU3NDAiLCJzdWIiOiI0MGZlOTFkNi1mNmQ5LTRmOTMtOWZhOC05MGExYmFiMDllNmEiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIxNjQ2NTMwOC0xODQ0LTRhYmUtYWJlNi1mMTg0MTQ5ZWU3NDAiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJlOThlNzYxNC0yMmY5LTRkZWYtYjViNi02ZWE0MTYxNGZlNzQiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbXSwicmVzb3VyY2VfYWNjZXNzIjp7IjE2NDY1MzA4LTE4NDQtNGFiZS1hYmU2LWYxODQxNDllZTc0MCI6eyJyb2xlcyI6WyJjYW5jZWwtc3Vic2NyaXB0aW9uIiwiY3JlYXRlLXN1YnNjcmlwdGlvbiIsImNyZWF0ZS1wYXltZW50IiwidW1hX3Byb3RlY3Rpb24iLCJjYW5jZWwtcGF5bWVudCIsInJldHJ5LXBheW1lbnQiLCJmaWxlLWV4cG9ydCIsImFkbWluaXN0cmF0b3IiLCJyZXF1ZXN0LXJlZnVuZCIsInVwZGF0ZS1wYXltZW50IiwiYXBpLXVzZXIiLCJiYXNlLXVzZXIiLCJ1cGRhdGUtc3Vic2NyaXB0aW9uIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbImFkbWluaXN0cmF0b3IiLCJiYXNlLXVzZXIiLCJ2aWV3LXByb2ZpbGUiXX19LCJzaWduYXR1cmUiOiI5OTkiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJlbnRpZGFkcHJ1ZWJhIiwiZW1haWwiOiJlbnRpZGFkcHJ1ZWJhQHBheXBlcnRpYy5jb20ifQ.CBZt2zsN3hk_I25d81Q1K_cW_-ZJAwdvfUy_f_RhYVrADf9G4RrqHdZ7M-gCWiML6n--5CH9jn2WsBQa9nxb1ySgUwqWCkdybph1F5mZKi0Q6xWNEhIMqqFbV3Qhi1Jyr87xRDn4tlD28vO6xbPASkjbuGdsRucPQMmbG3XrSZQlDPjOZRCqFNUxweDIxbRgpA-qOPIYPtE-OmcU_tMfSLfjtKWbi3z0SGxhqhWDMPjsL_l6PtxTXQgVZgwwSnHF_mDDxIjk_Q_PibQSSZNnLHlIaZ70qDYLC2bPOrq_j5lPU8WK3W9aYJTxqykAhts9hl_YSugchWFaXlpWiVAMxw&undefined='
  • Respuesta

La respuesta en este caso será igual que la recibida en la solicitud con credenciales:

{
    "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJLdnB0T0R6RXdlQUp4LXZVWDc1NFJWVnFlak51NGwtTXUxUE9UbVB4Q1dBIn0.eyJqdGkiOiIzMmFhMWMzMy04MTgzLTRkMjYtYWNhYS01ZjQ2MmRkYzA3MDIiLCJleHAiOjE1NTg4MjY2MzQsIm5iZiI6MCwiaWF0IjoxNTU4ODIzNjM0LCJpc3MiOiJodHRwczovL2EucGF5cGVydGljLmNvbS9hdXRoL3JlYWxtcy9lbnRpZGFkZXMiLCJhdWQiOiIxNjQ2NTMwOC0xODQ0LTRhYmUtYWJlNi1mMTg0MTQ5ZWU3NDAiLCJzdWIiOiI0MGZlOTFkNi1mNmQ5LTRmOTMtOWZhOC05MGExYmFiMDllNmEiLCJ0eXAiOiJCZWFyZXIiLCJhenAiOiIxNjQ2NTMwOC0xODQ0LTRhYmUtYWJlNi1mMTg0MTQ5ZWU3NDAiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJhMWI0N2M1MC03ZWU0LTQ0MzctOGFjYy04ZTVjZDRlZTQ1YzgiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbXSwicmVzb3VyY2VfYWNjZXNzIjp7IjE2NDY1MzA4LTE4NDQtNGFiZS1hYmU2LWYxODQxNDllZTc0MCI6eyJyb2xlcyI6WyJjYW5jZWwtc3Vic2NyaXB0aW9uIiwiY3JlYXRlLXN1YnNjcmlwdGlvbiIsImNyZWF0ZS1wYXltZW50IiwidW1hX3Byb3RlY3Rpb24iLCJjYW5jZWwtcGF5bWVudCIsInJldHJ5LXBheW1lbnQiLCJmaWxlLWV4cG9ydCIsImFkbWluaXN0cmF0b3IiLCJyZXF1ZXN0LXJlZnVuZCIsInVwZGF0ZS1wYXltZW50IiwiYXBpLXVzZXIiLCJiYXNlLXVzZXIiLCJ1cGRhdGUtc3Vic2NyaXB0aW9uIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbImFkbWluaXN0cmF0b3IiLCJiYXNlLXVzZXIiLCJ2aWV3LXByb2ZpbGUiXX19LCJzaWduYXR1cmUiOiI5OTkiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJlbnRpZGFkcHJ1ZWJhIiwiZW1haWwiOiJlbnRpZGFkcHJ1ZWJhQHBheXBlcnRpYy5jb20ifQ.c6nlTwgbxLiSWNOpTRuO4cCWJ5TyIispsfvfVoR4nczcW0841VMDmvzKJSX92lPdN5opo5zgCftb0Mm9tSpWe4QCtM-UkEP6PfrfNYCvg_GagZIPjbjgLVVuegO534htdEwdw4xStXqRqhb1A7MhKPtiyytUepE378FrHYeAxDPiZMjGDmg3CxhhWPuOVgP-k_RrXpF_fVYUWXeoeYeCYZU_c2uTChGFkyf5yzQkxuBIdNEp6avva69A4pLxQa7y87-ZL0xV0cwrJ68GPInkaw6-elVn-F4qf2gysoaJrjDN8F4qGnI167V5nW3VA8hOeMObRIXeN0Ut4kJ5hVQuJg",
    "expires_in": 3000,
    "refresh_expires_in": 1800,
    "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJLdnB0T0R6RXdlQUp4LXZVWDc1NFJWVnFlak51NGwtTXUxUE9UbVB4Q1dBIn0.eyJqdGkiOiJiMzFmZTI5ZC05YmI3LTQ2MTUtOTQzMS03YWNlYjllNjgzN2IiLCJleHAiOjE1NTg4MjU0MzQsIm5iZiI6MCwiaWF0IjoxNTU4ODIzNjM0LCJpc3MiOiJodHRwczovL2EucGF5cGVydGljLmNvbS9hdXRoL3JlYWxtcy9lbnRpZGFkZXMiLCJhdWQiOiIxNjQ2NTMwOC0xODQ0LTRhYmUtYWJlNi1mMTg0MTQ5ZWU3NDAiLCJzdWIiOiI0MGZlOTFkNi1mNmQ5LTRmOTMtOWZhOC05MGExYmFiMDllNmEiLCJ0eXAiOiJSZWZyZXNoIiwiYXpwIjoiMTY0NjUzMDgtMTg0NC00YWJlLWFiZTYtZjE4NDE0OWVlNzQwIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYTFiNDdjNTAtN2VlNC00NDM3LThhY2MtOGU1Y2Q0ZWU0NWM4IiwicmVzb3VyY2VfYWNjZXNzIjp7IjE2NDY1MzA4LTE4NDQtNGFiZS1hYmU2LWYxODQxNDllZTc0MCI6eyJyb2xlcyI6WyJjYW5jZWwtc3Vic2NyaXB0aW9uIiwiY3JlYXRlLXN1YnNjcmlwdGlvbiIsImNyZWF0ZS1wYXltZW50IiwidW1hX3Byb3RlY3Rpb24iLCJjYW5jZWwtcGF5bWVudCIsInJldHJ5LXBheW1lbnQiLCJmaWxlLWV4cG9ydCIsImFkbWluaXN0cmF0b3IiLCJyZXF1ZXN0LXJlZnVuZCIsInVwZGF0ZS1wYXltZW50IiwiYXBpLXVzZXIiLCJiYXNlLXVzZXIiLCJ1cGRhdGUtc3Vic2NyaXB0aW9uIl19LCJhY2NvdW50Ijp7InJvbGVzIjpbImFkbWluaXN0cmF0b3IiLCJiYXNlLXVzZXIiLCJ2aWV3LXByb2ZpbGUiXX19fQ.kwqMoqjiljCWKTRG75laf7Gzd_m7qxTMbLPtvqQdPdZrjsXeM8JAR7vR6DhjsA5mOaHYgNrJKZJafmeeeIAKEDNnp4s-6l2uD2v86SwQVzr3wC6s2-kTgt8C_Dw2j7xKGrBsYXV9nCXSO7-AFN0gY_Nn4oPxGWN8skt-9KLqMKog5BJ8Q7yLxHeHV4gYh7729tC-2sSUwHh97O3vo9Fyn_2WKG7gQfc6IS8cy4lXc6MbA1C07K5TbPhg2cG_gOj6KZ8wQHAtDpdnJ1yXFxMWiPUsUw1TvYCwA3aVIgmiyIs8qA1hkc8wDMEWNpY4hnAk5xfDQ97m8REZQQrFf3Pw4w",
    "token_type": "bearer",
    "not-before-policy": 1523907876,
    "session_state": "a1b47c50-7ee4-4437-8acc-8e5cd4ee45c8"
}
  • No labels