Udostępnij przez


Konfiguracja dostawcy OpenID Connect

Dostawcy tożsamości usługi OpenID Connect są usługami zgodnymi ze specyfikacją Open ID Connect. W przypadku usługi OpenID Connect wprowadzono pojęcie tokenu identyfikatora. Token identyfikatora to token zabezpieczeń umożliwiający klientowi zweryfikowanie tożsamości użytkownika. Pobiera także podstawowe informacje profilowe o użytkownikach nazywane oświadczeniami.

Korzystający z OpenID Connect dostawcy tożsamości Microsoft Entra External ID, Tożsamość Microsoft Entra i Tożsamość Microsoft Entra z wieloma dzierżawami, są wbudowani w Power Pages. W tym artykule wyjaśniono sposób dodawania do witryny Power Pages innych dostawców tożsamości korzystających z protokołu uwierzytelniania OpenID Connect.

Obsługiwane i nieobsługiwane przepływy uwierzytelnienia w Power Pages

  • Niejawne udzielenie
    • To jest domyślny przepływ metody uwierzytelnienia dla witryn Power Pages.
  • Kod autoryzacji
    • Power Pages używa metody client_secret_post do komunikacji z punktem końcowym tokenu serwera tożsamości.
    • Metoda private_key_jwt do uwierzytelniania przy użyciu tokenu punktu końcowego nie jest obsługiwana.
  • Wersja hybrydowa (obsługa ograniczona)
    • Power Pages wymaga, aby w odpowiedzi był obecny element id_token, więc posiadanie wartości response_type = jako tokenu kodu nie jest obsługiwane.
    • Przepływ hybrydowy w Power Pages przebiega podobnie, jak przepływ niejawnego udzielania, a id_token jest używany do bezpośredniego logowania się użytkowników.
  • Klucz weryfikacji dla programu Code Exchange (PKCE)
    • Nie są obsługiwane metody uwierzytelniania użytkowników oparte na technologii PKCE.

Uwaga

Zmiany w ustawieniach uwierzytelniania witryny może potrwać kilka minut. Aby od razu zobaczyć zmiany, uruchom ponownie witrynę w centrum administracyjnym.

Konfigurowanie dostawcy usługi OpenID Connect w Power Pages

  1. W witrynie Power Pages wybierz pozycję Bezpieczeństwo>Dostawcy tożsamości.

    Jeśli nie pojawiają się żadni dostawcy tożsamości, upewnij się, że opcja Zaloguj się zewnętrznie jest ustawiona na Włącz w ogólnych ustawieniach uwierzytelniania.

  2. Wybierz + Nowy dostawca.

  3. Z listy Wybierz dostawcę logowania wybierz pozycję Inny.

  4. W obszarze Protokół wybierz opcję OpenID Connect.

  5. Wprowadź nazwę dostawcy.

    Nazwa dostawcy to tekst na przycisku, który użytkownicy widzą po wybraniu dostawcy tożsamości na stronie logowania.

  6. Wybierz Dalej.

  7. W Odpowiedz URL wybierz opcję Kopiuj.

    Nie zamykaj w Power Pages karty przeglądarki. Wkrótce do niej wrócisz.

Tworzenie rejestracji aplikacji w dostawcy tożsamości

  1. Utworzenie i zarejestrowanie aplikacji u dostawcy tożsamości przy użyciu skopiowanego adresu URL odpowiedzi.

  2. Skopiuj aplikację lub identyfikator klienta i klienta.

  3. Znajdź punktu końcowe aplikacji i skopiuj adres URL dokumentu metadanych OpenID Connect.

  4. Zmień inne ustawienia wymagane dla dostawcy tożsamości.

Wprowadź ustawienia witryny w Power Pages

Wróć do strony Konfiguracja dostawcy tożsamości Power Pages, która wcześniej pozostała i wprowadź następujące wartości. Opcjonalnie zmień dodatkowe ustawienia, zgodnie z potrzebą. Po zakończeniu wybierz Potwierdź.

  • Urząd: wprowadź adres URL urzędu w następującym formacie: https://login.microsoftonline.com/<Directory (tenant) ID>/ gdzie <identyfikator katalogu (dzierżawcy)> jest identyfikatorem katalogu (dzierżawcy) aplikacji utworzonej przez Ciebie. Na przykład jeśli identyfikatorem katalogu (dzierżawcy) w portalu Azure jest aaaabbbb-0000-cccc-1111-dddd2222eeee, to adresem URL urzędu jest https://login.microsoftonline.com/aaaabbbb-0000-cccc-1111-dddd2222eeee/​.

  • Identyfikator klienta: wklej identyfikator aplikacji lub klienta dla utworzonej aplikacji.

  • Przekierowanie URL: jeśli witryna korzysta z niestandardowej nazwy domeny, wprowadź niestandardowy adres URL; w przeciwnym razie pozostaw wartość domyślną. Należy upewnić się, że wartość jest dokładnie taka sama jak URI przekierowywania utworzonej aplikacji.

  • Adres metadanych: wklej adres URL dokumentu metadanych OpenID Connect skopiowany wcześniej.

  • Zakres: wprowadź listę rozdzielanych spacjami zakresów do zażądania za pośrednictwem parametru scope protokołu OpenId Connect. Domyślna wartość to openid.

    Wartość openid jest wymagana. Informacje o innych oświadczeniach, które można dodać.

  • Typ odpowiedzi: wprowadź wartość parametru response_type protokołu OpenID Connect. Możliwe wartości to code, code id_token, id_tokenid_token token i code id_token token. Domyślna wartość to code id_token.

  • Klucz tajny klienta: wklej klucz tajny klienta z aplikacji dostawcy. Może też być określany mianem tajnej aplikacji lub tajnym klientem. To ustawienie jest wymagane, jeśli typem odpowiedzi jest code.

  • Tryb odpowiedzi: wprowadź wartość parametru response_mode protokołu OpenID Connect. Powinno to być query, jeśli typem odpowiedzi jest code. Domyślna wartość to form_post.

  • Wylogowanie zewnętrzne: To ustawienie kontroluje, czy witryna używa federacyjnego wylogowania. W przypadku wylogowania federacyjnego, gdy użytkownicy wylogowują się z aplikacji lub witryny, są również wylogowywani ze wszystkich aplikacji i witryn korzystających z tego samego dostawcy tożsamości. Włącz, by przekierowywać użytkowników do federacyjnego środowiska wylogowania po wylogowaniu się z witryny. Wyłącz, by wylogować użytkowników tylko z Twojej witryny.

  • Adres URL przekierowania po wylogowaniu: wprowadź adres URL, do którego dostawca tożsamości powinien przekierowywać użytkowników po wylogowaniu. Tę lokalizację należy także odpowiednio ustawić w konfiguracji dostawcy tożsamości.

  • Zainicjowanie wylogowania punktu przechowywania: to ustawienie określa, czy strona korzystający z usługi, czyli aplikacja kliencka OpenID Connect, może wylogować użytkowników. Aby użyć tego ustawienia, należy włączyć Zewnętrzne wylogowanie.

Dodatkowe ustawienia w Power Pages

Dodatkowe ustawienia zapewniają lepszą kontrolę nad sposobem uwierzytelniania użytkowników za pomocą dostawcy tożsamości OpenID Connect. Nie trzeba ustawiać żadnej z tych wartości. Są one całkowicie opcjonalne.

  • Filtr wystawcy: wprowadź filtr wieloznaczny, który pasuje do wszystkich wystawców we wszystkich dzierżawach; na przykład https://sts.windows.net/*/. Jeśli używasz jako dostawcy autoryzacji Tożsamości Microsoft Entra, filtrem adresu URL wystawcy będzie https://login.microsoftonline.com/*/v2.0/.

  • Sprawdź poprawność odbiorcy: włącz to ustawienie, aby sprawdzić poprawność odbiorcy tokenu.

  • Prawidłowi odbiorcy: wprowadź rozdzieloną przecinkami listę adresów URL odbiorców.

  • Sprawdź poprawność wystawców: włącz to ustawienie, aby sprawdzić poprawność wystawcy podczas sprawdzania poprawności tokenu.

  • Prawidłowi wystawcy: wprowadź rozdzieloną przecinkami listę adresów URL wystawców.

  • Mapowanie oświadczeń dotyczących rejestracji i mapowanie oświadczeń dotyczących logowania: w uwierzytelnianiu użytkownika oświadczenie to informacja opisująca tożsamość użytkownika, taka jak adres e-mail lub data urodzenia. Po zalogowaniu się do aplikacji lub witryny internetowej tworzony jest token. Token zawiera informacje o tożsamości użytkownika, w tym wszelkie roszczenia, które są z nim związane. Tokeny są używane do uwierzytelniania tożsamości użytkownika podczas uzyskiwania dostępu do innych części aplikacji lub witryny lub innych aplikacji i witryn, które są połączone z tym samym dostawcą tożsamości. Mapowanie oświadczeń to sposób na zmianę informacji zawartych w tokenie. Może być wykorzystywany do dostosowywania informacji dostępnych w aplikacji lub witrynie oraz do kontrolowania dostępu do funkcji lub danych. Mapowanie oświadczeń dotyczących rejestracji modyfikuje oświadczenia emitowane podczas rejestracji w aplikacji lub witrynie. Mapowanie oświadczeń dotyczących logowania modyfikuje oświadczenia emitowane podczas logowania w aplikacji lub witrynie. Dowiedz się więcej o zasadach mapowania oświadczeń.

    Informacje użytkownika można ustalić na dwa sposoby:

    • Atrybuty tokenu identyfikatora – Podstawowe atrybuty użytkownika, takie jak imię lub adres e-mail, znajdują się w tokenie.
    • Punkt końcowy UserInfo – Bezpieczny interfejs API, który zwraca szczegółowe informacje o użytkowniku po uwierzytelnieniu.

    Aby użyć punktu końcowego UserInfo, utwórz Ustawienie lokalizacji o nazwie Authentication/OpenIdConnect/{ProviderName}/UseUserInfoEndpointforClaims i ustaw wartość na true.

    Opcjonalnie utwórz ustawienie lokalizacji o nazwie Authentication/OpenIdConnect/{ProviderName}/UserInfoEndpoint i ustaw wartość na adres URL punktu końcowego UserInfo. Jeśli nie podasz tego ustawienia, Power Pages spróbuje znaleźć punkt końcowy na podstawie metadanych OIDC.

    Obsługa błędów

    • Jeśli adres URL punktu końcowego nie jest ustawiony, Power Pages spróbuje znaleźć punkt końcowy na podstawie metadanych OIDC.
    • Jeśli adres URL jest ustawiony, ale nie jest dostępny, logowanie jest kontynuowane z ostrzeżeniem.
    • Jeśli punkt końcowy zwróci błąd uwierzytelniania (np. 401 lub 403), logowanie będzie kontynuowane z ostrzeżeniem, które zawiera komunikat o błędzie.

    Składnia mapowania:

    Aby użyć oświadczeń UserInfo w mapowaniach oświadczeń logowania lub rejestracji, użyj tego formatu:

    fieldName = userinfo.claimName

    Jeśli opcja UseUserInfoEndpointforClaims nie jest włączona, mapowania używające prefiksu userinfo. są ignorowane.

  • Okres istnienia identyfikatora jednorazowego: wprowadź okres istnienia wartości identyfikatora jednorazowego w minutach. Domyślna wartość wynosi 10 minut.

  • Użyj okresu istnienia tokenu: to ustawienie kontroluje, czy okres istnienia sesji uwierzytelniania (np. pliki cookie) musi być zgodny z tokenem uwierzytelniania. Po włączeniu tej wartości zastępuje ona wartość Przedział czasu wygasania plików cookie aplikacji w ustawieniu witryny Uwierzytelnianie/ApplicationCookie/ExpireTimeSpan.

  • Mapowanie kontaktów z adresem e-mail: to ustawienie określa, czy kontakty są mapowane na odpowiedni adres e-mail podczas logowania.

    • Wł.: włącz ten przełącznik, aby kojarzyć unikatowy rekord kontaktu z pasującym adresem e-mail, a następnie automatycznie przypisywać zewnętrznego dostawcę tożsamości do kontaktu po pomyślnym zalogowaniu użytkownika.
    • Wył.

Uwaga

Parametr UI_Locales żądania uwierzytelnienia jest wysyłany automatycznie w żądaniu uwierzytelnienia i jest ustawiony na język wybrany w portalu.

Inne parametry autoryzacji

Użyj następujących parametrów autoryzacji, ale nie ustawiaj ich w dostawcy OpenID Connect w Power Pages:

  • acr_values: parametr acr_values umożliwia dostawcom tożsamości wymuszanie poziomów zapewnienia zabezpieczeń, takich jak uwierzytelnianie wieloskładnikowe (MFA). Umożliwia aplikacji wskazanie wymaganego poziomu uwierzytelniania.

    Aby użyć parametru acr_values, utwórz ustawienie witryny o nazwie Authentication/OpenIdConnect/{ProviderName}/AcrValues i ustaw potrzebną wartość. Po ustawieniu tej wartości Power Pages uwzględnia parametr acr_values w żądaniu autoryzacji.

  • Dynamiczne parametry autoryzacji: parametry dynamiczne umożliwiają dostosowanie żądania autoryzacji do różnych kontekstów użycia, takich jak osadzone aplikacje lub scenariusze wielu dzierżawców.

    • Parametr monitu:

      Ten parametr określa, czy ma być wyświetlana strona logowania, czy ekran zgody. Aby go użyć, dodaj modyfikację, aby wysłać go jako parametr ciąg zapytania do punktu końcowego ExternalLogin.

      Obsługiwane wartości:

      • Brak
      • zalogować
      • wyrazić zgodę
      • select_account

      Format URL.

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&prompt={value}

      Power Pages wysyła tę wartość do dostawcy tożsamości w parametrze monitu.

    • Parametr wskazówki logowania:

      Ten parametr umożliwia przekazanie znanego identyfikatora użytkownika, takiego jak adres e-mail, w celu wstępnego wypełnienia lub pominięcia ekranów logowania. Aby go użyć, dodaj modyfikację, aby wysłać go jako parametr ciąg zapytania do punktu końcowego ExternalLogin.

      Format URL.

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&login_hint={value}

      Pomaga to, gdy użytkownicy są już zalogowani za pomocą innej tożsamości, takiej jak Tożsamość Microsoft Entra lub konto Microsoft (MSA), w tej samej sesji.

  • Niestandardowe parametry autoryzacji: niektórzy dostawcy tożsamości obsługują zastrzeżone parametry dla określonego zachowania autoryzacji. Power Pages umożliwia twórcom bezpiecznie skonfigurować i przekazać te parametry. Aby użyć tych parametrów, dodaj dostosowanie, aby wysłać je jako parametry ciągu zapytania do punktu końcowego ExternalLogin.

    Utwórz ustawienie lokalizacji o nazwie Authentication/OpenIdConnect/{Provider}/AllowedDynamicAuthorizationParameters i ustaw wartość na rozdzielaną przecinkami listę nazw parametrów, na przykład jak param1,param2,param3.

    Przykładowy format adresu URL:

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&param1=value&param2=value&param3=value

    Jeśli którykolwiek z parametrów (param1, param2 lub param3) nie znajduje się na liście dozwolonych parametrów, Power Pages ignoruje go.

    To ustawienie definiuje listę parametrów niestandardowych, które mogą zostać wysłane w żądaniu autoryzacji.

    Zachowanie

    • Przekazuje parametry w ciągu zapytania punktu końcowego ExternalLogin.
    • Power Pages uwzględnia tylko parametry z listy w żądaniu autoryzacji.
    • Parametry domyślne, takie jak monit, login_hint i ReturnUrl, są zawsze dozwolone i nie muszą być na liście.

    Przykładowy format adresu URL:

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&custom_param=value

    Jeśli custom_param nie ma na liście dozwolonych parametrów, Power Pages ignoruje go.

Zobacz także

Konfigurowanie identyfikatora zewnętrznego firmy Microsoft za pomocą usługi Power Pages
Konfigurowanie dostawcy OpenID Connect przy użyciu Tożsamości Microsoft Entra
OpenID Connect — często zadawane pytania