Implementar autorização para dar suporte à integração

Concluído

A API do pacote da Estrutura de Gerenciamento de Dados usa o OAuth 2.0 para autorizar o acesso. Para usar a API, ela deve estar conectada a um token de acesso OAuth válido. Para organizações que estejam realizando uma implantação local, você usará os Serviços de Federação do Active Directory (AD FS).

O Microsoft Entra ID usa OAuth 2.0 para permitir que você autorize o acesso a aplicativos Web e interfaces de programação de aplicativo Web no locatário do Microsoft Entra. Para começar, é necessário registrar o aplicativo com o locatário do Microsoft Entra. Para isso, acesse o portal do Microsoft Azure.

Confira uma visão geral do fluxo de solicitação do código de autorização OAuth 2.0:

  1. O cliente direciona o usuário para /authorize endpoint.

  2. Com essa solicitação, o cliente indica as permissões que precisa adquirir do usuário que está requerendo o acesso. Para obter o ponto de extremidade de autorização OAuth 2.0 do locatário, você pode acessar Registros de aplicativo > Pontos de extremidade no portal do Azure.

  3. No aplicativo nativo, o usuário é direcionado a entrar e consentir com as permissões solicitadas pelo aplicativo. Quando o usuário autenticar e conceder o consentimento, o Microsoft Entra ID enviará uma resposta ao aplicativo no endereço redirect_uri na solicitação.

    // Line breaks for legibility only
    
    https://login.microsoftonline.com/{tenant}/oauth2/authorize?
    client_id=
    &response_type=code
    &redirect_uri=http%3A%2F%2Flocalhost%3A12345
    &response_mode=query
    &resource=https%3A%2F%2Fservice.contoso.com%2F
    &state=12345
    

    Os dois tipos de resposta são:

    • Resposta bem-sucedida: uma resposta bem-sucedida concederá acesso e incluirá o consentimento do administrador, o código de autorização que o aplicativo solicitou, um valor de sessão exclusivo e um parâmetro de estado.
    • Resposta de erro: uma resposta de erro não concederá um código de autorização. A resposta de erro inclui o valor de código de erro, a descrição do erro e o valor de estado.

    Com uma resposta bem-sucedida, um código de autorização é concedido, e o acesso é oferecido ao usuário.

  4. Agora, o código pode ser resgatado para um token de acesso ao recurso desejado. Essa ação é feita enviando uma solicitação POST para o ponto de extremidade /token.

  5. Após uma resposta bem-sucedida, o Microsoft Entra ID retorna um token de acesso. O token de acesso é um JWT (Token Web JSON).

  6. Quando o token de acesso é solicitado, o Microsoft Entra ID retorna os metadados sobre o token de acesso para o consumo do aplicativo. O cliente deve armazenar em cache os tokens de acesso para a vida útil do token especificada na resposta OAuth2. Uma API Web pode retornar uma resposta invalid_token, e é possível que isso ocorra devido a um token expirado.

  7. Ao obter o token de acesso, o token poderá ser usado em solicitações para APIs Web.