Udostępnij za pośrednictwem


Autoryzowanie dostępu do zasobów Web PubSub przy użyciu identyfikatora Entra firmy Microsoft

Usługa Azure Web PubSub umożliwia autoryzację żądań do zasobów usługi Azure Web PubSub przy użyciu identyfikatora Entra firmy Microsoft.

Korzystając z kontroli dostępu opartej na rolach (RBAC) z identyfikatorem Entra firmy Microsoft, można przyznać uprawnienia podmiotowi zabezpieczeń[1]. Firma Microsoft Entra autoryzuje tego podmiotu zabezpieczeń i zwraca token OAuth 2.0, którego zasoby Web PubSub mogą następnie używać do autoryzowania żądania.

Użycie identyfikatora Entra firmy Microsoft do autoryzacji żądań Web PubSub oferuje lepsze zabezpieczenia i łatwość użycia w porównaniu z autoryzacją klucza dostępu. Firma Microsoft zaleca korzystanie z autoryzacji entra firmy Microsoft z zasobami Web PubSub, jeśli jest to możliwe, aby zapewnić dostęp z minimalnymi wymaganymi uprawnieniami.

[1] Podmiot zabezpieczeń: użytkownik/grupa zasobów, aplikacja lub jednostka usługi, taka jak tożsamości przypisane przez system i tożsamości przypisane przez użytkownika.

Omówienie identyfikatora entra firmy Microsoft dla usługi Web PubSub

Uwierzytelnianie jest niezbędne do uzyskania dostępu do zasobu Web PubSub w przypadku korzystania z identyfikatora Entra firmy Microsoft. To uwierzytelnianie obejmuje dwa kroki:

  1. Najpierw platforma Azure uwierzytelnia podmiot zabezpieczeń i wystawia token OAuth 2.0.
  2. Po drugie token jest dodawany do żądania do zasobu Web PubSub. Usługa Web PubSub używa tokenu, aby sprawdzić, czy jednostka usługi ma dostęp do zasobu.

Uwierzytelnianie po stronie klienta podczas korzystania z identyfikatora Entra firmy Microsoft

Serwer negocjacji/aplikacja funkcji udostępnia klucz dostępu do zasobu Web PubSub, umożliwiając usłudze Web PubSub uwierzytelnianie żądań połączeń klienta przy użyciu tokenów klienta generowanych przez klucz dostępu.

Jednak klucz dostępu jest często wyłączony w przypadku korzystania z identyfikatora Entra firmy Microsoft w celu zwiększenia bezpieczeństwa.

Aby rozwiązać ten problem, opracowaliśmy interfejs API REST, który generuje token klienta. Ten token może służyć do nawiązywania połączenia z usługą Azure Web PubSub.

Aby użyć tego interfejsu API, serwer negocjacji musi najpierw uzyskać token entra firmy Microsoft z platformy Azure, aby się uwierzytelnić. Następnie serwer może wywołać internetowy interfejs API uwierzytelniania PubSub za pomocą tokenu Entra firmy Microsoft w celu pobrania tokenu klienta. Token klienta jest następnie zwracany do klienta, który może użyć go do nawiązania połączenia z usługą Azure Web PubSub.

Udostępniliśmy funkcje pomocnika (na przykład "GenerateClientAccessUri) dla obsługiwanych języków programowania.

Przypisywanie ról platformy Azure na potrzeby praw dostępu

Firma Microsoft Entra autoryzuje prawa dostępu do zabezpieczonych zasobów za pośrednictwem kontroli dostępu opartej na rolach platformy Azure. Usługa Azure Web PubSub definiuje zestaw wbudowanych ról platformy Azure, które obejmują typowe zestawy uprawnień używanych do uzyskiwania dostępu do zasobów usługi Web PubSub. Możesz również zdefiniować role niestandardowe na potrzeby dostępu do zasobów Web PubSub.

Zakres zasobu

Przed przypisaniem roli RBAC platformy Azure do podmiotu zabezpieczeń ważne jest określenie odpowiedniego poziomu dostępu, który powinien mieć podmiot zabezpieczeń. Zaleca się przyznanie roli z najwęższym możliwym zakresem. Zasoby znajdujące się poniżej dziedziczą role RBAC platformy Azure z szerszymi zakresami.

Zakres dostępu do zasobów usługi Azure Web PubSub można ograniczyć na następujących poziomach, począwszy od najwęższego zakresu:

  • Pojedynczy zasób.

    W tym zakresie przypisanie roli ma zastosowanie tylko do zasobu docelowego.

  • Grupa zasobów.

    W tym zakresie przypisanie roli ma zastosowanie do wszystkich zasobów w grupie zasobów.

  • Subskrypcja.

    W tym zakresie przypisanie roli ma zastosowanie do wszystkich zasobów we wszystkich grupach zasobów w subskrypcji.

  • Grupa zarządzania.

    W tym zakresie przypisanie roli ma zastosowanie do wszystkich zasobów we wszystkich grupach zasobów we wszystkich subskrypcjach w grupie zarządzania.

Wbudowane role platformy Azure dla zasobów Web PubSub

  • Web PubSub Service Owner

    Pełny dostęp do uprawnień płaszczyzny danych, w tym interfejsów API REST odczytu/zapisu i interfejsów API uwierzytelniania.

    Ta rola jest najczęściej używana do tworzenia nadrzędnego serwera.

  • Web PubSub Service Reader

    Służy do udzielania uprawnień interfejsów API REST tylko do odczytu do zasobów Web PubSub.

    Jest on używany, gdy chcesz napisać narzędzie do monitorowania, które wywołuje interfejsy API REST TYLKO web PubSub płaszczyzny danych READONLY .

Następne kroki

Aby dowiedzieć się, jak utworzyć aplikację platformy Azure i użyć autoryzacji firmy Microsoft Entra, zobacz

Aby dowiedzieć się, jak skonfigurować tożsamość zarządzaną i używać uwierzytelniania firmy Microsoft Entra, zobacz

Aby dowiedzieć się więcej na temat ról i przypisań ról, zobacz

Aby dowiedzieć się, jak tworzyć role niestandardowe, zobacz

Aby dowiedzieć się, jak używać tylko autoryzacji firmy Microsoft Entra, zobacz