Processo de autenticação

Processo de autenticação #

Solicitações para o API são protegidos por meio de um token de acesso JWT. Esse token precisa ser gerado usando o fluxo de concessão do Código de Autorização do OAuth v2.

A imagem abaixo fornece um esboço do processo envolvido na geração dos tokens necessários e em mantê-los ativos:

Login de suporte

Consulte os links abaixo para obter informações técnicas detalhadas e exemplos de código do fluxo de concessão do Código de Autorização:

Para progredir com as etapas abaixo, você precisará de:

  • O Request_URL, Client_ID & Client_Secret (estes serão fornecidos a você quando você solicitar API acesso)
  • Um login de usuário para o ~.Dimensions.~ Portal do Revendedor para aprovar a autorização.
Color Wand tip
Se você estiver tendo problemas em qualquer estágio e precisar de assistência, entre em contato conosco em [email protected] ou ligue para nós (+1) 480 207 7920.

1. Solicitar autorização #

O primeiro passo é solicitar autorização - https://login.xarios.cloud/connect/authorize.
Construa um URL contendo os itens abaixo:

  • Client_Id: O client_id é fornecido ao solicitar API acesso.
  • Response_Type: Use "código".
  • State: forneça um estado que possa ser usado para identificar o redirecionamento
  • Redirect_URI: Define o redirecionamento URL que é usado após a emissão de um token. O padrão é Disponível em: http://127.0.0.1:8000.
  • Escopo: essa é a lista de escopos que precisam ser fornecidos ao solicitar um token. Isso deve ser definido como "openid offline_access onboarding".

Assim que a solicitação de autorização for feita, você verá a tela de login para o ~.Dimensions.~ Portal do Revendedor.

O redirecionamento URL agora deve ter sido passado um 'Código de Autenticação' que pode ser usado na etapa 2.

Exemplo de solicitação

[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. Solicite acesso e Tokens de atualização #

O 'Código de Autenticação' agora precisa ser trocado por tokens de acesso e atualização - https://login.xarios.cloud/connect/token.

  • Token de acesso, usado para acessar o API recursos e realizar solicitações de integração.
  • Token de atualização, usado para gerar tokens de acesso contínuo

Isso pode ser feito fazendo um POST solicitação ao servidor de autorização contendo os seguintes itens:

Exemplo de solicitação

POST <https://login.xarios.cloud/connect/token> HTTP/1.1
Tipo de conteúdo: application/x-www-form-urlencoded
Comprimento do conteúdo: xx
código = 98765 & grant_type=código& client_id=123456& client_secret=987654321& redirect_uri=https%3A%2f%2fexample.com%2fauth

O servidor de autenticação valida a solicitação e responde com um token de acesso e um token de atualização:

Exemplo de resposta

{\
  "access_token": "AYjcyMzY3ZDhiNmJkNTY",\
  "refresh_token": "RjY2NjM5NzA2OWJjuE7c",\
  "token_type": "portador",\
  "expira": 5400\
}\

Nesta fase, você deve estar de posse de tokens de acesso e atualização. O token de acesso pode ser usado para executar API solicitações de integração, conforme necessário.

Para obter informações sobre como usar o API, consulte o API Referência.

3. Atualizando o token de acesso #

O tempo de vida do token de acesso é definido como 1 hora. Após esse tempo, um novo token de acesso precisará ser gerado usando o token de atualização.

Para evitar a necessidade de qualquer interação do usuário para gerar um novo token de acesso, um token de atualização é usado. O token de atualização pode ser usado para solicitar um novo token de acesso quando o original expirar.

Isso pode ser feito fazendo um POST solicitação ao servidor de autorização contendo os seguintes itens (isso é o mesmo que a etapa 2, mas usa o Token de atualização em vez do Código de autenticação):

  • Refresh_Token: a coleção de refresh_token armazenada na etapa 2.
  • Grant_Type: Use "refresh_token".
  • Client_Id: O client_id é fornecido ao solicitar API acesso.
  • Client_Secret: O client_secret é fornecido ao solicitar API acesso.

Exemplo de solicitação

POST <https://login.xarios.cloud/connect/token> HTTP/1.1
Tipo de conteúdo: application/x-www-form-urlencoded
Comprimento do conteúdo: xx
refresh_token=RjY2NjM5NzA2OWJjuE7c& grant_type = refresh_token & client_id=123456& client_secret=987654321
Information Circle info
Adicionar o offline_access ao escopo ao solicitar autorização no processo da etapa 1 fará com que um token de atualização seja gerado junto com o token de acesso inicial.

Hand Left warning
Os tokens de atualização expirarão se não forem usados por um período de 90 dias. O tempo de expiração continuará sendo redefinido para 90 dias sempre que o token de atualização for usado.

Revogando tokens #

Se o token for comprometido, o token de acesso não poderá ser revogado, mas o token de atualização poderá. Entre em contato com o suporte imediatamente se isso acontecer ou desative o REST API através do Portal do Revendedor.