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.
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
- En Azure-prenumeration.
- Du måste ha ett konto med en Azure Mixed Reality-tjänst:
- Kunskaper om autentisering och autentiseringsuppgifter från Azure Identity-biblioteket.
- Python 2.7 eller 3.5 eller senare krävs för att använda det här paketet.
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.
Azure SDK for Python