Azure Mixed Reality Authentication-clientbibliotheek voor JavaScript - versie 1.0.0-beta.1
Mixed Reality-services, zoals Azure Remote Rendering, gebruiken de Mixed Reality-beveiligingstokenservice (STS) voor verificatie. Dit pakket ondersteunt het uitwisselen van mixed reality-accountreferenties voor een toegangstoken van de STS die kunnen worden gebruikt voor toegang tot Mixed Reality-services.
Sleutelkoppelingen:
Slag
Momenteel ondersteunde omgevingen
Voorwaarden
- Een Azure-abonnement.
- U moet een account hebben met een Azure Mixed Reality-service:
- Bekendheid met de verificatie- en referentieconcepten uit de Azure Identity-bibliotheek.
Het @azure/mixed-reality-authentication
-pakket installeren
Installeer de Azure Mixed Reality Authentication-clientbibliotheek voor JavaScript met npm
:
npm install @azure/mixed-reality-authentication
Een MixedRealityStsClient
maken en verifiëren
Als u een clientobject wilt maken om een toegangstoken aan te vragen voor een Mixed Reality-service, hebt u de account identifier
en account domain
van uw Mixed Reality-serviceresource en een credential
nodig.
Mixed Reality-services ondersteunen een aantal verschillende vormen van verificatie:
- Verificatie van accountsleutel
- Met accountsleutels kunt u snel aan de slag met het gebruik van Mixed Reality-services. Maar voordat u uw toepassing in productie implementeert, raden we u aan uw app bij te werken voor het gebruik van Azure AD-verificatie.
- Verificatie van Azure Active Directory-token (AD)
- Als u een bedrijfstoepassing bouwt en uw bedrijf Azure AD als identiteitssysteem gebruikt, kunt u Azure AD-verificatie op basis van gebruikers gebruiken in uw app. Vervolgens verleent u toegang tot uw Mixed Reality-accounts met behulp van uw bestaande Azure AD-beveiligingsgroepen. U kunt ook rechtstreeks toegang verlenen aan gebruikers in uw organisatie.
- Anders wordt u aangeraden Azure AD-tokens te verkrijgen van een webservice die ondersteuning biedt voor uw app. We raden deze methode aan voor productietoepassingen, omdat u hiermee kunt voorkomen dat u de referenties voor toegang tot een Mixed Reality-service in uw clienttoepassing insluit.
Verificatie van accountsleutels gebruiken
Gebruik de Azure Portal om naar uw Mixed Reality-serviceresource te bladeren en een account key
op te halen.
Zodra u een accountsleutel hebt, kunt u de AzureKeyCredential
-klasse gebruiken om de client als volgt te verifiëren:
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)
);
Opmerking: verificatie van accountsleutels wordt niet aanbevolen voor productietoepassingen.
Een Azure Active Directory-referentie gebruiken
Verificatie van accountsleutels wordt in de meeste voorbeelden gebruikt, maar u kunt zich ook verifiëren met Azure Active Directory met behulp van de Azure Identity-bibliotheek. Dit is de aanbevolen methode voor productietoepassingen. Als u de DefaultAzureCredential- provider wilt gebruiken die hieronder wordt weergegeven, of andere referentieproviders die zijn opgegeven bij de Azure SDK, installeert u het @azure/identity
-pakket:
npm install @azure/identity
U moet ook [een nieuwe AAD-toepassing registreren][register_aad_app] en toegang verlenen tot uw Mixed Reality-resource door de juiste rol voor uw Mixed Reality-service toe te wijzen aan uw service-principal.
Stel de waarden van de client-id, tenant-id en clientgeheim van de AAD-toepassing in als omgevingsvariabelen: 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());
Sleutelbegrippen
MixedRealityStsClient
De MixedRealityStsClient
is de clientbibliotheek die wordt gebruikt voor toegang tot de Mixed Reality STS om een toegangstoken op te halen.
Tokens die zijn verkregen van de Mixed Reality STS hebben een levensduur van 24 uur.
Retourwaarde
De retourwaarde voor een geslaagde aanroep naar getToken
is een GetTokenResponse
, een AccessToken
van @azure/core-http-.
Voorbeelden
Een toegangstoken ophalen
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();
Zie Azure Identity voor complexere verificatiescenario's.
Het toegangstoken gebruiken in een Mixed Reality-clientbibliotheek
Sommige Mixed Reality-clientbibliotheken accepteren mogelijk een toegangstoken in plaats van een referentie. Bijvoorbeeld:
// 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);
Opmerking: het bovenstaande SpatialAnchorsClient
gebruik is hypothetisch en geeft mogelijk niet de werkelijke bibliotheek weer. Raadpleeg de documentatie voor de clientbibliotheek die u gebruikt om te bepalen of en hoe dit kan worden ondersteund.
Probleemoplossing
Logboekregistratie
Het inschakelen van logboekregistratie kan helpen nuttige informatie over fouten te ontdekken. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de omgevingsvariabele AZURE_LOG_LEVEL
in op info
. U kunt logboekregistratie ook tijdens runtime inschakelen door setLogLevel
aan te roepen in de @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Voor meer gedetailleerde instructies over het inschakelen van logboeken, kunt u de @azure/logger pakketdocumentenbekijken.
Volgende stappen
Bekijk de voorbeelden map voor gedetailleerde voorbeelden over het gebruik van deze bibliotheek.
Bijdragen
Dit project verwelkomt bijdragen en suggesties. Voor de meeste bijdragen moet u akkoord gaan met een Licentieovereenkomst voor inzenders (CLA) waarin wordt aangegeven dat u het recht hebt om, en daadwerkelijk, ons de rechten te verlenen om uw bijdrage te gebruiken. Ga naar https://cla.microsoft.comvoor meer informatie.
Wanneer u een pull-aanvraag indient, bepaalt een CLA-bot automatisch of u een CLA moet opgeven en de pull-aanvraag op de juiste wijze moet inrichten (bijvoorbeeld label, opmerking). Volg gewoon de instructies van de bot. U hoeft dit slechts eenmaal te doen voor alle opslagplaatsen met behulp van onze CLA.
Dit project heeft de Microsoft Open Source-gedragscodeaangenomen. Zie de Veelgestelde vragen over gedragscodes voor meer informatie of neem contact op met opencode@microsoft.com met eventuele aanvullende vragen of opmerkingen.
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de gids voor bijdragen voor meer informatie over het bouwen en testen van de code.
Verwante projecten
Azure SDK for JavaScript