Compartilhar via


Autenticação de locatário único e multilocatário para usuários do Microsoft 365

Este artigo fornece informações sobre o processo de autenticação para aplicativos de locatário único e multilocatário, Microsoft Entra ID (Microsoft Entra ID). Você pode usar a autenticação ao criar experiências de chamada para usuários do Microsoft 365 com o SDK de Chamada que os Serviços de Comunicação do Azure disponibiliza. Os casos de uso neste artigo também detalham artefatos de autenticação individuais.

Caso 1: exemplo de um aplicativo de locatário único

A empresa Fabrikam criou um aplicativo para uso interno. Todos os usuários do aplicativo têm o Microsoft Entra ID. O acesso aos Serviços de Comunicação do Azure é controlado pelo Azure RBAC (controle de acesso baseado em função).

Um diagrama que descreve o processo de autenticação do aplicativo de chamada da Fabrikam para usuários do Microsoft 365 e seu recurso dos Serviços de Comunicação do Azure.

O diagrama de sequência a seguir detalha a autenticação de locatário único.

Um diagrama de sequência que detalha a autenticação dos usuários do Microsoft 365 da Fabrikam. O aplicativo do cliente obtém um token de acesso dos Serviços de Comunicação do Azure para um aplicativo do Microsoft Entra de locatário único.

Antes de começarmos:

  • Alice ou seu administrador do Microsoft Entra precisam fornecer um consentimento ao aplicativo do Teams personalizado antes da primeira tentativa de login. Saiba mais sobre consentimento.
  • O administrador de recursos dos Serviços de Comunicação do Azure precisa conceder permissão para a Alice realizar a função dela. Saiba mais sobre Atribuição de função do RBAC do Azure.

Etapas:

  1. Autenticar a Alice usando o Microsoft Entra ID: Alice é autenticada usando um fluxo OAuth padrão com a Biblioteca de Autenticação da Microsoft (MSAL). Se a autenticação for bem-sucedida, o aplicativo cliente receberá um token de acesso do Microsoft Entra, com um valor de A1 e uma ID de objeto de um usuário do Microsoft Entra com um valor de A2. Os tokens são descritos neste artigo mais tarde. A autenticação da perspectiva do desenvolvedor é explorada neste início rápido.
  2. Obter um token de acesso para Alice: o aplicativo da Fabrikam usando um artefato de autenticação personalizado com valor B executa a lógica de autorização para decidir se Alice tem permissão para trocar o token de acesso do Microsoft Entra por um token de acesso dos Serviços de Comunicação do Azure. Após a autorização bem-sucedida, o aplicativo da Fabrikam executa a lógica do plano de controle, usando artefatos A1, A2 e A3. O token de acesso dos Serviços de Comunicação do Azure D é gerado para Alice no aplicativo da Fabrikam. Esse token de acesso pode ser usado para ações de plano de dados nos Serviços de Comunicação do Azure, como Chamadas. Os artefatos A2 e A3 são passados junto com o artefato A1 para validação. A validação garante que o Token do Microsoft Entra foi emitido para o usuário esperado. O aplicativo impede que invasores usem os tokens de acesso do Microsoft Entra emitidos para outros aplicativos ou outros usuários. Para obter mais informações sobre como obter artefatos A, consulte Receber o token de usuário e a ID do objeto do Microsoft Entra por meio da biblioteca MSAL e Obter uma ID do Aplicativo.
  3. Ligue para Bob: Alice faz uma chamada para o usuário do Microsoft 365 Bob, com o aplicativo da Fabrikam. A chamada ocorre por meio do SDK de Chamada com um token de acesso dos Serviços de Comunicação do Azure. Saiba mais sobre desenvolvimento de aplicativos para usuários do Microsoft 365.

Artefatos:

  • Artefato A1
    • Tipo: token de acesso do Microsoft Entra
    • Público: Azure Communication Services, plano de controle
    • Fonte: locatário do Microsoft Entra da Fabrikam
    • Permissões: https://auth.msft.communication.azure.com/Teams.ManageCalls, https://auth.msft.communication.azure.com/Teams.ManageChats
  • Artefato A2
    • ID de Objeto de um usuário ou grupo do Microsoft Entra
    • Fonte: locatário do Microsoft Entra da Fabrikam
    • Autoridade: https://login.microsoftonline.com/<tenant>/
  • Artefato A3
    • Tipo: ID de aplicativo do Microsoft Entra
    • Fonte: locatário do Microsoft Entra da Fabrikam
  • Artefato B
    • Tipo: artefato de autorização personalizado da Fabrikam (emitido pelo Microsoft Entra ID ou por um serviço de autorização diferente)
  • Artefato C
  • Artefato D
    • Tipo: token de acesso dos Serviços de Comunicação do Azure
    • Público-alvo: Azure Communication Services, plano de dados
    • ID do recurso dos Serviços de Comunicação do Azure: Azure Communication Services Resource ID da Fabrikam

Caso 2: Exemplo de um aplicativo multilocatário

A empresa Contoso criou um aplicativo para clientes externos. Esse aplicativo usa a autenticação personalizada dentro da própria infraestrutura da Contoso. A Contoso usa um cadeia de conexão para recuperar tokens do aplicativo da Fabrikam.

Um diagrama de sequência que demonstra como o aplicativo da Contoso autentica usuários da Fabrikam com o recurso dos Serviços de Comunicação do Azure da Contoso.

O diagrama de sequência a seguir detalha a autenticação multilocatário.

Um diagrama de sequência que detalha a autenticação de usuários do Microsoft 365 e tokens de acesso dos Serviços de Comunicação do Azure para aplicativos multilocatários do Microsoft Entra.

Antes de começarmos:

  • A Alice ou seu administrador do Microsoft Entra precisam dar consentimento ao aplicativo do Microsoft Entra da Contoso antes da primeira tentativa de login. Saiba mais sobre consentimento.

Etapas:

  1. Autenticar a Alice usando o aplicativo da Fabrikam: a Alice é autenticada por meio do aplicativo da Fabrikam. Um fluxo OAuth padrão com a MSAL (Biblioteca de Autenticação da Microsoft) é usado. Configure a MSAL com uma autoridade correta. Se a autenticação for bem-sucedida, o aplicativo cliente da Contoso receberá um token de acesso do Microsoft Entra com um valor de A1 e uma ID de objeto de um usuário do Microsoft Entra com um valor de A2. Os detalhes do token são descritos abaixo. A autenticação da perspectiva do desenvolvedor é explorada neste início rápido.
  2. Obter um token de acesso para Alice: o aplicativo Contoso usando um artefato de autenticação personalizado com valor B executa a lógica de autorização para decidir se Alice tem permissão para trocar o token de acesso do Microsoft Entra por um token de acesso dos Serviços de Comunicação do Azure. Após a autorização bem-sucedida, o aplicativo Contoso executa a lógica do plano de controle, usando artefatos A1, A2 e A3. Um token de acesso dos Serviços de Comunicação do Azure D é gerado para Alice no aplicativo Contoso. Esse token de acesso pode ser usado para ações de plano de dados nos Serviços de Comunicação do Azure, como Chamadas. Os artefatos A2 e A3 são passados junto com o artefato A1. A validação garante que o Token do Microsoft Entra foi emitido para o usuário esperado. O aplicativo impede que invasores usem os tokens de acesso do Microsoft Entra emitidos para outros aplicativos ou outros usuários. Para obter mais informações sobre como obter artefatos A, consulte Receber o token de usuário e a ID do objeto do Microsoft Entra por meio da biblioteca MSAL e Obter uma ID do Aplicativo.
  3. Chamada Bob: Alice faz uma chamada para o usuário do Microsoft 365 Bob, com o aplicativo da Fabrikam. A chamada ocorre por meio do SDK de Chamada com um token de acesso dos Serviços de Comunicação do Azure. Saiba mais sobre como desenvolver aplicativos para usuários do Microsoft 365 neste guia de início rápido.

Artefatos:

  • Artefato A1
    • Tipo: token de acesso do Microsoft Entra
    • Público: Azure Communication Services, plano de controle
    • Fonte: locatário do Microsoft Entra do registro de aplicativo da Contoso
    • Permissão: https://auth.msft.communication.azure.com/Teams.ManageCalls, https://auth.msft.communication.azure.com/Teams.ManageChats
  • Artefato A2
    • ID de Objeto de um usuário ou grupo do Microsoft Entra
    • Fonte: locatário do Microsoft Entra da Fabrikam
    • Autoridade: https://login.microsoftonline.com/<tenant>/ ou https://login.microsoftonline.com/organizations/ (com base em seu cenário)
  • Artefato A3
    • Tipo: ID de aplicativo do Microsoft Entra
    • Fonte: locatário do Microsoft Entra do registro de aplicativo da Contoso
  • Artefato B
    • Tipo: artefato de autorização personalizado da Contoso (emitido pelo Microsoft Entra ID ou por um serviço de autorização diferente)
  • Artefato C
  • Artefato D
    • Tipo: token de acesso dos Serviços de Comunicação do Azure
    • Público-alvo: Azure Communication Services, plano de dados
    • ID do recurso dos Serviços de Comunicação do Azure: Azure Communication Services Resource ID da Contoso

Próximas etapas

Os seguintes aplicativos de exemplo podem ser do seu interesse:

  • Experimente o Aplicativo de Exemplo, que mostra um processo de aquisição de tokens de acesso dos Serviços de Comunicação do Azure para usuários do Microsoft 365 em aplicativos móveis e de desktop.

  • Para ver como os tokens de acesso dos Serviços de Comunicação do Azure para usuários do Microsoft 365 são adquiridos em um aplicativo de página única, confira um aplicativo de exemplo SPA.

  • Para saber mais sobre a implementação de um servidor de um serviço de autenticação para os Serviços de Comunicação do Azure, confira a Amostra emblemática do serviço de autenticação.