Condividi tramite


Libreria client di Autenticazione di Realtà mista di Azure per JavaScript - versione 1.0.0-beta.1

I servizi di realtà mista, ad esempio Rendering remoto di Azure, usano il servizio token di sicurezza di realtà mista per l'autenticazione. Questo pacchetto supporta lo scambio di credenziali dell'account di realtà mista per un token di accesso dal servizio token di sicurezza che può essere usato per accedere ai servizi di realtà mista.

Collegamenti chiave:

Introduttiva

Ambienti attualmente supportati

Prerequisiti

  • Una sottoscrizione di Azure .
  • È necessario avere un account con un servizio Realtà mista di Azure:
    • di Rendering remoto di Azure
  • Familiarità con i concetti relativi all'autenticazione e alle credenziali della libreria di identità di Azure .

Installare il pacchetto @azure/mixed-reality-authentication

Installare la libreria client di Autenticazione di realtà mista di Azure per JavaScript con npm:

npm install @azure/mixed-reality-authentication

Creare ed autenticare un MixedRealityStsClient

Per creare un oggetto client per richiedere un token di accesso per un servizio realtà mista, sono necessari i account identifier e account domain della risorsa del servizio realtà mista e un credential.

I servizi di realtà mista supportano diverse forme di autenticazione:

  • Autenticazione della chiave dell'account
    • Le chiavi dell'account consentono di iniziare rapidamente a usare i servizi di realtà mista. Ma prima di distribuire l'applicazione nell'ambiente di produzione, è consigliabile aggiornare l'app per usare l'autenticazione di Azure AD.
  • Autenticazione del token di Azure Active Directory (AD)
    • Se si sta creando un'applicazione aziendale e l'azienda usa Azure AD come sistema di identità, è possibile usare l'autenticazione di Azure AD basata sull'utente nell'app. Si concede quindi l'accesso agli account di realtà mista usando i gruppi di sicurezza di Azure AD esistenti. È anche possibile concedere l'accesso direttamente agli utenti dell'organizzazione.
    • In caso contrario, è consigliabile ottenere i token di Azure AD da un servizio Web che supporta l'app. È consigliabile usare questo metodo per le applicazioni di produzione perché consente di evitare di incorporare le credenziali per l'accesso a un servizio di realtà mista nell'applicazione client.

Uso dell'autenticazione della chiave dell'account

Usare il del portale di Azure per passare alla risorsa del servizio realtà mista e recuperare un account key.

Dopo aver ottenuto una chiave dell'account, è possibile usare la classe AzureKeyCredential per autenticare il client come indicato di seguito:

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: l'autenticazione della chiave dell'account è non consigliata per le applicazioni di produzione.

Uso di credenziali di Azure Active Directory

L'autenticazione della chiave dell'account viene usata nella maggior parte degli esempi, ma è anche possibile eseguire l'autenticazione con Azure Active Directory usando libreria di identità di Azure. Questo è il metodo consigliato per le applicazioni di produzione. Per usare il provider DefaultAzureCredential illustrato di seguito o altri provider di credenziali forniti con Azure SDK, installare il pacchetto @azure/identity:

npm install @azure/identity

Sarà anche necessario [registrare una nuova applicazione AAD][register_aad_app] e concedere l'accesso alla risorsa realtà mista assegnando il ruolo appropriato per il servizio realtà mista all'entità servizio.

Impostare i valori dell'ID client, dell'ID tenant e del segreto client dell'applicazione AAD come variabili di 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());

Concetti chiave

MixedRealityStsClient

Il MixedRealityStsClient è la libreria client usata per accedere al servizio token di sicurezza di realtà mista per ottenere un token di accesso.

I token ottenuti dal servizio token di sicurezza di realtà mista hanno una durata di 24 ore.

Valore restituito

Il valore restituito per una chiamata riuscita a getToken è un GetTokenResponse, che è un AccessToken da @azure/core-http.

Esempi

Recuperare un token di accesso

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();

Per scenari di autenticazione più complessi, vedere azure Identity.

Uso del token di accesso in una libreria client di Realtà mista

Alcune librerie client di realtà mista potrebbero accettare un token di accesso al posto di una credenziale. Per esempio:

// 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: l'utilizzo SpatialAnchorsClient precedente è ipotetico e potrebbe non riflettere la libreria effettiva. Consultare la documentazione per la libreria client in uso per determinare se e come potrebbe essere supportato.

Risoluzione dei problemi

Registrazione

L'abilitazione della registrazione può aiutare a individuare informazioni utili sugli errori. Per visualizzare un log di richieste e risposte HTTP, impostare la variabile di ambiente AZURE_LOG_LEVEL su info. In alternativa, la registrazione può essere abilitata in fase di esecuzione chiamando setLogLevel nel @azure/logger:

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

setLogLevel("info");

Per istruzioni più dettagliate su come abilitare i log, è possibile esaminare la documentazione del pacchetto @azure/logger.

Passaggi successivi

Per esempi dettagliati su come usare questa libreria, vedere gli esempi di directory.

Contribuire

Questo progetto accoglie contributi e suggerimenti. La maggior parte dei contributi richiede l'accettazione di un Contratto di licenza collaboratore (CLA) che dichiara di avere il diritto e, in realtà, concedere a Microsoft i diritti per l'uso del contributo. Per informazioni dettagliate, visitare https://cla.microsoft.com.

Quando si invia una richiesta pull, un bot CLA determinerà automaticamente se è necessario fornire un cla e decorare la richiesta pull in modo appropriato (ad esempio, etichetta, commento). Seguire semplicemente le istruzioni fornite dal bot. Dovrai eseguire questa operazione una sola volta in tutti i repository usando la nostra cla.

Questo progetto ha adottato la codice di comportamento Microsoft Open Source. Per altre informazioni, vedere domande frequenti sul codice di comportamento o contattare opencode@microsoft.com con eventuali domande o commenti aggiuntivi.

Per contribuire a questa libreria, leggere la guida contribuire per altre informazioni su come compilare e testare il codice.

impressioni