Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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.
Przed rozpoczęciem użyj selektora Wybierz typ zasad w górnej części tej strony, aby wybrać typ konfigurowanych zasad. Usługa Azure Active Directory B2C oferuje dwie metody definiowania sposobu interakcji użytkowników z aplikacjami: za pomocą wstępnie zdefiniowanych przepływów użytkowników lub w pełni konfigurowalnych zasad niestandardowych. Kroki wymagane w tym artykule są różne dla każdej metody.
Uwaga / Notatka
W usłudze Azure Active Directory B2C niestandardowe zasady są przeznaczone głównie do rozwiązywania złożonych scenariuszy. W przypadku większości scenariuszy zalecamy używanie wbudowanych przepływów użytkownika. Jeśli nie zostało to zrobione, dowiedz się więcej o niestandardowym pakiecie startowym zasad w temacie Wprowadzenie do zasad niestandardowych w usłudze Active Directory B2C.
Wymagania wstępne
- Utwórz przepływ użytkownika, aby użytkownicy mogli zarejestrować się i zalogować do aplikacji.
- Rejestrowanie aplikacji internetowej.
- Wykonaj kroki opisane w Jak rozpocząć z zasadami niestandardowymi w usłudze Active Directory B2C. W tym samouczku przedstawiono sposób aktualizowania niestandardowych plików zasad, aby korzystać z konfiguracji kont usługi Azure AD B2C.
- Rejestrowanie aplikacji internetowej.
Utwórz aplikację Salesforce
Aby włączyć logowanie dla użytkowników przy użyciu konta usługi Salesforce w usłudze Azure Active Directory B2C (Azure AD B2C), musisz utworzyć aplikację w usłudze Salesforce App Manager. Aby uzyskać więcej informacji, zobacz Konfigurowanie podstawowych ustawień połączonej aplikacji i Włączanie ustawień protokołu OAuth na potrzeby integracji interfejsu API
- Zaloguj się do usługi Salesforce.
- Z menu wybierz pozycję Konfiguracja.
- Rozwiń Aplikacje, a następnie wybierz Menedżera aplikacji.
- Wybierz pozycję Nowa połączona aplikacja.
- W obszarze Podstawowe informacje wprowadź:
- Nazwa połączonej aplikacji — nazwa połączonej aplikacji jest wyświetlana w menedżerze aplikacji i na kafelku launchera aplikacji. Nazwa musi być unikatowa w organizacji.
- Nazwa interfejsu API
- Kontaktowy adres e-mail — kontaktowy adres e-mail dla usługi Salesforce
- W obszarze API (Włącz ustawienia protokołu OAuth) wybierz Włącz ustawienia protokołu OAuth
- W polu Adres URL wywołania zwrotnego wprowadź
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp. Jeśli używasz domeny niestandardowej, wprowadź.https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authrespZastąpyour-tenant-namenazwą dzierżawcy iyour-domain-namedomeną niestandardową. Podczas wprowadzania nazwy dzierżawy należy użyć wszystkich małych liter, nawet jeśli dzierżawa jest zdefiniowana z wielkimi literami w usłudze Azure AD B2C. - W obszarze Wybrane zakresy protokołu OAuth wybierz pozycję Uzyskaj dostęp do usługi adresu URL tożsamości (identyfikator, profil, adres e-mail, telefon) i Zezwalaj na dostęp do unikatowego identyfikatora (openid).
- Wybierz Wymagaj tajnego klucza dla przepływu web serwera.
- W polu Adres URL wywołania zwrotnego wprowadź
- Wybierz Konfiguruj token identyfikatora
- Ustaw token ważny przez 5 minut.
- Wybierz pozycję Uwzględnij oświadczenia standardowe.
- Kliknij przycisk Zapisz.
- Skopiuj wartości klucza klienta i wpisu tajnego użytkownika. Oba te elementy będą potrzebne do skonfigurowania usługi Salesforce jako dostawcy tożsamości w dzierżawie. Tajny klucz klienta to ważne poświadczenie zabezpieczeń.
Konfigurowanie usługi Salesforce jako dostawcy tożsamości
Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się na dzierżawę Azure AD B2C z menu Katalogi + subskrypcje.
Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz pozycję Azure AD B2C.
Wybierz pozycję Dostawcy tożsamości, a następnie wybierz pozycję Nowy dostawca OpenID Connect.
W polu Nazwa wprowadź nazwę. Na przykład wprowadź Salesforce.
W polu Adres URL metadanych wprowadź adres URL dokumentu Konfiguracja programu Salesforce OpenID Connect. W przypadku piaskownicy login.salesforce.com jest zastępowany przez test.salesforce.com. W przypadku społeczności login.salesforce.com jest zastępowany adresem URL społeczności, takim jak username.force.com/.well-known/openid-configuration. Adres URL musi mieć wartość HTTPS.
https://login.salesforce.com/.well-known/openid-configurationDla identyfikatora klienta , wprowadź wcześniej zarejestrowany identyfikator aplikacji.
Dla sekretu klientawprowadź wcześniej zapisany sekret klienta.
W polu Zakres wprowadź
openid id profile email.Pozostaw wartości domyślne dla pola Typ odpowiedzi i Tryb odpowiedzi.
(Opcjonalnie) W polu Wskazówka dotycząca domeny wprowadź wartość
contoso.com. Aby uzyskać więcej informacji, zobacz Konfigurowanie logowania bezpośredniego przy użyciu usługi Azure Active Directory B2C.W obszarze Mapowanie oświadczeń dostawcy tożsamości wybierz następujące oświadczenia:
- Identyfikator użytkownika: sub
- Nazwa wyświetlana: nazwa
- Podana nazwa: given_name
- Nazwisko: family_name
- Adres e-mail: adres e-mail
Wybierz Zapisz.
Dodaj dostawcę tożsamości Salesforce do przepływu użytkownika
Na tym etapie skonfigurowano dostawcę tożsamości usługi Salesforce, ale nie jest jeszcze dostępny na żadnej ze stron logowania. Aby dodać dostawcę tożsamości Salesforce do przepływu użytkownika:
- W dzierżawie Azure AD B2C wybierz opcję Przepływy użytkownika.
- Kliknij przepływ użytkownika, do którego chcesz dodać dostawcę tożsamości Salesforce.
- W obszarze Dostawcy tożsamości społecznościowych wybierz pozycję Salesforce.
- Wybierz Zapisz.
- Aby przetestować politykę, wybierz pozycję Uruchom przepływ użytkownika.
- W polu Aplikacja wybierz aplikację internetową o nazwie testapp1 , która została wcześniej zarejestrowana. Adres URL odpowiedzi powinien zawierać wartość
https://jwt.ms. - Wybierz przycisk Uruchom przepływ użytkownika.
- Na stronie rejestracji lub logowania wybierz pozycję Salesforce , aby zalogować się przy użyciu konta usługi Salesforce.
Jeśli proces logowania zakończy się pomyślnie, przeglądarka zostanie przekierowana do https://jwt.ms, gdzie wyświetlana jest zawartość tokenu zwróconego przez Azure AD B2C.
Tworzenie klucza zasad
Musisz przechowywać tajny klucz klienta, który wcześniej zanotowałeś w dzierżawie Azure AD B2C.
- Zaloguj się do witryny Azure Portal.
- Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się na dzierżawę Azure AD B2C z menu Katalogi + subskrypcje.
- Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz pozycję Azure AD B2C.
- Na stronie Przegląd ogólny wybierz pozycję Identity Experience Framework.
- Wybierz Klucze zasad, a następnie wybierz Dodaj.
- W obszarze Opcje wybierz pozycję
Manual. - Wprowadź nazwę klucza zasad. Na przykład
SalesforceSecret. PrefiksB2C_1A_jest dodawany automatycznie do nazwy klucza. - W Tajny wprowadź wcześniej zarejestrowany tajny klienta.
- W obszarze Użycie klucza wybierz pozycję
Signature. - Kliknij pozycję Utwórz.
Konfigurowanie usługi Salesforce jako dostawcy tożsamości
Aby umożliwić użytkownikom logowanie się przy użyciu konta usługi Salesforce, należy zdefiniować konto jako dostawcę oświadczeń, z którym usługa Azure AD B2C może komunikować się za pośrednictwem punktu końcowego. Punkt końcowy udostępnia zestaw oświadczeń używanych przez usługę Azure AD B2C do sprawdzania, czy określony użytkownik został uwierzytelniony.
Konto usługi Salesforce można zdefiniować jako dostawcę oświadczeń, dodając je do elementu ClaimsProviders w pliku rozszerzenia zasad.
Otwórz TrustFrameworkExtensions.xml.
Znajdź element ClaimsProviders . Jeśli nie istnieje, dodaj go pod elementem głównym.
Dodaj nowy element ClaimsProvider w następujący sposób:
<ClaimsProvider> <Domain>salesforce.com</Domain> <DisplayName>Salesforce</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Salesforce-OpenIdConnect"> <DisplayName>Salesforce</DisplayName> <Protocol Name="OpenIdConnect" /> <Metadata> <Item Key="METADATA">https://login.salesforce.com/.well-known/openid-configuration</Item> <Item Key="response_types">code</Item> <Item Key="response_mode">form_post</Item> <Item Key="scope">openid id profile email</Item> <Item Key="HttpBinding">POST</Item> <Item Key="UsePolicyInRedirectUri">0</Item> <!-- Update the Client ID below to the Application ID --> <Item Key="client_id">Your Salesforce application ID</Item> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_SalesforceSecret"/> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" /> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" /> <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" /> <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" /> <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="salesforce.com" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" /> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" /> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" /> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>Adres URL dokumentu Salesforce OpenID Connect Configuration ustawiony jest na metadane. W przypadku piaskownicy login.salesforce.com jest zastępowany przez test.salesforce.com. W przypadku społeczności login.salesforce.com jest zastępowany adresem URL społeczności, takim jak username.force.com/.well-known/openid-configuration. Adres URL musi mieć wartość HTTPS.
Ustaw client_id na identyfikator aplikacji z rejestracji aplikacji.
Zapisz plik.
Dodanie ścieżki użytkownika
W tym momencie dostawca tożsamości został skonfigurowany, ale nie jest jeszcze dostępny na żadnej ze stron logowania. Jeśli nie masz własnej niestandardowej podróży użytkownika, utwórz duplikat szablonu podróży użytkownika, inaczej przejdź do następnego kroku.
- Otwórz plik TrustFrameworkBase.xml z pakietu startowego.
- Znajdź i skopiuj całą zawartość elementu UserJourney , który zawiera
Id="SignUpOrSignIn"element . - Otwórz TrustFrameworkExtensions.xml i znajdź element UserJourneys . Jeśli element nie istnieje, dodaj go.
- Wklej całą zawartość elementu UserJourney skopiowaną jako element podrzędny elementu UserJourneys .
- Zmień identyfikator podróży użytkownika. Na przykład
Id="CustomSignUpSignIn".
Dodaj dostawcę tożsamości do podróży użytkownika
Teraz, gdy masz ścieżkę użytkownika, dodaj nowego dostawcę tożsamości do tej ścieżki. Najpierw dodaj przycisk logowania, a następnie połącz przycisk z akcją. Akcja to utworzony wcześniej profil techniczny.
Znajdź element kroku aranżacji, który zawiera
Type="CombinedSignInAndSignUp"lubType="ClaimsProviderSelection"w ścieżce użytkownika. Zazwyczaj jest to pierwszy krok aranżacji. Element ClaimsProviderSelections zawiera listę dostawców tożsamości, za pomocą których użytkownik może się zalogować. Kolejność elementów kontroluje kolejność przycisków logowania przedstawionych użytkownikowi. Dodaj element XML ClaimsProviderSelection. Ustaw wartość TargetClaimsExchangeId na przyjazną nazwę.W następnym kroku aranżacji dodaj element ClaimsExchange . Ustaw Id na wartość identyfikatora wymiany oświadczeń dla celu. Zaktualizuj wartość TechnicalProfileReferenceId na Id profilu technicznego utworzonego wcześniej.
Poniższy kod XML przedstawia dwa pierwsze kroki orkiestracji podróży użytkownika z dostawcą tożsamości:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="SalesforceExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="SalesforceExchange" TechnicalProfileReferenceId="Salesforce-OpenIdConnect" />
</ClaimsExchanges>
</OrchestrationStep>
Konfigurowanie polityki podmiotu polegającego
Polityka zaufanej strony, na przykład SignUpSignIn.xml, określa podróż użytkownika, którą zrealizuje Azure AD B2C. Znajdź element DefaultUserJourney w stronie zaufanej. Zaktualizuj identyfikator ReferenceId , aby był zgodny z identyfikatorem podróży użytkownika, w którym dodano dostawcę tożsamości.
W poniższym przykładzie dla ścieżki użytkownika CustomSignUpSignIn identyfikator ReferenceId jest ustawiony na:CustomSignUpSignIn
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
Przekaż zasady niestandardowe
- Zaloguj się do witryny Azure Portal.
- Wybierz ikonę Katalog i subskrypcja na pasku narzędzi portalu, a następnie wybierz katalog zawierający dzierżawę usługi Azure AD B2C.
- W witrynie Azure Portal wyszukaj i wybierz pozycję Azure AD B2C.
- W obszarze Policieswybierz pozycję Identity Experience Framework.
- Wybierz Załaduj zasady niestandardowe, a następnie załaduj dwa zmienione pliki zasad w następującej kolejności: zasady rozszerzenia, na przykład
TrustFrameworkExtensions.xml, a następnie zasady strony zależnej, takie jakSignUpSignIn.xml.
Przetestuj swoje zasady niestandardowe
- Wybierz zasady zaufanej strony, na przykład
B2C_1A_signup_signin. - W polu Aplikacja wybierz wcześniej zarejestrowaną aplikację internetową. Adres URL odpowiedzi powinien zawierać wartość
https://jwt.ms. - Wybierz przycisk Uruchom teraz .
- Na stronie rejestracji lub logowania wybierz pozycję Salesforce , aby zalogować się przy użyciu konta usługi Salesforce.
Jeśli proces logowania zakończy się pomyślnie, przeglądarka zostanie przekierowana do https://jwt.ms, gdzie wyświetlana jest zawartość tokenu zwróconego przez Azure AD B2C.
Dalsze kroki
Dowiedz się, jak przekazać token Salesforce do aplikacji.