Freigeben über


Azure Mixed Reality-Authentifizierungsclientbibliothek für JavaScript – Version 1.0.0-beta.1

Mixed Reality-Dienste wie Azure Remote Rendering verwenden den Mixed Reality-Sicherheitstokendienst (STS) für die Authentifizierung. Dieses Paket unterstützt den Austausch von Mixed Reality-Kontoanmeldeinformationen für ein Zugriffstoken vom STS, das für den Zugriff auf Mixed Reality-Dienste verwendet werden kann.

Wichtige Links:

Erste Schritte

Derzeit unterstützte Umgebungen

Voraussetzungen

Installieren des @azure/mixed-reality-authentication-Pakets

Installieren Sie die Azure Mixed Reality-Authentifizierungsclientbibliothek für JavaScript mit npm:

npm install @azure/mixed-reality-authentication

Erstellen und Authentifizieren einer MixedRealityStsClient

Zum Erstellen eines Clientobjekts zum Anfordern eines Zugriffstokens für einen Mixed Reality-Dienst benötigen Sie die account identifier und account domain Ihrer Mixed Reality-Dienstressource und eine credential.

Mixed Reality-Dienste unterstützen einige verschiedene Authentifizierungsformen:

  • Kontoschlüsselauthentifizierung
    • Mit Kontoschlüsseln können Sie schnell mit Mixed Reality-Diensten beginnen. Bevor Sie Ihre Anwendung jedoch in der Produktion bereitstellen, sollten Sie Ihre App so aktualisieren, dass sie die Azure AD-Authentifizierung verwendet.
  • Azure Active Directory (AD)-Tokenauthentifizierung
    • Wenn Sie eine Unternehmensanwendung erstellen und Ihr Unternehmen Azure AD als Identitätssystem verwendet, können Sie die benutzerbasierte Azure AD-Authentifizierung in Ihrer App verwenden. Anschließend gewähren Sie Mit Ihren vorhandenen Azure AD-Sicherheitsgruppen Zugriff auf Ihre Mixed Reality-Konten. Sie können den Zugriff auch direkt auf Benutzer in Ihrer Organisation gewähren.
    • Andernfalls wird empfohlen, Azure AD-Token von einem Webdienst abzurufen, der Ihre App unterstützt. Wir empfehlen diese Methode für Produktionsanwendungen, da sie es Ihnen ermöglicht, das Einbetten der Anmeldeinformationen für den Zugriff auf einen Mixed Reality-Dienst in Ihrer Clientanwendung zu vermeiden.

Verwenden der Kontoschlüsselauthentifizierung

Verwenden Sie das Azure Portal, um zu Ihrer Mixed Reality-Dienstressource zu navigieren und eine account keyabzurufen.

Nachdem Sie über einen Kontoschlüssel verfügen, können Sie die AzureKeyCredential Klasse verwenden, um den Client wie folgt zu authentifizieren:

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

Hinweis: Die Kontoschlüsselauthentifizierung wird nicht empfohlen, für Produktionsanwendungen zu verwenden.

Verwenden von Azure Active Directory-Anmeldeinformationen

Die Kontoschlüsselauthentifizierung wird in den meisten Beispielen verwendet, Sie können sich aber auch mit Azure Active Directory mithilfe der Azure Identity-Bibliothekauthentifizieren. Dies ist die empfohlene Methode für Produktionsanwendungen. Um den unten gezeigten DefaultAzureCredential Anbieter oder andere Anmeldeinformationsanbieter zu verwenden, die mit dem Azure SDK bereitgestellt werden, installieren Sie bitte das @azure/identity Paket:

npm install @azure/identity

Außerdem müssen Sie [eine neue AAD-Anwendung][register_aad_app] registrieren und Zugriff auf Ihre Mixed Reality-Ressource gewähren, indem Sie Ihrem Dienstprinzipal die entsprechende Rolle für Ihren Mixed Reality-Dienst zuweisen.

Legen Sie die Werte der Client-ID, der Mandanten-ID und des geheimen Clientschlüssels der AAD-Anwendung als Umgebungsvariablen fest: 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());

Schlüsselkonzepte

MixedRealityStsClient

Die MixedRealityStsClient ist die Clientbibliothek, die für den Zugriff auf den Mixed Reality-STS verwendet wird, um ein Zugriffstoken abzurufen.

Token, die vom Mixed Reality STS abgerufen werden, haben eine Lebensdauer von 24 Stunden.

Rückgabewert

Der Rückgabewert für einen erfolgreichen Aufruf von getToken ist ein GetTokenResponse, bei dem es sich um eine AccessToken aus @azure/core-http-handelt.

Beispiele

Abrufen eines Zugriffstokens

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

Weitere komplexere Authentifizierungsszenarien finden Sie unter Azure Identity.

Verwenden des Zugriffstokens in einer Mixed Reality-Clientbibliothek

Einige Mixed Reality-Clientbibliotheken akzeptieren möglicherweise anstelle von Anmeldeinformationen ein Zugriffstoken. Zum Beispiel:

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

Hinweis: Die oben genannte SpatialAnchorsClient Verwendung ist hypothetisch und spiegelt möglicherweise nicht die tatsächliche Bibliothek wider. In der Dokumentation finden Sie die Clientbibliothek, die Sie verwenden, um zu ermitteln, ob und wie dies unterstützt werden kann.

Fehlerbehebung

Protokollierung

Das Aktivieren der Protokollierung kann hilfreiche Informationen zu Fehlern aufdecken. Um ein Protokoll von HTTP-Anforderungen und -Antworten anzuzeigen, legen Sie die AZURE_LOG_LEVEL Umgebungsvariable auf infofest. Alternativ kann die Protokollierung zur Laufzeit durch Aufrufen von setLogLevel im @azure/loggeraktiviert werden:

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

setLogLevel("info");

Ausführlichere Anweisungen zum Aktivieren von Protokollen finden Sie in den @azure/Logger-Paketdokumenten.

Nächste Schritte

Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie in den Beispielen Verzeichnis.

Beitragend

Dieses Projekt begrüßt Beiträge und Vorschläge. Die meisten Beiträge erfordern, dass Sie einem Mitwirkenden-Lizenzvertrag (CLA) zustimmen, der erklärt, dass Sie das Recht haben, uns tatsächlich die Rechte zur Nutzung Ihres Beitrags zu gewähren. Weitere Informationen finden Sie unter https://cla.microsoft.com.

Wenn Sie eine Pullanfrage einreichen, bestimmt ein CLA-Bot automatisch, ob Sie eine CLA bereitstellen und die PR entsprechend dekorieren müssen (z. B. Bezeichnung, Kommentar). Folgen Sie einfach den Anweisungen des Bots. Sie müssen dies nur einmal über alle Reposs hinweg tun, indem Sie unsereN CLA verwenden.

Dieses Projekt hat den Microsoft Open Source Code of Conductübernommen. Weitere Informationen finden Sie im Code of Conduct FAQ oder wenden Sie sich an opencode@microsoft.com mit weiteren Fragen oder Kommentaren.

Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie bitte den mitwirkenden Leitfaden, um mehr über das Erstellen und Testen des Codes zu erfahren.

Aufrufe