Share via


Azure Mixed Reality Authentication-klientbibliotek för JavaScript – version 1.0.0-beta.1

Mixed Reality tjänster som Azure Spatial Anchors, Azure Remote Rendering och andra använder Mixed Reality security token service (STS) för autentisering. Det här paketet stöder utbyte Mixed Reality kontoautentiseringsuppgifter för en åtkomsttoken från STS som kan användas för att komma åt Mixed Reality tjänster.

Nyckellänkar:

Mixed Reality tjänstautentiseringsdiagram

Komma igång

Miljöer som stöds för närvarande

Förutsättningar

Installera @azure/mixed-reality-authentication-paketet

Installera Azure Mixed Reality Authentication-klientbiblioteket för JavaScript med npm:

npm install @azure/mixed-reality-authentication

Skapa och autentisera en MixedRealityStsClient

Om du vill skapa ett klientobjekt för att begära en åtkomsttoken för en Mixed Reality-tjänst behöver account identifieraccount domain du och för din Mixed Reality-tjänstresurs och en credential.

Mixed Reality tjänster stöder några olika former av autentisering:

  • Kontonyckelautentisering
    • Med kontonycklar kan du snabbt komma igång med att använda Mixed Reality tjänster. Men innan du distribuerar programmet till produktion rekommenderar vi att du uppdaterar appen så att den använder Azure AD autentisering.
  • Tokenautentisering i Azure Active Directory (AD)
    • Om du skapar ett företagsprogram och ditt företag använder Azure AD som sitt identitetssystem kan du använda användarbaserad Azure AD autentisering i din app. Sedan beviljar du åtkomst till dina Mixed Reality-konton med hjälp av dina befintliga Azure AD säkerhetsgrupper. Du kan också bevilja åtkomst direkt till användare i din organisation.
    • Annars rekommenderar vi att du hämtar Azure AD token från en webbtjänst som stöder din app. Vi rekommenderar den här metoden för produktionsprogram eftersom du kan undvika att bädda in autentiseringsuppgifterna för åtkomst till en Mixed Reality tjänst i klientprogrammet.

Se här för detaljerade instruktioner och information.

Använda kontonyckelautentisering

Använd Azure-portalen för att bläddra till din Mixed Reality-tjänstresurs och hämta en account key.

När du har en kontonyckel kan du använda klassen för att autentisera AzureKeyCredential klienten på följande sätt:

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

Obs! Kontonyckelautentisering rekommenderas inte för produktionsprogram.

Använda en Azure Active Directory-autentiseringsuppgift

Kontonyckelautentisering används i de flesta exempel, men du kan också autentisera med Azure Active Directory med hjälp av Azure Identity-biblioteket. Det här är den rekommenderade metoden för produktionsprogram. Om du vill använda DefaultAzureCredential-providern som visas nedan eller andra leverantörer av autentiseringsuppgifter som medföljer Azure SDK installerar @azure/identity du paketet:

npm install @azure/identity

Du måste också registrera ett nytt AAD-program och bevilja åtkomst till din Mixed Reality resurs genom att tilldela lämplig roll för din Mixed Reality-tjänst till tjänstens huvudnamn.

Ange värdena för klient-ID, klient-ID och klienthemlighet för AAD-programmet som miljövariabler: 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());

Viktiga begrepp

MixedRealityStsClient

MixedRealityStsClient är det klientbibliotek som används för att komma åt Mixed Reality STS för att hämta en åtkomsttoken.

Token som hämtas från Mixed Reality STS har en livslängd på 24 timmar.

Returvärde

Returvärdet för ett lyckat anrop till getToken är en GetTokenResponse, som är en AccessToken från @azure/core-http.

Exempel

Hämta en åtkomsttoken

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

Mer komplexa autentiseringsscenarier finns i autentiseringsexemplen ovan eller Azure Identity .

Använda åtkomsttoken i ett Mixed Reality klientbibliotek

Vissa Mixed Reality klientbibliotek kan acceptera en åtkomsttoken i stället för en autentiseringsuppgift. Exempel:

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

Obs! Användningen SpatialAnchorsClient ovan är hypotetisk och kanske inte återspeglar det faktiska biblioteket. Läs dokumentationen för klientbiblioteket som du använder för att avgöra om och hur detta kan stödjas.

Felsökning

Loggning

Aktivering av loggning kan hjälpa dig att hitta användbar information om fel. Om du vill se en logg över HTTP-begäranden och svar anger du AZURE_LOG_LEVEL miljövariabeln till info. Du kan också aktivera loggning vid körning genom att anropa setLogLevel i @azure/logger:

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

setLogLevel("info");

Mer detaljerade anvisningar om hur du aktiverar loggar finns i @azure-/loggningspaketdokumenten.

Nästa steg

Ta en titt på exempelkatalogen för detaljerade exempel på hur du använder det här biblioteket.

Bidra

Det här projektet välkomnar bidrag och förslag. Merparten av bidragen kräver att du godkänner ett licensavtal för bidrag, där du deklarerar att du har behörighet att bevilja oss rättigheten att använda ditt bidrag, och att du dessutom uttryckligen gör så. Mer information finns på https://cla.microsoft.com.

När du skickar en pull-förfrågan avgör en CLA-robot automatiskt om du måste tillhandahålla ett licensavtal för bidrag med lämplig PR (t.ex. etikett eller kommentar). Följ bara robotens anvisningar. Du behöver bara göra detta en gång för alla repor som använder vårt licensavtal för bidrag.

Det här projektet använder sig av Microsofts uppförandekod för öppen källkod. Mer information finns i Vanliga frågor och svar om uppförandekod eller kontakt opencode@microsoft.com med ytterligare frågor eller kommentarer.

Om du vill bidra till det här biblioteket kan du läsa bidragsguiden för att lära dig mer om hur du skapar och testar koden.

Visningar