Tożsamości zarządzane dla usługi Azure Web PubSub Service

W tym artykule pokazano, jak utworzyć tożsamość zarządzaną dla usługi Azure Web PubSub i jak z niej korzystać.

Ważne

Usługa Azure Web PubSub może obsługiwać tylko jedną tożsamość zarządzaną. Oznacza to, że można dodać tożsamość przypisaną przez system lub tożsamość przypisaną przez użytkownika.

Dodawanie tożsamości przypisanej przez system

Aby skonfigurować tożsamość zarządzaną w witrynie Azure Portal, najpierw utworzysz wystąpienie usługi Azure Web PubSub Service, a następnie włączysz tę funkcję.

  1. Utwórz wystąpienie usługi Azure Web PubSub Service w portalu, tak jak zwykle. Przejdź do niego w portalu.

  2. Wybierz pozycję Tożsamość.

  3. Na karcie Przypisane przez system przełącz pozycję Stan na Włączone. Wybierz pozycję Zapisz.

    Add a system-assigned identity in the portal

Dodawanie tożsamości przypisanej przez użytkownika

Utworzenie wystąpienia usługi Azure Web PubSub z tożsamością przypisaną przez użytkownika wymaga utworzenia tożsamości, a następnie dodania jej identyfikatora zasobu do usługi.

  1. Utwórz zasób tożsamości zarządzanej przypisanej przez użytkownika zgodnie z tymi instrukcjami.

  2. Utwórz wystąpienie usługi Azure Web PubSub Service w portalu, tak jak zwykle. Przejdź do niego w portalu.

  3. Wybierz pozycję Tożsamość.

  4. Na karcie Przypisane przez użytkownika wybierz pozycję Dodaj.

  5. Wyszukaj utworzoną wcześniej tożsamość i wybierz ją. Wybierz pozycję Dodaj.

    Add a user-assigned identity in the portal

Używanie tożsamości zarządzanej w scenariuszach zdarzeń klienta

Azure Web PubSub Service to w pełni zarządzana usługa, więc nie można używać tożsamości zarządzanej do ręcznego pobierania tokenów. Zamiast tego, gdy usługa Azure Web PubSub wysyła zdarzenia do programu obsługi zdarzeń, użyje tożsamości zarządzanej do uzyskania tokenu dostępu. Następnie usługa ustawia token dostępu do nagłówka Authorization w żądaniu HTTP.

Włączanie uwierzytelniania tożsamości zarządzanej w ustawieniach programu obsługi zdarzeń

  1. Dodaj tożsamość przypisaną przez system lub tożsamość przypisaną przez użytkownika.

  2. Przejdź do pozycji Konfiguruj centrum Ustawienia i dodaj lub edytuj program obsługi zdarzeń nadrzędnie.

    msi-setting

  3. W sekcji Uwierzytelnianie wybierz pozycję Użyj uwierzytelniania i zaznacz pole Wyboru Określ grupę odbiorców wystawionych tokenów. Odbiorcy staną się oświadczeniem aud w uzyskanym tokenie dostępu, który może być używany jako część weryfikacji w procedurze obsługi zdarzeń. Możesz wybrać jedną z następujących opcji:

    • Wybierz z istniejących aplikacji firmy Microsoft Entra. Zostanie użyty identyfikator aplikacji wybranej przez Ciebie.
    • Identyfikator URI identyfikatora aplikacji jednostki usługi.

    Ważne

    Korzystanie z pustego zasobu nieużywanie uzyskiwania elementów docelowych tokenu w programie Microsoft Graph. Obecnie program Microsoft Graph umożliwia szyfrowanie tokenów, dzięki czemu aplikacja nie jest dostępna do uwierzytelniania tokenu innego niż program Microsoft Graph. W typowym przypadku należy zawsze utworzyć jednostkę usługi reprezentującą nadrzędny element docelowy. Ustaw identyfikator aplikacji lub identyfikator URI aplikacji utworzonej jednostki usługi.

Uwierzytelnianie w aplikacji funkcji

Walidację dostępu dla aplikacji funkcji bez zmian kodu można łatwo ustawić przy użyciu witryny Azure Portal:

  1. W witrynie Azure Portal przejdź do aplikacji funkcji.

  2. Wybierz Uwierzytelnianie z menu poleceń.

  3. Wybierz pozycję Dodaj dostawcę tożsamości.

  4. Na karcie Podstawowe na liście rozwijanej Dostawca tożsamości wybierz pozycję Microsoft.

  5. W obszarze Akcja do wykonania, gdy żądanie nie jest uwierzytelnione, wybierz pozycję Zaloguj się przy użyciu identyfikatora Entra firmy Microsoft.

  6. Opcja utworzenia nowej rejestracji jest domyślnie zaznaczona. Możesz zmienić nazwę rejestracji. Aby uzyskać więcej informacji na temat włączania dostawcy usługi Microsoft Entra, zobacz Configure your App Service or Azure Functions app to use a Microsoft Entra ID sign-in (Konfigurowanie aplikacji App Service lub Azure Functions w celu korzystania z logowania microsoft Entra ID).

    Screenshot that shows basic information for adding an identity provider.

  7. Przejdź do usługi Azure SignalR Service i wykonaj kroki, aby dodać tożsamość przypisaną przez system lub tożsamość przypisaną przez użytkownika.

  8. W usłudze Azure SignalR Service przejdź do pozycji Ustawienia nadrzędne, a następnie wybierz pozycję Użyj tożsamości zarządzanej i Wybierz z istniejących aplikacji. Wybierz utworzoną wcześniej aplikację.

Po skonfigurowaniu tych ustawień aplikacja funkcji odrzuci żądania bez tokenu dostępu w nagłówku.

Weryfikowanie tokenów dostępu

Jeśli nie używasz aplikacji internetowej lub funkcji platformy Azure, możesz również zweryfikować token.

Token w nagłówku Authorization jest tokenem dostępu Platforma tożsamości Microsoft.

Aby zweryfikować tokeny dostępu, aplikacja powinna również zweryfikować odbiorców i tokeny podpisywania. Należy je zweryfikować względem wartości w dokumencie odnajdywania OpenID. Zobacz na przykład niezależną od dzierżawy wersję dokumentu.

Oprogramowanie pośredniczące Microsoft Entra ma wbudowane funkcje sprawdzania poprawności tokenów dostępu. Możesz przejrzeć nasze przykłady , aby znaleźć je w wybranym języku.

Udostępniamy biblioteki i przykłady kodu, które pokazują, jak obsługiwać walidację tokenu. Istnieje również kilka bibliotek partnerów typu open source dostępnych do weryfikacji tokenu internetowego JSON (JWT). Istnieje co najmniej jedna opcja dla prawie każdej platformy i języka. Aby uzyskać więcej informacji na temat bibliotek autoryzacji entra firmy Microsoft i przykładów kodu, zobacz Platforma tożsamości Microsoft bibliotek uwierzytelniania.

W przypadku hostów programu obsługi zdarzeń w usłudze Azure Function lub Web Apps można łatwo skonfigurować logowanie do usługi Microsoft Entra.

Używanie tożsamości zarządzanej dla dokumentacji usługi Key Vault

Usługa Web PubSub może uzyskać dostęp do usługi Key Vault, aby uzyskać wpis tajny przy użyciu tożsamości zarządzanej.

  1. Dodaj tożsamość przypisaną przez system lub tożsamość przypisaną przez użytkownika dla usługi Azure Web PubSub Service.

  2. Przyznaj uprawnienie do odczytu wpisu tajnego dla tożsamości zarządzanej w zasadach dostępu w usłudze Key Vault. Zobacz Przypisywanie zasad dostępu usługi Key Vault przy użyciu witryny Azure Portal

Obecnie tej funkcji można używać w następujących scenariuszach:

  • Użyj składni {@Microsoft.KeyVault(SecretUri=<secret-identity>)} , aby pobrać wpisy tajne z usługi KeyVault w ustawieniu szablonu adresu URL procedury obsługi zdarzeń.

Następne kroki