Configurar autenticação

O Azure Remote Rendering usa o mesmo mecanismo de autenticação que o ASA (Âncoras Espaciais do Azure). Para acessar determinada conta do Azure Remote Rendering, os clientes precisam obter um token de acesso do STS (Serviço de Token de Segurança) da Realidade Misturada do Azure. Os tokens obtidos do STS têm um tempo de vida de 24 horas. Os clientes precisam definir uma das seguintes opções para chamar as APIs REST com êxito:

  • AccountKey: pode ser obtida na guia "Chaves" da conta do Remote Rendering no portal do Azure. As chaves de conta são recomendadas apenas para desenvolvimento/prototipagem. Account ID

  • AccountDomain: pode ser obtida na guia "Visão geral" da conta do Remote Rendering no portal do Azure. Account Domain

  • AuthenticationToken: é um token do Microsoft Entra, que pode ser obtido usando a biblioteca MSAL. Vários fluxos diferentes estão disponíveis para aceitar credenciais do usuário e usá-las para obter um token de acesso.

  • MRAccessToken: é um token de MR que pode ser obtido do STS (serviço de token de segurança) da Realidade Misturada do Azure. Recuperado do ponto de extremidade https://sts.<accountDomain> usando uma chamada REST semelhante à seguinte:

    GET https://sts.southcentralus.mixedreality.azure.com/Accounts/35d830cb-f062-4062-9792-d6316039df56/token HTTP/1.1
    Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni<truncated>FL8Hq5aaOqZQnJr1koaQ
    Host: sts.southcentralus.mixedreality.azure.com
    Connection: Keep-Alive
    
    HTTP/1.1 200 OK
    Date: Tue, 24 Mar 2020 09:09:00 GMT
    Content-Type: application/json; charset=utf-8
    Content-Length: 1153
    Accept: application/json
    MS-CV: 05JLqWeKFkWpbdY944yl7A.0
    {"AccessToken":"eyJhbGciOiJSUzI1<truncated>uLkO2FvA"}
    

    Em que o cabeçalho de autorização é formatado da seguinte maneira: Bearer <Azure_AD_token> ou Bearer <accoundId>:<accountKey>. O primeiro é preferível por segurança. O token retornado por essa chamada REST é o token de acesso da MR.

Autenticação para aplicativos implantados

Chaves de conta são recomendadas para criação rápida de protótipos somente durante o desenvolvimento. É recomendável não enviar o aplicativo para produção usado uma chave de conta inserida nele. A abordagem recomendada é usar uma abordagem de autenticação do Microsoft Entra baseada em usuário ou serviço.

Autenticação de usuário do Microsoft Entra

A autenticação do Microsoft Entra é descrita na documentação das Âncoras Espaciais do Azure.

Siga as etapas para configurar a autenticação de usuário do Microsoft Entra no portal do Azure.

  1. Registre seu aplicativo no Microsoft Entra ID. Como parte do registro, você precisará determinar se o aplicativo deve ser multilocatário. Você também precisará fornecer as URLs de redirecionamento permitidas para o aplicativo na folha Autenticação. Authentication setup

  2. Na guia de permissões da API, solicite Permissões Delegadas para o escopo mixedreality.signin em mixedreality. Api permissions

  3. Conceda consentimento de administrador na guia Segurança -> Permissões. Admin consent

  4. Em seguida, navegue até o Recurso Azure Remote Rendering. No painel de Controle de Acesso, conceda as funções desejadas para seus aplicativos e usuário, em nome dos quais você deseja usar permissões de acesso delegadas para seu recurso do Azure Remote Rendering. Add permissionsRole assignments

Para obter informações sobre como usar a autenticação de usuário do Microsoft Entra no código do aplicativo, consulte o Tutorial: Protegendo a renderização remota do Azure e o armazenamento de modelo - Autenticação do Microsoft Entra

Controle de acesso baseado em função do Azure

Para ajudar a controlar o nível de acesso concedido a seu serviço, use as seguintes funções ao conceder acesso baseado em função:

  • Administrador do Remote Rendering: fornece ao usuário funcionalidades de conversão, gerenciamento de sessão, renderização e diagnóstico para o Azure Remote Rendering.
  • Cliente do Remote Rendering: fornece ao usuário funcionalidades de gerenciamento de sessão, renderização e diagnóstico para o Azure Remote Rendering.

Próximas etapas