Proceso de autenticación #
Las solicitudes a la API están protegidos a través de un token de acceso JWT. Este token debe generarse mediante el flujo de concesión de código de autorización de OAuth v2.
La siguiente imagen proporciona un resumen del proceso involucrado en la generación de los tokens necesarios y mantenerlos vivos:
Consulte los enlaces a continuación para obtener información técnica detallada y ejemplos de código del flujo de concesión del código de autorización:
Para progresar con los pasos a continuación, necesitará:
- El Request_URL, Client_ID & Client_Secret (se le proporcionarán cuando solicite API acceso)
- Un inicio de sesión de usuario para el ~.Dimensions.~ Portal de revendedor para aprobar la autorización.
tip
Si tiene problemas en cualquier etapa y necesita ayuda, comuníquese con nosotros a [email protected] o llámenos al (+1) 480 207 7920.
1. Solicitud de autorización #
El primer paso es solicitar autorización - https://login.xarios.cloud/connect/authorize.
Construir un URL que contiene los siguientes elementos:
- Client_Id: El client_id se proporciona cuando se solicita API acceso.
- Response_Type: Usar "código".
- State: Proporciona un estado que se puede utilizar para identificar la redirección
- Redirect_URI: Esto establece la redirección URL que se utiliza después de que se haya emitido un token. El valor predeterminado es Disponible en: http://127.0.0.1:8000.
- Scope: Esta es la lista de ámbitos que se deben proporcionar al solicitar un token. Esto debe establecerse en "openid offline_access incorporación".
Una vez que se haya realizado la solicitud de autorización, se le presentará la pantalla de inicio de sesión para el ~.Dimensions.~ Portal de revendedores.
La redirección URL ahora se le debería haber pasado un 'Código de autenticación' que se puede usar en el paso 2.
Solicitud de ejemplo
[https://login.xarios.cloud/connect/authorize?client_id=123456& response_type=código& estado=5ca75bd30& redirect_uri=https%3A%2F%2Fexample.com%2Fauth& scope=open%20id%20offline_access%20onboarding](https://login.xarios.cloud/connect/authorize?client_id=123456&response_type=code&state=5ca75bd30&redirect_uri=https%3A%2F%2Fexample.com%2Fauth&scope=open%20id%20offline_access%20onboarding)
2. Solicitar acceso & Tokens de actualización #
El 'Código de autenticación' ahora debe intercambiarse por tokens de acceso y actualización - https://login.xarios.cloud/connect/token.
- Token de acceso, utilizado para acceder al API funciones y realizar solicitudes de incorporación.
- Refresh Token, utilizado para generar tokens de acceso continuo
Esto se puede hacer haciendo un POST solicitud al servidor de autorización que contiene los siguientes elementos:
- Code: El código de autenticación recopilado en el paso 1.
- Grant_Type: Establézcalo en authorization_code. (Según el https://developer.okta.com/blog/2018/04/10/oauth-authorization-code-grant-type especificaciones).
- Client_Id: El client_id se proporciona cuando se solicita API acceso.
- Client_Secret: El client_secret se proporciona cuando se solicita API acceso.
- Redirect_URI: Esto establece la redirección URL que se utiliza después de que se haya emitido un token. El valor predeterminado es Disponible en: http://127.0.0.1:8000.
Solicitud de ejemplo
POST <https://login.xarios.cloud/connect/token> HTTP/1.1
Tipo de contenido: application/x-www-form-urlencoded
Longitud del contenido: xx
código=98765& grant_type=código& client_id=123456& client_secret=987654321& redirect_uri=https%3A%2f%2fexample.com%2fauth
El servidor de autenticación valida la solicitud y responde con un token de acceso y un token de actualización:
Ejemplo de respuesta
{\
"access_token": "AYjcyMzY3ZDhiNmJkNTY",\
"refresh_token": "RjY2NjM5NzA2OWJjuE7c",\
"token_type": "portador",\
"caduca": 5400\
}\
En esta etapa, debe estar en posesión de tokens de acceso y actualización. El token de acceso se puede utilizar para realizar API solicitudes de incorporación según sea necesario.
Para obtener información sobre el uso de API, consulte el API Referencia.
3. Actualización del token de acceso #
La duración del token de acceso se establece en 1 hora. Después de este tiempo, se deberá generar un nuevo token de acceso mediante el token de actualización.
Para evitar que sea necesario interactuar con el usuario para generar un nuevo token de acceso, se usa un token de actualización. El token de actualización se puede usar para solicitar un nuevo token de acceso cuando el original ha expirado.
Esto se puede hacer haciendo un POST solicitud al servidor de autorización que contiene los siguientes elementos (esto es lo mismo que el paso 2 pero utiliza el Actualizar token en lugar de Código de autenticación):
- Refresh_Token: La colección de refresh_token almacenada en el paso 2.
- Grant_Type: Utilice "refresh_token".
- Client_Id: El client_id se proporciona cuando se solicita API acceso.
- Client_Secret: El client_secret se proporciona cuando se solicita API acceso.
Solicitud de ejemplo
POST <https://login.xarios.cloud/connect/token> HTTP/1.1
Tipo de contenido: application/x-www-form-urlencoded
Longitud del contenido: xx
refresh_token=RjY2NjM5NzA2OWJjuE7c& grant_type=refresh_token& client_id=123456& client_secret=987654321
info
Al agregar el atributo offline_access al solicitar autorización en el paso 1, el proceso hará que se genere un token de actualización junto con el token de acceso inicial.
warning
Los tokens de actualización caducarán si no se utilizan durante un período de 90 días. El tiempo de expiración se restablecerá a 90 días cada vez que se use el token de actualización.
Revocación de tokens #
Si el token se ve comprometido, el token de acceso no se puede revocar, pero el token de actualización sí. Póngase en contacto con el servicio de asistencia de inmediato si esto sucede o deshabilite el REST API a través del Portal de Revendedores.