Azure Mixed Reality Authentication-clientbibliotheek voor JavaScript - versie 1.0.0-beta.1
Mixed Reality services, zoals Azure Spatial Anchors, Azure Remote Rendering en andere, gebruiken de Mixed Reality-beveiligingstokenservice (STS) voor verificatie. Dit pakket ondersteunt het uitwisselen van Mixed Reality accountreferenties voor een toegangstoken van de STS dat kan worden gebruikt voor toegang tot Mixed Reality services.
Belangrijke koppelingen:
Aan de slag
Momenteel ondersteunde omgevingen
Vereisten
- Een Azure-abonnement.
- U moet een account hebben met een Azure Mixed Reality-service:
- Bekendheid met de verificatie- en referentieconcepten van de Azure Identity-bibliotheek.
Installeer het pakket @azure/mixed-reality-authentication
Installeer de Azure Mixed Reality Authentication-clientbibliotheek voor JavaScript met npm
:
npm install @azure/mixed-reality-authentication
Een maken en verifiëren MixedRealityStsClient
Als u een clientobject wilt maken om een toegangstoken voor een Mixed Reality-service aan te vragen, 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 met 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.
- Azure Active Directory-tokenverificatie (AD)
- Als u een bedrijfstoepassing bouwt en uw bedrijf Azure AD als identiteitssysteem gebruikt, kunt u gebruikersgebaseerde Azure AD-verificatie in uw app gebruiken. 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 raden we u aan 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 insluit voor toegang tot een Mixed Reality-service in uw clienttoepassing.
Kijk hier voor gedetailleerde instructies en informatie.
Accountsleutelverificatie gebruiken
Gebruik 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 als volgt gebruiken om de client 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 bij de Azure SDK worden geleverd, installeert u het @azure/identity
pakket:
npm install @azure/identity
U moet ook een nieuwe AAD-toepassing registreren 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());
Belangrijkste concepten
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
. Dit is 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 de bovenstaande verificatievoorbeelden of 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 SpatialAnchorsClient
bovenstaande gebruik is hypothetisch en weerspiegelt mogelijk niet de werkelijke bibliotheek. Raadpleeg de documentatie voor de clientbibliotheek die u gebruikt om te bepalen of en hoe dit kan worden ondersteund.
Problemen oplossen
Logboekregistratie
Het inschakelen van logboekregistratie kan helpen bij het ontdekken van nuttige informatie over fouten. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de AZURE_LOG_LEVEL
omgevingsvariabele in op info
. Logboekregistratie kan ook worden ingeschakeld tijdens runtime door aan te roepen setLogLevel
in de @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Voor meer gedetailleerde instructies over het inschakelen van logboeken kunt u de @azure-/loggerpakketdocumenten bekijken.
Volgende stappen
Bekijk de map met voorbeelden voor gedetailleerde voorbeelden van het gebruik van deze bibliotheek.
Bijdragen
Wij verwelkomen bijdragen en suggesties voor dit project. Voor de meeste bijdragen moet u instemmen met een licentieovereenkomst voor bijdragers (CLA: Contributor License Agreement) waarin u verklaart dat u gerechtigd bent ons het recht te geven uw bijdrage te gebruiken, en dat u dit ook doet. Ga naar https://cla.microsoft.com voor meer informatie.
Wanneer u een pull-aanvraag indient, wordt met een CLA-bot automatisch bepaald of u een CLA moet verschaffen en wordt de pull-aanvraag dienovereenkomstig opgemaakt (bijvoorbeeld met een label of commentaar). Volg gewoon de instructies van de bot. U hoeft dit maar eenmaal te doen voor alle repo's waar gebruik wordt gemaakt van onze CLA.
Op dit project is de Microsoft Open Source Code of Conduct (Microsoft Open Source-gedragscode) van toepassing. Zie de Veelgestelde vragen over de gedragscode voor meer informatie of neem contact op opencode@microsoft.com met eventuele aanvullende vragen of opmerkingen.
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.
Verwante projecten
Azure SDK for JavaScript