Partilhar via


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

Este artigo fornece informações sobre o processo de autenticação para aplicativos Microsoft Entra ID (Microsoft Entra ID) de locatário único e multilocatário. Você pode usar a autenticação ao criar experiências de chamada para usuários do Microsoft 365 com o SDK (kit de desenvolvimento de software) de chamada que os Serviços de Comunicação do Azure disponibilizam. 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 uma aplicação 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 controle de acesso baseado em função do Azure (Azure RBAC).

Um diagrama que descreve o processo de autenticação para o 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 cliente obtém um token de acesso dos Serviços de Comunicação do Azure para um único aplicativo Microsoft Entra de locatário.

Antes de começarmos:

  • Alice ou seu administrador do Microsoft Entra precisa dar o consentimento do aplicativo Teams personalizado, antes da primeira tentativa de entrar. Saiba mais sobre o consentimento.
  • O administrador de recursos dos Serviços de Comunicação do Azure precisa conceder permissão a Alice para desempenhar sua função. Saiba mais sobre a atribuição de função do RBAC do Azure.

Passos:

  1. Autenticar 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 e uma ID de objeto de um usuário do A1 Microsoft Entra com um valor de A2. Os tokens são descritos mais adiante neste artigo. A autenticação da perspetiva 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, A2e A3. O token D de acesso dos Serviços de Comunicação do Azure é gerado para Alice dentro do aplicativo da Fabrikam. Esse token de acesso pode ser usado para ações do plano de dados nos Serviços de Comunicação do Azure, como Chamada. Os A2 artefatos e A3 são passados junto com o artefato A1 para validação. A validação garante que o Microsoft Entra Token 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 A artefatos, consulte Receber o token de usuário e a ID do objeto do Microsoft Entra por meio da biblioteca MSAL e Obter uma ID de 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 como desenvolver aplicativos para usuários do Microsoft 365.

Artefactos:

  • Artefato A1
    • Tipo: Microsoft Entra access token
    • Audiência: Azure Communication Services, plano de controlo
    • Fonte: Locatário Microsoft Entra da Fabrikam
    • Permissões: https://auth.msft.communication.azure.com/Teams.ManageCalls, https://auth.msft.communication.azure.com/Teams.ManageChats
  • Artefato A2
    • Tipo: ID do objeto de um usuário do Microsoft Entra
    • Fonte: Locatário Microsoft Entra da Fabrikam
    • Autoridade: https://login.microsoftonline.com/<tenant>/
  • Artefato A3
    • Tipo: ID do aplicativo Microsoft Entra
    • Fonte: Locatário 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
    • Tipo: Artefato de autorização de recursos dos Serviços de Comunicação do Azure.
    • Fonte: cabeçalho HTTP "Autorização" com um token de portador para autenticação do Microsoft Entra ou uma carga de código de autenticação de mensagem baseada em hash (HMAC) e uma assinatura para autenticação baseada em chave de acesso.
  • Artefato D
    • Tipo: token de acesso dos Serviços de Comunicação do Azure
    • Público-alvo: Azure Communication Services, plano de dados
    • ID de recurso dos Serviços de Comunicação do Azure: da Fabrikam Azure Communication Services Resource ID

Caso 2: Exemplo de um aplicativo multilocatário

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

Um diagrama de sequência que demonstra como o aplicativo Contoso autentica usuários da Fabrikam com o recurso dos Serviços de Comunicação do Azure da própria 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 Microsoft Entra multilocatário.

Antes de começarmos:

  • Alice ou seu administrador do Microsoft Entra precisa dar o consentimento do aplicativo Microsoft Entra da Contoso antes da primeira tentativa de entrar. Saiba mais sobre o consentimento.

Passos:

  1. Autenticar Alice usando o aplicativo da Fabrikam: Alice é autenticada por meio do aplicativo da Fabrikam. Um fluxo OAuth padrão com Microsoft Authentication Library (MSAL) é usado. Certifique-se de configurar o 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 e uma ID de objeto de um usuário do A1 Microsoft Entra com um valor de A2. Os detalhes do token são descritos abaixo. A autenticação da perspetiva 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, A2e A3. Um token D de acesso dos Serviços de Comunicação do Azure é gerado para Alice dentro do aplicativo Contoso. Esse token de acesso pode ser usado para ações do plano de dados nos Serviços de Comunicação do Azure, como Chamada. Os A2 artefatos e A3 são passados junto com o artefato.A1 A validação garante que o Microsoft Entra Token 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 A artefatos, consulte Receber o token de usuário e a ID do objeto do Microsoft Entra por meio da biblioteca MSAL e Obter uma ID de 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 o desenvolvimento de aplicativos para usuários do Microsoft 365 neste início rápido.

Artefactos:

  • Artefato A1
    • Tipo: Microsoft Entra access token
    • Audiência: Azure Communication Services, plano de controlo
    • Fonte: Locatário do Microsoft Entra do registro do aplicativo Contoso
    • Permissão: https://auth.msft.communication.azure.com/Teams.ManageCalls, https://auth.msft.communication.azure.com/Teams.ManageChats
  • Artefato A2
    • Tipo: ID do objeto de um usuário do Microsoft Entra
    • Fonte: Locatário Microsoft Entra da Fabrikam
    • Autoridade: https://login.microsoftonline.com/<tenant>/ ou https://login.microsoftonline.com/organizations/ (com base no seu cenário )
  • Artefato A3
    • Tipo: ID do aplicativo Microsoft Entra
    • Fonte: Locatário do Microsoft Entra do registro do aplicativo Contoso
  • Artefato B
    • Tipo: Artefato de autorização personalizado da Contoso (emitido pela ID do Microsoft Entra ou por um serviço de autorização diferente)
  • Artefato C
    • Tipo: Artefato de autorização de recursos dos Serviços de Comunicação do Azure.
    • Fonte: cabeçalho HTTP "Autorização" com um token de portador para autenticação do Microsoft Entra ou uma carga de código de autenticação de mensagem baseada em hash (HMAC) e uma assinatura para autenticação baseada em chave de acesso
  • 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: da Contoso Azure Communication Services Resource ID

Próximos passos

Os seguintes aplicativos de exemplo podem ser interessantes para você:

  • 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 uma implementação de servidor de um serviço de autenticação para os Serviços de Comunicação do Azure, confira o Exemplo de herói do serviço de autenticação.