Biblioteka klienta usługi Azure Mixed Reality Authentication dla języka JavaScript — wersja 1.0.0-beta.1
Mixed Reality usług, takich jak Azure Spatial Anchors, Azure Remote Rendering i inne, do uwierzytelniania użyj usługi Mixed Reality tokenu zabezpieczającego (STS). Ten pakiet obsługuje wymianę poświadczeń konta Mixed Reality dla tokenu dostępu z usługi STS, których można użyć do uzyskiwania dostępu do usług Mixed Reality.
Linki kluczowe:
Wprowadzenie
Obecnie obsługiwane środowiska
Wymagania wstępne
- Subskrypcja platformy Azure.
- Musisz mieć konto z usługą Azure Mixed Reality:
- Znajomość pojęć dotyczących uwierzytelniania i poświadczeń z biblioteki tożsamości platformy Azure.
Instalowanie pakietu @azure/mixed-reality-authentication
Zainstaluj bibliotekę klienta usługi Azure Mixed Reality Authentication dla języka JavaScript przy użyciu polecenia npm
:
npm install @azure/mixed-reality-authentication
Tworzenie i uwierzytelnianie MixedRealityStsClient
Aby utworzyć obiekt klienta w celu zażądania tokenu dostępu dla usługi Mixed Reality, potrzebne będą elementy account identifier
i account domain
zasobu usługi Mixed Reality oraz credential
.
usługi Mixed Reality obsługują kilka różnych form uwierzytelniania:
- Uwierzytelnianie za pomocą klucza konta
- Klucze kont umożliwiają szybkie rozpoczęcie pracy z usługami Mixed Reality. Jednak przed wdrożeniem aplikacji w środowisku produkcyjnym zalecamy zaktualizowanie aplikacji tak, aby korzystała z uwierzytelniania Azure AD.
- Uwierzytelnianie tokenu usługi Azure Active Directory (AD)
- Jeśli tworzysz aplikację dla przedsiębiorstw, a twoja firma używa Azure AD jako systemu tożsamości, możesz użyć uwierzytelniania Azure AD opartego na użytkownikach w aplikacji. Następnie przyznasz dostęp do kont Mixed Reality przy użyciu istniejących grup zabezpieczeń Azure AD. Możesz również udzielić dostępu bezpośrednio użytkownikom w organizacji.
- W przeciwnym razie zalecamy uzyskanie Azure AD tokenów z usługi internetowej obsługującej aplikację. Zalecamy tę metodę dla aplikacji produkcyjnych, ponieważ pozwala uniknąć osadzania poświadczeń w celu uzyskania dostępu do usługi Mixed Reality w aplikacji klienckiej.
Zobacz tutaj , aby uzyskać szczegółowe instrukcje i informacje.
Korzystanie z uwierzytelniania za pomocą klucza konta
Użyj witryny Azure Portal, aby przejść do zasobu usługi Mixed Reality i pobrać element account key
.
Po utworzeniu klucza konta możesz użyć AzureKeyCredential
klasy , aby uwierzytelnić klienta w następujący sposób:
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)
);
Uwaga: uwierzytelnianie za pomocą klucza konta nie jest zalecane w przypadku aplikacji produkcyjnych.
Używanie poświadczeń usługi Azure Active Directory
W większości przykładów jest używane uwierzytelnianie za pomocą klucza konta, ale można również uwierzytelniać się w usłudze Azure Active Directory przy użyciu biblioteki tożsamości platformy Azure. Jest to zalecana metoda dla aplikacji produkcyjnych. Aby użyć podanego poniżej dostawcy DefaultAzureCredential lub innych dostawców poświadczeń dostarczanych z zestawem Azure SDK, zainstaluj @azure/identity
pakiet:
npm install @azure/identity
Musisz również zarejestrować nową aplikację usługi AAD i udzielić dostępu do zasobu Mixed Reality, przypisując odpowiednią rolę dla usługi Mixed Reality do jednostki usługi.
Ustaw wartości identyfikatora klienta, identyfikatora dzierżawy i klucza tajnego klienta aplikacji usługi AAD jako zmienne środowiskowe: AZURE_CLIENT_ID
, , AZURE_CLIENT_SECRET
AZURE_TENANT_ID
.
const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");
const { DefaultAzureCredential } = require("@azure/identity");
const client = new MixedRealityStsClient(accountId, accountDomain, new DefaultAzureCredential());
Kluczowe pojęcia
MixedRealityStsClient
Jest MixedRealityStsClient
to biblioteka klienta używana do uzyskiwania dostępu do usługi Mixed Reality STS w celu uzyskania tokenu dostępu.
Tokeny uzyskane z usługi Mixed Reality STS mają okres istnienia 24 godzin.
Wartość zwracana
Wartość zwracana dla pomyślnego wywołania getToken
metody to GetTokenResponse
, który jest elementem AccessToken
z @azure/core-http.
Przykłady
Pobieranie tokenu dostępu
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();
Zapoznaj się z powyższymi przykładami uwierzytelniania lub usługą Azure Identity , aby uzyskać bardziej złożone scenariusze uwierzytelniania.
Używanie tokenu dostępu w bibliotece klienta Mixed Reality
Niektóre Mixed Reality biblioteki klienckie mogą akceptować token dostępu zamiast poświadczeń. Przykład:
// 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);
Uwaga: powyższe SpatialAnchorsClient
użycie jest hipotetyczne i może nie odzwierciedlać rzeczywistej biblioteki. Zapoznaj się z dokumentacją biblioteki klienta, której używasz, aby określić, czy i jak może to być obsługiwane.
Rozwiązywanie problemów
Rejestrowanie
Włączenie rejestrowania może pomóc odkryć przydatne informacje o błędach. Aby wyświetlić dziennik żądań i odpowiedzi HTTP, ustaw zmienną AZURE_LOG_LEVEL
środowiskową na info
. Alternatywnie rejestrowanie można włączyć w czasie wykonywania, wywołując setLogLevel
polecenie w pliku @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Aby uzyskać bardziej szczegółowe instrukcje dotyczące włączania dzienników, zapoznaj się z dokumentami dotyczącymi pakietów @azure/rejestratora.
Następne kroki
Zapoznaj się z katalogiem samples , aby zapoznać się ze szczegółowymi przykładami dotyczącymi korzystania z tej biblioteki.
Współtworzenie
W tym projekcie zachęcamy do współtworzenia i zgłaszania sugestii. Współtworzenie w większości przypadków wymaga zgody na umowę licencyjną dotyczącą współautorów (CLA, Contributor License Agreement), zgodnie z którą współautor ma prawo udzielić i faktycznie udziela nam praw do używania wytworzonej przez siebie zawartości. Aby uzyskać szczegółowe informacje, odwiedź stronę https://cla.microsoft.com.
Po przesłaniu żądania ściągnięcia robot CLA automatycznie określi, czy musisz przekazać umowę CLA, i doda odpowiednie informacje do tego żądania (na przykład etykietę czy komentarz). Po prostu postępuj zgodnie z instrukcjami robota. Wystarczy zrobić to raz dla wszystkich repozytoriów, w przypadku których jest używana nasza umowa CLA.
W tym projekcie przyjęto Kodeks postępowania oprogramowania Open Source firmy Microsoft. Aby uzyskać więcej informacji, zobacz Często zadawane pytania dotyczące kodeksu postępowania lub skontaktuj się z opencode@microsoft.com dodatkowymi pytaniami lub komentarzami.
Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik współtworzenia , aby dowiedzieć się więcej na temat tworzenia i testowania kodu.
Powiązane projekty
Azure SDK for JavaScript