SDK do Microsoft Proteção de Informações – conceitos de autenticação

Para autenticar no SDK do MIP, estenda a mip::AuthDelegate classe para implementar seu método de autenticação preferencial. mip::AuthDelegate Contém:

  • mip::AuthDelegate::OAuth2Challenge – uma classe que gerencia as informações de autoridade do OAuth 2.0 e as fornece ao aplicativo cliente.
  • mip::AuthDelegate::OAuth2Token – uma classe que gerencia a aquisição de token de acesso OAuth 2.0 do aplicativo cliente e do armazenamento de tokens.
  • mip::AuthDelegate::AcquireOAuth2Token() – uma função virtual pura cuja implementação determina o método de aquisição de token de acesso. Depois que o SDK o chama, a implementação adquire o token de acesso e o fornece de volta à lógica de autenticação do SDK.

mip::AuthDelegate::AcquireOAuth2Token aceita os seguintes parâmetros e retorna um bool que indica se a aquisição de token foi bem-sucedida:

  • mip::Identity: a identidade do usuário ou do serviço para autenticação, se conhecida.
  • mip::AuthDelegate::OAuth2Challenge: aceita quatro parâmetros: autoridade, recurso, declarações e escopos. Autoridade é o serviço que gera o token. O recurso é o serviço que o aplicativo tenta acessar. O SDK passa esses parâmetros para o delegado quando chamado. Reivindicações são aquelas específicas do rótulo exigidas pelo serviço de proteção. Escopos referem-se aos escopos de permissão do Microsoft Entra necessários para acessar o recurso.
  • mip::AuthDelegate::OAuth2Token: o SDK grava o resultado do token nesse objeto. O SDK o consome quando o mecanismo é carregado. Fora da implementação de autenticação, você não precisa obter ou definir esse valor em qualquer lugar.

Important

Os aplicativos não chamam AcquireOAuth2Token diretamente. O SDK chama essa função quando necessário.

Próximas etapas

Para simplificar, os exemplos que demonstram como o delegate implementa a obtenção de token fazem isso chamando um script externo. Você pode substituir esse script por outro script, uma biblioteca OAuth 2.0 de software livre ou uma biblioteca OAuth 2.0 personalizada.