API Identity
API Identity é um novo tipo de API criado para facilitar a autenticação por senha (fluxo Password de OAuth). Essa API substitui o OAuth Directory e permite modificar e tratar as chamadas feitas para os servidores de autenticação.
— Aviso de descontinuidade: OAuth Directory — A partir da Release 1901.1.2.0, o OAuth Directory foi descontinuado e é necessário ter uma API Identity configurada para utilizar o fluxo Password. Em releases anteriores, a autenticação pelo fluxo Password é feita diretamente pelo OAuth Directory (você pode acessar a documentação sobre essa funcionalidade aqui). |
Funcionamento
API Identities possuem APIs em seu corpo que, por sua vez, contam com os interceptores OAuth e/ou Access Token Validation, com a opção Password habilitada.
Quando uma app utiliza alguma dessas APIs associadas, ocorre o seguinte: ao requerir um access token do tipo Password, uma requisição é enviada para a API Identity, que trata a chamada e a envia pra o endpoint de autenticação.
O endpoint que o serviço de autorização requisita da API Identity depende diretamente do ambiente utilizado para a chamada da API OAuth 2.0. Portanto, a API Identity e a API OAuth 2.0 deverão estar implantadas no mesmo ambiente, permitindo à mesma API ter comportamentos diferentes em fluxos de ambientes distintos.
Veja mais sobre a API OAuth 2.0 aqui. |
Uma API comum pode estar associada a mais de uma API Identity, e uma app pode estar associado a mais de uma API. Nesses casos, o serviço de autorização fará requisições para cada Identity associada, uma a uma. Caso a senha seja válida para alguma API Identity, ele deixará de executar as requisições restantes. Se a senha não for válida para nenhuma Identity, não será permitido criar um access token.
O corpo passado à API Identity no momento da chamada terá todo conteúdo enviado para a requisição de access token no fluxo Password, permitindo mais possibilidades na autenticação de senhas.
Caso a chamada para a API Identity retorne um campo no corpo com a chave extraInfo
, o conteúdo desse campo estará presente no extraInfo
do access token gerado.
Criando uma API Identity
Para a criação de uma nova API Identity, basta selecionar a opção Create API Identity no canto inferior direito da página de APIs (no menu que surge ao posicionar o cursor sobre o botão flutuante +).
A página de construção de API será aberta e você deverá preencher as informações necessárias ao longo das diferentes etapas, como no caso de uma API comum:
O API Destination (que você configura clicando no ícone dentro da etapa Flows) deverá ser o endpoint em que será executada a verificação de Password. |
Diferente de APIs comuns, a API Identity possui a etapa Identity, na qual é possível selecionar APIs que possuem os interceptores OAuth e/ou Access Token Validation, com a opção Password habilitada.
Feito isso, publique sua API normalmente (botão Publish) e ela estará pronta para uso.
Share your suggestions with us!
Click here and then [+ Submit idea]