Partilhar via


Biblioteca de cliente de Autenticação Mixed Reality do Azure para JavaScript – versão 1.0.0-beta.1

Mixed Reality serviços, como Âncoras Espaciais do Azure, Remote Rendering do Azure e outros, utilizam o serviço de tokens de segurança (STS) Mixed Reality para autenticação. Este pacote suporta a troca de credenciais de conta Mixed Reality para um token de acesso a partir do STS que pode ser utilizado para aceder a serviços Mixed Reality.

Ligações principais:

Mixed Reality diagrama de autenticação do serviço

Introdução

Ambientes atualmente suportados

Pré-requisitos

Instalar o pacote @azure/mixed-reality-authentication

Instale a biblioteca de cliente autenticação do Azure Mixed Reality para JavaScript com npm:

npm install @azure/mixed-reality-authentication

Criar e autenticar um MixedRealityStsClient

Para criar um objeto de cliente para pedir um token de acesso para um serviço de Mixed Reality, precisará do account identifier recurso de serviço e account domain do Mixed Reality e de um credential.

Mixed Reality serviços suportam algumas formas diferentes de autenticação:

  • Autenticação da Chave de Conta
    • As chaves de conta permitem-lhe começar rapidamente a utilizar Mixed Reality serviços. Contudo, antes de implementar a sua aplicação na produção, recomendamos que atualize a sua aplicação para utilizar Azure AD autenticação.
  • Autenticação de tokens do Azure Active Directory (AD)
    • Se estiver a criar uma aplicação empresarial e a sua empresa estiver a utilizar Azure AD como o respetivo sistema de identidade, pode utilizar a autenticação Azure AD baseada no utilizador na sua aplicação. Em seguida, concede acesso às suas contas de Mixed Reality com os grupos de segurança Azure AD existentes. Também pode conceder acesso diretamente aos utilizadores na sua organização.
    • Caso contrário, recomendamos que obtenha tokens de Azure AD a partir de um serviço Web que suporte a sua aplicação. Recomendamos este método para aplicações de produção porque permite evitar incorporar as credenciais para acesso a um serviço Mixed Reality na sua aplicação cliente.

Consulte aqui para obter instruções e informações detalhadas.

Utilizar a autenticação da chave de conta

Utilize o Portal do Azure para navegar para o recurso do serviço Mixed Reality e obter um account key.

Assim que tiver uma chave de conta, pode utilizar a AzureKeyCredential classe para autenticar o cliente da seguinte forma:

const { AzureKeyCredential } = require("@azure/core-auth");

const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");

const accountId = "<ACCOUNTD ID>";
const accountDomain = "<ACCOUNT_DOMAIN>";
const accountKey = "<ACCOUNT_KEY>";

const client = new MixedRealityStsClient(
  accountId,
  accountDomain,
  new AzureKeyCredential(accountKey)
);

Nota: a autenticação da chave de conta não é recomendada para aplicações de produção.

Utilizar uma Credencial do Azure Active Directory

A autenticação da chave de conta é utilizada na maioria dos exemplos, mas também pode autenticar com o Azure Active Directory com a biblioteca de Identidade do Azure. Este é o método recomendado para aplicações de produção. Para utilizar o fornecedor DefaultAzureCredential apresentado abaixo ou outros fornecedores de credenciais fornecidos com o SDK do Azure, instale o @azure/identity pacote:

npm install @azure/identity

Também terá de registar uma nova aplicação do AAD e conceder acesso ao recurso Mixed Reality ao atribuir a função adequada para o serviço Mixed Reality ao seu principal de serviço.

Defina os valores do ID do cliente, do ID do inquilino e do segredo do cliente da aplicação do AAD como variáveis de ambiente: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET.

const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");
const { DefaultAzureCredential } = require("@azure/identity");

const client = new MixedRealityStsClient(accountId, accountDomain, new DefaultAzureCredential());

Conceitos-chave

MixedRealityStsClient

É MixedRealityStsClient a biblioteca de cliente utilizada para aceder ao Mixed Reality STS para obter um token de acesso.

Os tokens obtidos a partir do Mixed Reality STS têm uma duração de 24 horas.

Devolver Valor

O valor devolvido para uma chamada getToken com êxito é um GetTokenResponse, que é um AccessToken de @azure/core-http.

Exemplos

Obter um token de acesso

const { AzureKeyCredential } = require("@azure/core-auth");

const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");

const accountId = "<ACCOUNTD ID>";
const accountDomain = "<ACCOUNT_DOMAIN>";
const accountKey = "<ACCOUNT_KEY>";

const client = new MixedRealityStsClient(
  accountId,
  accountDomain,
  new AzureKeyCredential(accountKey)
);

const token = await client.getToken();

Veja os exemplos de autenticação acima ou a Identidade do Azure para obter cenários de autenticação mais complexos.

Utilizar o token de acesso numa biblioteca de cliente Mixed Reality

Algumas Mixed Reality bibliotecas de cliente podem aceitar um token de acesso em vez de uma credencial. Por exemplo:

// GetMixedRealityAccessTokenFromWebService is a hypothetical method that retrieves
// a Mixed Reality access token from a web service. The web service would use the
// MixedRealityStsClient and credentials to obtain an access token to be returned
// to the client.
const accessToken = await GetMixedRealityAccessTokenFromWebService();

const account = new SpatialAnchorsAccount(accountId, accountDomain);
const client = new SpatialAnchorsClient(account, accessToken);

Nota: a SpatialAnchorsClient utilização acima é hipotética e pode não refletir a biblioteca real. Consulte a documentação da biblioteca de cliente que está a utilizar para determinar se e como pode ser suportado.

Resolução de problemas

Registo

Ativar o registo pode ajudar a descobrir informações úteis sobre falhas. Para ver um registo de pedidos HTTP e respostas, defina a variável de AZURE_LOG_LEVEL ambiente como info. Em alternativa, o registo pode ser ativado no runtime ao chamar setLogLevel no @azure/logger:

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

Para obter instruções mais detalhadas sobre como ativar registos, pode ver os documentos do pacote de @azure/logger.

Passos seguintes

Veja o diretório de exemplos para obter exemplos detalhados sobre como utilizar esta biblioteca.

Contribuir

Agradecemos todas as contribuições e sugestões para este projeto. A maioria das contribuições requerem que celebre um Contrato de Licença de Contribuição (CLA) no qual se declare que tem o direito de conceder e que, na verdade, concede-nos os direitos para utilizar a sua contribuição. Para mais detalhes, visite https://cla.microsoft.com.

Quando submete um pedido Pull, um bot do CLA determina automaticamente se tem de fornecer um CLA e decorar o PR de forma adequada (por exemplo, etiqueta, comentário). Só tem de seguir as instruções fornecidas pelo bot. Apenas terá de fazer isto uma vez em todos os repositórios com o nosso CLA.

Este projeto adotou o Microsoft Open Source Code of Conduct (Código de Conduta do Microsoft Open Source). Para obter mais informações, consulte as FAQ do Código de Conduta ou o contacto opencode@microsoft.com com quaisquer perguntas ou comentários adicionais.

Se quiser contribuir para esta biblioteca, leia o guia de contribuição para saber mais sobre como criar e testar o código.

Impressões