Udostępnij za pośrednictwem


Globalna struktura tożsamości usługi Azure Active Directory B2C

Ważne

Od 1 maja 2025 r. usługa Azure AD B2C nie będzie już dostępna do zakupu dla nowych klientów. Dowiedz się więcej w naszych często zadawanych pytaniach.

Usługa Azure Active Directory B2C to rozwiązanie do zarządzania dostępem do tożsamości klienta (CIAM), które umożliwia obsługę milionów użytkowników i miliardów uwierzytelnień dziennie. Zajmuje się skalowaniem i bezpieczeństwem platformy uwierzytelniania, monitorowania i automatycznego obsługi zagrożeń, takich jak odmowa usługi, spray haseł lub ataki siłowe.

Azure Active Directory B2C (Azure AD B2C) to oddzielna usługa od identyfikatora Entra firmy Microsoft. Jest ona oparta na tej samej technologii co microsoft Entra ID, ale w innym celu. Pozwala firmom na tworzenie aplikacji dla klientów, a następnie umożliwia samoobsługową rejestrację do aplikacji.

Azure AD B2C to globalnie rozproszona usługa składa się z kilku składników:

Podczas tworzenia rozwiązania usługi Azure AD B2C należy podać lokalizację do hostowania usługi. Ta lokalizacja dotyczy tylko regionu, w którym będą przechowywane dane profilu użytkownika, podczas gdy reszta usługi, która obsługuje logowanie, działa globalnie.

Zazwyczaj dzierżawa usługi Azure AD B2C jest wdrażana w regionie znajdującym się najbliżej bazy użytkowników. Ułatwia to zachowanie zgodności z przepisami dotyczącymi rezydencji danych, ponieważ profil użytkownika jest replikowany tylko w wybranym regionie. To zapewnia również najlepszą wydajność podczas logowania, gdyż latencje sieciowe są zoptymalizowane pod kątem sklepu katalogowego.

Gdy katalog usługi Azure AD B2C wymaga obsługi użytkowników na całym świecie, struktura regionalna stanowi wyzwanie. Musisz określić lokalizację, w której ma zostać utworzona instancja Azure AD B2C. Wszyscy użytkownicy spoza wybranego regionu mogą nie być zgodni z wymaganiami dotyczącymi rezydencji danych i mogą również wystąpić zwiększone opóźnienia podczas weryfikowania poświadczeń lub odczytywania danych profilu użytkownika.

Rozważmy na przykład aplikację, która obsługuje użytkowników w Australii i Ameryce Północnej, a katalog usługi Azure AD B2C jest tworzony w regionie Ameryka Północna. Użytkownicy, którzy logują się z Australii, mogą mieć do czynienia z dłuższym czasem przetwarzania w celu ukończenia uwierzytelniania.

Aby lepiej spełnić wymagania dotyczące rezydencji danych i rozwiązać problemy z wydajnością, należy wdrożyć wiele dzierżaw usługi Azure AD B2C. Umieszczając klienta w każdym regionie, w którym działa Twoja firma, operacje związane z katalogiem są zoptymalizowane pod kątem latencji. Tym samym rozwiązanie generuje inne obciążenia związane z konfigurowaniem, zarządzaniem i ochroną poufnych zasobów dzierżawy w każdym regionie. Inne obciążenia obejmują:

  • Administrowanie dzierżawą

  • Izolacja dzierżawcy prowadzi do tego, że doświadczenie użytkownika końcowego nie ma charakteru globalnego.

  • Fakturowanie

  • CI/CD do zarządzania zasadami, rejestracjami aplikacji i kluczami

Ten dokument zawiera propozycje architektur w usłudze Azure AD B2C, które najlepiej obsługują rozwiązania dla klientów, którzy obsługują użytkowników na całym świecie. Rozwiązania spełniają następujące wymagania:

  • Użytkownicy mogą zachować ten sam zestaw poświadczeń, niezależnie od tego, gdzie na świecie uzyskują dostęp do aplikacji.

  • Spójna wydajność i opóźnienia niezależnie od tego, skąd użytkownicy się uwierzytelniają.

  • Ułatwia klientom dostarczanie procesów, struktur lub zestawów SDK do zespołów deweloperów z najmniej możliwą konfiguracją.

  • Profile użytkowników można utrzymywać podczas podróży użytkowników na całym świecie. Spowoduje to utworzenie większej wartości w analizie wygenerowanej przez interakcje użytkowników w dowolnej usłudze.

  • Dane użytkownika klienta są przechowywane w regionalnych magazynach danych.

Poniżej przedstawiono dwa sposoby do rozważenia przy implementacji platformy tożsamości przy użyciu tenantów Azure AD B2C dla biznesu o zasięgu globalnym.

  • Pierwsze podejście używa regionów geograficznych, ponieważ granica i aplikacje są konfigurowane specjalnie dla regionu.

  • Drugie podejście ma globalne ograniczenie dla aplikacji i używa dodatkowej dzierżawy usługi Azure AD B2C do koordynowania interakcji między dzierżawami regionalnymi.

Orkiestracja klientów regionalnych

W tym modelu aplikacje są hostowane w poszczególnych regionach lub posiadają konfiguracje regionalne w celu nawiązania połączenia z regionalnymi najemcami. Aplikacje bezpośrednio wysyłają użytkownika do dzierżawy specyficznej dla regionu. Komunikacja między dzierżawami służy do przeprowadzania uwierzytelniania między dzierżawami lub aktualizacji profilów między dzierżawami, gdy użytkownik mógł podróżować do innego regionu.

Regionalna orkiestracja lokatorów

Orkiestracja tenanta lejka

W tym modelu dzierżawa Azure AD B2C kieruje użytkowników do regionalnych dzierżaw Azure AD B2C. Dzierżawa pośrednicząca działa jako organizator przekierowań do innych dzierżaw w usłudze Azure AD B2C. Jest to obsługiwane przez globalnie rozproszony składnik usługi Azure AD B2C, dlatego wydajność nie ma wpływu. To przekierowanie jest wykonywane przy użyciu federacji dostawców tożsamości OpenId Connect.

Komunikacja między dzierżawami służy do przeprowadzania uwierzytelniania między dzierżawami lub aktualizacji profilów między dzierżawami. Funkcja lejka udostępnia aplikacjom pojedynczy punkt końcowy do komunikacji.

Orkiestracja zarządzania lejkami użytkowników

Architektura, po której zdecydujesz się modelować rozwiązanie, wymaga dokonania wyborów na podstawie kompromisów między dwoma opisanymi modelami. Na przykład model lejka umożliwia obsługę pojedynczego wystąpienia aplikacji. W poniższej sekcji opisano możliwości, kryteria wyboru i wydajność, które mogą mieć wpływ na wybrany projekt.

Możliwości i zagadnienia

W poniższej tabeli opisano możliwości zapewniane przy użyciu projektu regionalnego i lejkowego:

Zdolność Regionalne Oparty na modelu lejka
Obsługuje rejestrację konta lokalnego i logowanie Pole wyboru Pole wyboru
Obsługuje rejestrację konta federacyjnego i logowanie Pole wyboru Pole wyboru
Obsługuje uwierzytelnianie kont lokalnych dla użytkowników logujących się spoza zarejestrowanego regionu Pole wyboru Pole wyboru
Obsługuje uwierzytelnianie kont federacyjnych dla użytkowników, którzy logują się spoza zarejestrowanego regionu, korzystając z wielodzierżawowego wyszukiwania opartego na API. Pole wyboru Pole wyboru
Uniemożliwia rejestrowanie się z różnych regionów. Pole wyboru Pole wyboru
Aplikacje w każdym regionie mają zestaw punktów końcowych do nawiązania połączenia z Pole wyboru
Wszystkie aplikacje łączą się z pojedynczym zestawem punktów końcowych, niezależnie od tego, w którym regionie są hostowane Pole wyboru
Obsługuje szczegółowe zasady dostępu warunkowego. Pole wyboru
Zoptymalizowane pod kątem kosztów. Pole wyboru

Na podstawie możliwości należy wziąć pod uwagę następujące kwestie:

  • W przypadku korzystania z podejścia opartego na regionie podstawową kwestią jest to, że podejście wymaga, aby aplikacje obejmujące wiele regionów miały odpowiednie konfiguracje dla każdej regionalnej dzierżawy usługi Azure AD B2C.

  • Przy stosowaniu podejścia opartego na lejku

    • Koszt podwójnego tokenu

    • Wprowadzono dodatkowe przekierowanie HTTP

    • Domeny niestandardowe są wymagane u wielu najemców

    • Dostęp warunkowy jest stosowany na poziomie dzierżawy, a nie na poziomie aplikacji

    • Logowanie jednokrotne za pośrednictwem wielu dostawców tożsamości może powodować wyzwania

Podejście, które wybierzesz, będzie oparte na liczbie aplikacji, które hostujesz, i konkretnych wymaganiach związanych z dostępem do aplikacji.

Wydajność

Zaletą wydajnościową korzystania z wielu dzierżaw, niezależnie czy w konfiguracji regionalnej, czy opartej na lejku sprzedażowym, będzie poprawa w porównaniu do korzystania z pojedynczej dzierżawy Azure AD B2C dla firm działających globalnie.

W przypadku korzystania z podejścia metodą lejka, użytkownik jest zlokalizowany w jednym określonym regionie i umożliwia dostęp użytkownikom na całym świecie. Ponieważ operacje związane z dzierżawcami lejka używają globalnego komponentu usługi Azure AD B2C, zapewniają spójny poziom wydajności niezależnie od tego, skąd logują się użytkownicy.

Zrzut ekranu przedstawiający architekturę usługi Azure AD B2C.

Jak pokazano na powyższym diagramie, instancja Azure AD B2C w podejściu opartym na lejku będzie korzystać z silnika zasad tylko do wykonywania przekierowania do regionalnych instancji Azure AD B2C. Składnik silnika zasad usługi Azure AD B2C jest rozproszony globalnie. W związku z tym lejek nie jest ograniczony z perspektywy wydajności, niezależnie od tego, gdzie dzierżawa lejka usługi Azure AD B2C jest aprowizowana. Występuje spadek wydajności z powodu dodatkowego przekierowania między dzierżawcami lejka a dzierżawcami regionalnymi w podejściu z wykorzystaniem lejka.

W podejściu opartym na regionie, ponieważ każdy użytkownik jest kierowany do najbardziej lokalnej usługi Azure AD B2C, wydajność jest spójna dla wszystkich użytkowników logowanych.

Najemcy regionalni będą wykonywać wywołania katalogów w Magazynie Katalogów, który jest jedynym komponentem zregionalizowanym zarówno w architekturach opartych na lejku, jak i w architekturach regionalnych.

Dodatkowe opóźnienie występuje tylko wtedy, gdy użytkownik wykonał uwierzytelnianie w innym regionie, z którego się zarejestrował. Jest to spowodowane tym, że wywołania będą wykonywane w różnych regionach, aby dotrzeć do magazynu katalogów, gdzie znajduje się ich profil, co umożliwi ukończenie uwierzytelniania.

Dalsze kroki