Konfigurowanie uwierzytelniania

Usługa Azure Remote Rendering używa tego samego mechanizmu uwierzytelniania co usługa Azure Spatial Anchors (ASA). Aby uzyskać dostęp do danego konta usługi Azure Remote Rendering, klienci muszą uzyskać token dostępu z usługi Azure Mixed Reality Security Token Service (STS). Tokeny uzyskane z usługi STS mają okres istnienia 24 godzin. Klienci muszą ustawić jeden z następujących elementów, aby pomyślnie wywołać interfejsy API REST:

  • Klucz konta: można uzyskać na karcie "Klucze" dla konta usługi Remote Rendering w witrynie Azure Portal. Klucze kont są zalecane tylko w przypadku programowania/tworzenia prototypów. Account ID

  • AccountDomain: można uzyskać na karcie "Przegląd" dla konta usługi Remote Rendering w witrynie Azure Portal. Account Domain

  • AuthenticationToken: to token usługi Azure AD, który można uzyskać przy użyciu biblioteki MSAL. Istnieje wiele różnych przepływów umożliwiających akceptowanie poświadczeń użytkownika i używanie tych poświadczeń w celu uzyskania tokenu dostępu.

  • MRAccessToken: to token mr, który można uzyskać z usługi Azure Mixed Reality Security Token Service (STS). Pobrane z punktu końcowego https://sts.<accountDomain> przy użyciu wywołania REST podobnego do poniższego:

    GET https://sts.southcentralus.mixedreality.azure.com/Accounts/35d830cb-f062-4062-9792-d6316039df56/token HTTP/1.1
    Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni<truncated>FL8Hq5aaOqZQnJr1koaQ
    Host: sts.southcentralus.mixedreality.azure.com
    Connection: Keep-Alive
    
    HTTP/1.1 200 OK
    Date: Tue, 24 Mar 2020 09:09:00 GMT
    Content-Type: application/json; charset=utf-8
    Content-Length: 1153
    Accept: application/json
    MS-CV: 05JLqWeKFkWpbdY944yl7A.0
    {"AccessToken":"eyJhbGciOiJSUzI1<truncated>uLkO2FvA"}
    

    Gdzie nagłówek autoryzacji jest sformatowany w następujący sposób: Bearer <Azure_AD_token> lub Bearer <accoundId>:<accountKey>. Były jest preferowany dla bezpieczeństwa. Token zwrócony z tego wywołania REST jest tokenem dostępu mr.

Uwierzytelnianie dla wdrożonych aplikacji

Klucze kont są zalecane do szybkiego tworzenia prototypów tylko podczas opracowywania. Zaleca się, aby aplikacja nie była dostarczana do środowiska produkcyjnego przy użyciu osadzonego klucza konta. Zalecane jest użycie podejścia opartego na użytkowniku lub opartego na usłudze uwierzytelniania usługi Azure AD.

Uwierzytelnianie użytkowników usługi Azure AD

Uwierzytelnianie usługi Azure AD zostało opisane w dokumentacji usługi Azure Spatial Anchors.

Wykonaj kroki konfigurowania uwierzytelniania użytkownika usługi Azure Active Directory w witrynie Azure Portal.

  1. Zarejestruj aplikację w usłudze Azure Active Directory. W ramach rejestracji należy określić, czy aplikacja powinna być wielodostępna. Musisz również podać adresy URL przekierowania dozwolone dla aplikacji w bloku Uwierzytelnianie. Authentication setup

  2. Na karcie Uprawnienia interfejsu API zażądaj uprawnień delegowanych dla zakresu mixedreality.signin w obszarze mieszanarealność. Api permissions

  3. Udziel zgody administratora na karcie Zabezpieczenia —> uprawnienia. Admin consent

  4. Następnie przejdź do zasobu usługi Azure Remote Rendering. W panelu Kontrola dostępu przyznaj żądane role dla aplikacji i użytkownika, w imieniu których chcesz użyć delegowanych uprawnień dostępu do zasobu usługi Azure Remote Rendering. Add permissionsRole assignments

Aby uzyskać informacje na temat korzystania z uwierzytelniania użytkownika usługi Azure AD w kodzie aplikacji, zobacz Samouczek: zabezpieczanie usługi Azure Remote Rendering i magazynu modeli — uwierzytelnianie usługi Azure Active Directory

Kontrola dostępu na podstawie ról na platformie Azure

Aby ułatwić kontrolowanie poziomu dostępu przyznanego usłudze, użyj następujących ról podczas udzielania dostępu opartego na rolach:

  • Administrator renderowania zdalnego: zapewnia użytkownikowi konwersję, zarządzanie sesją, renderowaniem i diagnostyką dla usługi Azure Remote Rendering.
  • Klient renderowania zdalnego: zapewnia użytkownikowi możliwość zarządzania sesjami, renderowaniem i diagnostyką dla usługi Azure Remote Rendering.

Następne kroki