Dela via


Byggstatus

Klientbibliotek för Azure Mixed Reality Authentication Package för Python – version 1.0.0b1

Mixed Reality tjänster som Azure Spatial Anchors, Azure Remote Rendering och andra använder Mixed Reality säkerhetstokentjänst (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.

diagram över Mixed Reality-tjänstautentisering

Komma igång

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

Det här paketet har testats med Python 2.7, 3.5, 3.6, 3.7, 3.8 och 3.9.

Förutsättningar

Installera paketet

Installera Azure Mixed Reality Authentication SDK.

pip install --pre azure-mixedreality-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 du resursen account identifier och account domain för din Mixed Reality-tjänst och en credential.

Mixed Reality tjänster stöder några olika typer 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.

Detaljerade anvisningar och information finns här .

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:

from azure.core.credentials import AzureKeyCredential
from azure.mixedreality.authentication import MixedRealityStsClient

account_id = "<ACCOUNTD ID>"
account_domain = "<ACCOUNT_DOMAIN>"
account_key = "<ACCOUNT_KEY>"
key_credential = AzureKeyCredential(account_key)

client = MixedRealityStsClient(account_id, account_domain, key_credential)

Obs! Kontonyckelautentisering rekommenderas inte för produktionsprogram.

Använda en Azure Active Directory-autentiseringsuppgift

Kontonyckelautentisering används i de flesta exempel, men du kan även 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:

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.

from azure.identity import DefaultAzureCredential
from azure.mixedreality.authentication import MixedRealityStsClient

account_id = "<ACCOUNTD ID>"
account_domain = "<ACCOUNT_DOMAIN>"
default_credential = DefaultAzureCredential()

client = MixedRealityStsClient(account_id, account_domain, default_credential)

Viktiga begrepp

MixedRealityStsClient

MixedRealityStsClient är det klientbibliotek som används för att få åtkomst till Mixed Reality STS för att hämta en åtkomsttoken. En åtkomsttoken kan hämtas genom att anropa get_token() på en MixedRealityStsClient instans.

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

Tokenresultatvärde

Returvärdet för ett lyckat anrop till get_token är ett azure.core.credentials.AccessToken.

Mer komplexa autentiseringsscenarier finns i autentiseringsexemplen ovan eller Azure Identity .

Hämta en åtkomsttoken synkront

from azure.core.credentials import AzureKeyCredential
from azure.mixedreality.authentication import MixedRealityStsClient

account_id = "<ACCOUNTD ID>"
account_domain = "<ACCOUNT_DOMAIN>"
account_key = "<ACCOUNT_KEY>"
key_credential = AzureKeyCredential(account_key)

client = MixedRealityStsClient(account_id, account_domain, key_credential)

token = client.get_token()

Hämta en åtkomsttoken asynkront

from azure.core.credentials import AzureKeyCredential
from azure.mixedreality.authentication.aio import MixedRealityStsClient

account_id = "<ACCOUNTD ID>"
account_domain = "<ACCOUNT_DOMAIN>"
account_key = "<ACCOUNT_KEY>"
key_credential = AzureKeyCredential(account_key)

client = MixedRealityStsClient(account_id, account_domain, key_credential)

token = await client.get_token()

Exempel

Det här är kodexempel som visar vanliga scenarioåtgärder med Klientbiblioteket för Azure Mixed Reality-autentisering. De asynkrona versionerna av exemplen (python-exempelfilerna som läggs till med _async) visar asynkrona åtgärder och kräver Python 3.5 eller senare. Innan du kör exempelkoden läser du Krav

för att skapa en resurs och ange sedan några miljövariabler

set MIXEDREALITY_ACCOUNT_DOMAIN="<the Mixed Reality account domain>"
set MIXEDREALITY_ACCOUNT_ID="<the Mixed Reality account identifier>"
set MIXEDREALITY_ACCOUNT_KEY="<the Mixed Reality account primary or secondary key>"

pip install azure-mixedreality-authentication

python samples\client_sample.py
python samples\client_sample_async.py

Felsökning

Felsökningsavsnittet för Azure Identity kan vara användbart när du felsöker autentiseringsproblem.

Nästa steg

Mixed Reality klientbibliotek

  • Kommer snart

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örandekoden eller kontakta opencode@microsoft.com med ytterligare frågor eller kommentarer.

Om du vill bidra till det här biblioteket kan du läsa bidragsguiden om du vill veta mer om hur du skapar och testar koden.

Visningar