Cenários de troca de token da plataforma de identidade da Microsoft com SAML e OIDC/OAuth

SAML e OpenID Connect (OIDC) / OAuth são protocolos populares usados para implementar o logon único (SSO). Alguns aplicativos podem implementar apenas SAML e outros podem implementar apenas OIDC/OAuth. Ambos os protocolos usam tokens para comunicar segredos. Para saber mais sobre SAML, consulte Protocolo SAML de logon único. Para saber mais sobre OIDC/OAuth, consulte Protocolos OAuth 2.0 e OpenID Connect na plataforma de identidade da Microsoft.

Este artigo descreve um cenário comum em que um aplicativo implementa SAML, mas chama a Graph API, que usa OIDC/OAuth. Orientações básicas são fornecidas para as pessoas que trabalham com esse cenário.

Cenário: Você tem um token SAML e deseja chamar a API do Graph

Muitos aplicativos são implementados com SAML. No entanto, a Graph API usa os protocolos OIDC/OAuth. É possível, embora não trivial, adicionar a funcionalidade OIDC/OAuth a um aplicativo SAML. Assim que a funcionalidade OAuth estiver disponível em um aplicativo, a API do Graph poderá ser usada.

A estratégia geral é adicionar a pilha OIDC/OAuth ao seu aplicativo. Com seu aplicativo que implementa ambos os padrões, você pode usar um cookie de sessão. Você não está trocando um token explicitamente. Você está fazendo login de um usuário com SAML, que gera um cookie de sessão. Quando a API do Graph invoca um fluxo OAuth, você usa o cookie de sessão para autenticar. Essa estratégia pressupõe que as verificações de Acesso Condicional sejam aprovadas e o usuário seja autorizado.

Nota

A biblioteca recomendada para adicionar o comportamento OIDC/OAuth aos seus aplicativos é a Microsoft Authentication Library (MSAL).

Próximos passos