Tworzenie i odczytywanie konta użytkownika przy użyciu zasad niestandardowych usługi Azure Active Directory B2C
Usługa Azure Active Directory B2C (Azure AD B2C) jest oparta na identyfikatorze Entra firmy Microsoft i używa magazynu Microsoft Entra ID do przechowywania kont użytkowników. Profil użytkownika katalogu usługi Azure AD B2C zawiera wbudowany zestaw atrybutów, takich jak imię, nazwisko, miasto, kod pocztowy i numer telefonu, ale można rozszerzyć profil użytkownika przy użyciu własnych atrybutów niestandardowych bez konieczności używania zewnętrznego magazynu danych.
Zasady niestandardowe mogą łączyć się z magazynem Microsoft Entra ID przy użyciu profilu technicznego Microsoft Entra ID w celu przechowywania, aktualizowania lub usuwania informacji o użytkowniku. Z tego artykułu dowiesz się, jak skonfigurować zestaw profilów technicznych microsoft Entra ID do przechowywania i odczytywania konta użytkownika przed zwróceniem tokenu JWT.
Omówienie scenariusza
W artykule Wywoływanie interfejsu API REST przy użyciu usługi Azure Active Directory B2C zasad niestandardowych zbieramy informacje od użytkownika, weryfikowaliśmy dane, nazywano interfejsem API REST, a na koniec zwracaliśmy zestaw JWT bez przechowywania konta użytkownika. Musimy przechowywać informacje o użytkowniku, aby nie utracić informacji po zakończeniu wykonywania zasad. Tym razem po zebraniu informacji o użytkowniku i zweryfikowaniu go musimy przechowywać informacje o użytkowniku w magazynie usługi Azure AD B2C, a następnie odczytywać przed zwróceniem tokenu JWT. Pełny proces przedstawiono na poniższym diagramie.
Wymagania wstępne
Jeśli jeszcze go nie masz, utwórz dzierżawę usługi Azure AD B2C połączoną z subskrypcją platformy Azure.
Zarejestruj aplikację internetową i włącz niejawne przyznanie tokenu identyfikatora. W przypadku identyfikatora URI przekierowania użyj polecenia https://jwt.ms.
Na komputerze musi być zainstalowany program Visual Studio Code (VS Code ).
Wykonaj kroki opisane w temacie Wywoływanie interfejsu API REST przy użyciu niestandardowych zasad usługi Azure Active Directory B2C. Ten artykuł jest częścią serii Instrukcje tworzenia i uruchamiania własnych zasad niestandardowych.
Uwaga
Ten artykuł jest częścią serii Instrukcje tworzenia i uruchamiania własnych zasad niestandardowych w usłudze Azure Active Directory B2C. Zalecamy rozpoczęcie tej serii od pierwszego artykułu.
Krok 1. Deklarowanie oświadczeń
Należy zadeklarować dwa kolejne oświadczenia, userPrincipalName
i passwordPolicies
:
ContosoCustomPolicy.XML
W pliku znajdź element ClaimsSchema i zadeklarujuserPrincipalName
ipasswordPolicies
oświadczenia, używając następującego kodu:<ClaimType Id="userPrincipalName"> <DisplayName>UserPrincipalName</DisplayName> <DataType>string</DataType> <UserHelpText>Your user name as stored in the Azure Active Directory.</UserHelpText> </ClaimType> <ClaimType Id="passwordPolicies"> <DisplayName>Password Policies</DisplayName> <DataType>string</DataType> <UserHelpText>Password policies used by Azure AD to determine password strength, expiry etc.</UserHelpText> </ClaimType>
Dowiedz się więcej o użyciu
userPrincipalName
oświadczeń ipasswordPolicies
w artykule Atrybuty profilu użytkownika.
Krok 2. Tworzenie profilów technicznych identyfikatora entra firmy Microsoft
Należy skonfigurować dwa profile techniczne identyfikatora entra firmy Microsoft. Jeden profil techniczny zapisuje szczegóły użytkownika w magazynie Microsoft Entra ID, a drugi odczytuje konto użytkownika z magazynu Microsoft Entra ID.
ContosoCustomPolicy.XML
W pliku znajdź element ClaimsProviders i dodaj nowego dostawcę oświadczeń, używając poniższego kodu. Ten dostawca oświadczeń przechowuje profile techniczne identyfikatora entra firmy Microsoft:<ClaimsProvider> <DisplayName>Azure AD Technical Profiles</DisplayName> <TechnicalProfiles> <!--You'll add you Azure AD Technical Profiles here--> </TechnicalProfiles> </ClaimsProvider>
W właśnie utworzonym dostawcy oświadczeń dodaj profil techniczny Microsoft Entra ID przy użyciu następującego kodu:
<TechnicalProfile Id="AAD-UserWrite"> <DisplayName>Write user information to AAD</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AzureActiveDirectoryProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <Metadata> <Item Key="Operation">Write</Item> <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">true</Item> <Item Key="UserMessageIfClaimsPrincipalAlreadyExists">The account already exists. Try to create another account</Item> </Metadata> <InputClaims> <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" Required="true" /> </InputClaims> <PersistedClaims> <PersistedClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" /> <PersistedClaim ClaimTypeReferenceId="displayName" /> <PersistedClaim ClaimTypeReferenceId="givenName" /> <PersistedClaim ClaimTypeReferenceId="surname" /> <PersistedClaim ClaimTypeReferenceId="password"/> <PersistedClaim ClaimTypeReferenceId="passwordPolicies" DefaultValue="DisablePasswordExpiration,DisableStrongPassword" /> </PersistedClaims> <OutputClaims> <OutputClaim ClaimTypeReferenceId="objectId" /> <OutputClaim ClaimTypeReferenceId="userPrincipalName" /> <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" /> </OutputClaims> </TechnicalProfile>
Dodaliśmy nowy profil techniczny microsoft Entra ID.
AAD-UserWrite
Należy zanotować następujące ważne elementy profilu technicznego:Operacja: Operacja określa akcję do wykonania, w tym przypadku write. Dowiedz się więcej o innych operacjach u dostawcy technicznego identyfikatora entra firmy Microsoft.
Oświadczenia utrwalone: element PersistedClaims zawiera wszystkie wartości, które powinny być przechowywane w magazynie Microsoft Entra ID.
InputClaims: element InputClaims zawiera oświadczenie, które służy do wyszukiwania konta w katalogu lub tworzenia nowego. W kolekcji oświadczeń wejściowych musi znajdować się dokładnie jeden element oświadczenia wejściowego dla wszystkich profilów technicznych identyfikatora entra firmy Microsoft. Ten profil techniczny używa oświadczenia e-mail jako identyfikatora klucza dla konta użytkownika. Dowiedz się więcej o innych identyfikatorach kluczy, których można używać w sposób unikatowy do identyfikowania konta użytkownika.
ContosoCustomPolicy.XML
W pliku znajdźAAD-UserWrite
profil techniczny, a następnie dodaj nowy profil techniczny, używając następującego kodu:<TechnicalProfile Id="AAD-UserRead"> <DisplayName>Read user from Azure AD storage</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AzureActiveDirectoryProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <Metadata> <Item Key="Operation">Read</Item> <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">false</Item> <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">false</Item> </Metadata> <InputClaims> <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" Required="true" /> </InputClaims> <OutputClaims> <OutputClaim ClaimTypeReferenceId="objectId" /> <OutputClaim ClaimTypeReferenceId="userPrincipalName" /> <OutputClaim ClaimTypeReferenceId="givenName"/> <OutputClaim ClaimTypeReferenceId="surname"/> <OutputClaim ClaimTypeReferenceId="displayName"/> </OutputClaims> </TechnicalProfile>
Dodaliśmy nowy profil techniczny microsoft Entra ID.
AAD-UserRead
Skonfigurowaliśmy ten profil techniczny, aby wykonać operację odczytu i zwrócićobjectId
oświadczenia ,userPrincipalName
,givenName
surname
idisplayName
, jeśli zostanie znalezione konto użytkownika zemail
sekcjąInputClaim
.
Krok 3. Korzystanie z profilu technicznego Microsoft Entra ID
Po zebraniu szczegółów użytkownika przy użyciu własnego profilu technicznego UserInformationCollector
musimy napisać konto użytkownika w magazynie Microsoft Entra ID przy użyciu profilu technicznego AAD-UserWrite
. W tym celu należy użyć profilu technicznego AAD-UserWrite
jako profilu technicznego weryfikacji w profilu technicznym samodzielnie asertywnego UserInformationCollector
.
ContosoCustomPolicy.XML
W pliku znajdź UserInformationCollector
profil techniczny, a następnie dodaj AAD-UserWrite
profil techniczny jako profil techniczny weryfikacji w ValidationTechnicalProfiles
kolekcji. Należy dodać to po CheckCompanyDomain
profilu technicznym weryfikacji.
Użyjemy profilu technicznego AAD-UserRead
w krokach aranżacji podróży użytkownika, aby odczytać szczegóły użytkownika przed wystawieniem tokenu JWT.
Krok 4. Aktualizowanie profilu technicznego ClaimGenerator
Używamy profilu technicznego ClaimGenerator
do wykonywania trzech przekształceń oświadczeń, GenerateRandomObjectIdTransformation, CreateDisplayNameTransformation i CreateMessageTransformation.
ContosoCustomPolicy.XML
W pliku znajdźClaimGenerator
profil techniczny i zastąp go następującym kodem:<TechnicalProfile Id="UserInputMessageClaimGenerator"> <DisplayName>User Message Claim Generator Technical Profile</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <OutputClaims> <OutputClaim ClaimTypeReferenceId="message" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateMessageTransformation" /> </OutputClaimsTransformations> </TechnicalProfile> <TechnicalProfile Id="UserInputDisplayNameGenerator"> <DisplayName>Display Name Claim Generator Technical Profile</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <OutputClaims> <OutputClaim ClaimTypeReferenceId="displayName" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateDisplayNameTransformation" /> </OutputClaimsTransformations> </TechnicalProfile>
Profil techniczny został podzielony na dwa oddzielne profile techniczne. Profil techniczny UserInputMessageClaimGenerator generuje komunikat wysłany jako oświadczenie w tokenie JWT. Profil techniczny UserInputDisplayNameGenerator generuje
displayName
oświadczenie. WartośćdisplayName
oświadczenia musi być dostępna, zanimAAD-UserWrite
profil techniczny zapisze rekord użytkownika w magazynie Microsoft Entra ID. W nowym kodzie usuwamy funkcję GenerateRandomObjectIdTransformation , ponieważobjectId
jest ona tworzona i zwracana przez identyfikator Entra firmy Microsoft po utworzeniu konta, więc nie musimy generować jej samodzielnie w ramach zasad.ContosoCustomPolicy.XML
W pliku znajdźUserInformationCollector
własny profil techniczny, a następnie dodajUserInputDisplayNameGenerator
profil techniczny jako profil techniczny weryfikacji. Po wykonaniuUserInformationCollector
tej czynności kolekcja profiluValidationTechnicalProfiles
technicznego powinna wyglądać podobnie do następującego kodu:<!--<TechnicalProfile Id="UserInformationCollector">--> <ValidationTechnicalProfiles> <ValidationTechnicalProfile ReferenceId="CheckCompanyDomain"> <Preconditions> <Precondition Type="ClaimEquals" ExecuteActionsIf="false"> <Value>accountType</Value> <Value>work</Value> <Action>SkipThisValidationTechnicalProfile</Action> </Precondition> </Preconditions> </ValidationTechnicalProfile> <ValidationTechnicalProfile ReferenceId="DisplayNameClaimGenerator"/> <ValidationTechnicalProfile ReferenceId="AAD-UserWrite"/> </ValidationTechnicalProfiles> <!--</TechnicalProfile>-->
Przed zapisaniem rekordu użytkownika w magazynie Microsoft Entra ID należy dodać profil techniczny weryfikacji,
AAD-UserWrite
ponieważdisplayName
AAD-UserWrite
wartość oświadczenia musi być dostępna.
Krok 5. Aktualizowanie kroków orkiestracji podróży użytkownika
HelloWorldJourney
Znajdź podróż użytkownika i zastąp wszystkie kroki orkiestracji następującym kodem:
<!--<OrchestrationSteps>-->
<OrchestrationStep Order="1" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="AccountTypeInputCollectorClaimsExchange" TechnicalProfileReferenceId="AccountTypeInputCollector"/>
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="GetAccessCodeClaimsExchange" TechnicalProfileReferenceId="AccessCodeInputCollector" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="GetUserInformationClaimsExchange" TechnicalProfileReferenceId="UserInformationCollector"/>
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="4" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="AADUserReaderExchange" TechnicalProfileReferenceId="AAD-UserRead"/>
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="5" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="GetMessageClaimsExchange" TechnicalProfileReferenceId="UserInputMessageClaimGenerator"/>
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="6" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer"/>
<!--</OrchestrationSteps>-->
W kroku 4
aranżacji wykonamy AAD-UserRead
profil techniczny, aby odczytać szczegóły użytkownika (które mają zostać uwzględnione w tokenie JWT) z utworzonego konta użytkownika.
Ponieważ nie przechowujemy message
oświadczenia, w kroku 5
aranżacji wykonujemy UserInputMessageClaimGenerator
polecenie w celu wygenerowania message
oświadczenia do dołączenia do tokenu JWT.
Krok 6. Przekazywanie zasad
Wykonaj kroki opisane w temacie Przekazywanie pliku zasad niestandardowych, aby przekazać plik zasad. Jeśli przekazujesz plik o tej samej nazwie co plik już w portalu, upewnij się, że wybierzesz pozycję Zastąp zasady niestandardowe, jeśli już istnieje.
Krok 7. Testowanie zasad
Wykonaj kroki opisane w artykule Testowanie zasad niestandardowych, aby przetestować zasady niestandardowe.
Po zakończeniu wykonywania zasad i otrzymaniu tokenu identyfikatora sprawdź, czy rekord użytkownika został utworzony:
Zaloguj się do witryny Azure Portal przy użyciu uprawnień administratora globalnego Administracja istratora lub roli uprzywilejowanej Administracja istratora.
Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się do dzierżawy usługi Azure AD B2C z menu Katalogi i subskrypcje.
W obszarze Usługi platformy Azure wybierz pozycję Azure AD B2C. Możesz też użyć pola wyszukiwania, aby znaleźć i wybrać usługę Azure AD B2C.
W obszarze Zarządzanie wybierz pozycję Użytkownicy.
Znajdź właśnie utworzone konto użytkownika i wybierz je. Profil konta wygląda podobnie do poniższego zrzutu ekranu:
W naszym AAD-UserWrite
profilu technicznym microsoft Entra ID określamy, że jeśli użytkownik już istnieje, zgłaszamy komunikat o błędzie.
Ponownie przetestuj zasady niestandardowe przy użyciu tego samego adresu e-mail. Zamiast wykonywania zasad w celu ukończenia wystawiania tokenu identyfikatora powinien zostać wyświetlony komunikat o błędzie podobny do poniższego zrzutu ekranu.
Uwaga
Wartość oświadczenia hasła jest bardzo ważnym elementem informacji, dlatego należy zachować ostrożność podczas obsługi jej w zasadach niestandardowych. Z podobnej przyczyny usługa Azure AD B2C traktuje wartość oświadczenia hasła jako wartość specjalną. Po zebraniu wartości oświadczenia hasła w samozwańcznym profilu technicznym ta wartość jest dostępna tylko w ramach tego samego profilu technicznego lub w ramach profilów technicznych weryfikacji, które są przywoływane przez ten sam własny profil techniczny. Po zakończeniu wykonywania tego samozwańczego profilu technicznego i przejściu do innego profilu technicznego wartość zostanie utracona.
Weryfikowanie adresu e-mail użytkownika
Zalecamy zweryfikowanie adresu e-mail użytkownika przed użyciem go do utworzenia konta użytkownika. Podczas weryfikowania adresów e-mail upewnij się, że konta są tworzone przez prawdziwych użytkowników. Pomagasz również użytkownikom w korzystaniu z poprawnych adresów e-mail w celu utworzenia konta.
Niestandardowe zasady usługi Azure AD B2C umożliwiają weryfikowanie adresu e-mail przy użyciu kontrolki wyświetlania weryfikacji. Wysyłasz kod weryfikacyjny do wiadomości e-mail. Po wysłaniu kodu użytkownik odczytuje komunikat, wprowadza kod weryfikacyjny do kontrolki dostarczonej przez kontrolkę wyświetlania i wybiera przycisk Weryfikuj kod .
Kontrolka wyświetlania to element interfejsu użytkownika, który ma specjalne funkcje i współdziała z usługą zaplecza azure Active Directory B2C (Azure AD B2C). Umożliwia on użytkownikowi wykonywanie akcji na stronie, które wywołują profil techniczny weryfikacji na zapleczu. Kontrolki wyświetlania są wyświetlane na stronie i są przywoływane przez własny profil techniczny.
Aby dodać weryfikację poczty e-mail przy użyciu kontrolki wyświetlania, wykonaj następujące kroki:
Deklarowanie oświadczenia
Należy zadeklarować oświadczenie, które ma być używane do przechowywania kodu weryfikacji.
Aby zadeklarować oświadczenie, w ContosoCustomPolicy.XML
pliku znajdź ClaimsSchema
element i zadeklaruj verificationCode
oświadczenie przy użyciu następującego kodu:
<!--<ClaimsSchema>-->
...
<ClaimType Id="verificationCode">
<DisplayName>Verification Code</DisplayName>
<DataType>string</DataType>
<UserHelpText>Enter your verification code</UserHelpText>
<UserInputType>TextBox</UserInputType>
</ClaimType>
<!--</ClaimsSchema>-->
Konfigurowanie profilu technicznego wysyłania i weryfikowania kodu
Usługa Azure AD B2C używa profilu technicznego samoobsługowego resetowania hasła identyfikatora firmy Microsoft w celu zweryfikowania adresu e-mail. Ten profil techniczny może wygenerować i wysłać kod na adres e-mail lub zweryfikować kod w zależności od sposobu jego konfigurowania.
ContosoCustomPolicy.XML
W pliku znajdź ClaimsProviders
element i dodaj dostawcę oświadczeń przy użyciu następującego kodu:
<ClaimsProvider>
<DisplayName>Azure AD self-service password reset (SSPR)</DisplayName>
<TechnicalProfiles>
<TechnicalProfile Id="AadSspr-SendCode">
<DisplayName>Send Code</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Operation">SendCode</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" PartnerClaimType="emailAddress" />
</InputClaims>
</TechnicalProfile>
<TechnicalProfile Id="AadSspr-VerifyCode">
<DisplayName>Verify Code</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Operation">VerifyCode</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="verificationCode" />
<InputClaim ClaimTypeReferenceId="email" PartnerClaimType="emailAddress" />
</InputClaims>
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
Skonfigurowaliśmy dwa profile AadSspr-SendCode
techniczne i AadSspr-VerifyCode
. AadSspr-SendCode
Generuje i wysyła kod na adres e-mail określony w InputClaims
sekcji, podczas gdy AadSspr-VerifyCode
weryfikuje kod. Należy określić akcję, którą chcesz wykonać w metadanych profilu technicznego.
Konfigurowanie kontrolki wyświetlania
Musisz skonfigurować kontrolkę wyświetlania weryfikacji poczty e-mail, aby umożliwić weryfikowanie poczty e-mail użytkowników. Skonfigurowana kontrolka wyświetlania weryfikacji poczty e-mail zastąpi oświadczenie wyświetlania wiadomości e-mail używane do zbierania wiadomości e-mail od użytkownika.
Aby skonfigurować kontrolkę wyświetlania, wykonaj następujące czynności:
ContosoCustomPolicy.XML
W pliku znajdź sekcjęBuildingBlocks
, a następnie dodaj kontrolkę wyświetlania jako element podrzędny przy użyciu następującego kodu:<!--<BuildingBlocks>--> .... <DisplayControls> <DisplayControl Id="emailVerificationControl" UserInterfaceControlType="VerificationControl"> <DisplayClaims> <DisplayClaim ClaimTypeReferenceId="email" Required="true" /> <DisplayClaim ClaimTypeReferenceId="verificationCode" ControlClaimType="VerificationCode" Required="true" /> </DisplayClaims> <OutputClaims></OutputClaims> <Actions> <Action Id="SendCode"> <ValidationClaimsExchange> <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AadSspr-SendCode" /> </ValidationClaimsExchange> </Action> <Action Id="VerifyCode"> <ValidationClaimsExchange> <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AadSspr-VerifyCode" /> </ValidationClaimsExchange> </Action> </Actions> </DisplayControl> </DisplayControls> <!--</BuildingBlocks>-->
Zadeklarowaliśmy kontrolkę wyświetlania:
emailVerificationControl
. Zanotuj następujące ważne elementy:DisplayClaims — podobnie jak w przypadku samodzielnego profilu technicznego, ta sekcja określa kolekcję oświadczeń, które mają być zbierane od użytkownika w kontrolce wyświetlania.
Akcje — określa kolejność akcji, które mają być wykonywane przez kontrolkę wyświetlania. Każda akcja odwołuje się do profilu technicznego odpowiedzialnego za wykonywanie akcji. Na przykład kod SendCode odwołuje się do profilu technicznego
AadSspr-SendCode
, który generuje i wysyła kod na adres e-mail.
ContosoCustomPolicy.XML
W pliku znajdźUserInformationCollector
własny profil techniczny i zastąp oświadczenie wyświetlania wiadomości e-mail, aby wyświetlićemailVerificationControl
kontrolę:Od:
<DisplayClaim ClaimTypeReferenceId="email" Required="true"/>
Do:
<DisplayClaim DisplayControlReferenceId="emailVerificationControl" />
Użyj procedury w kroku 6 i kroku 7 , aby przekazać plik zasad i przetestować go. Tym razem musisz zweryfikować swój adres e-mail przed utworzeniem konta użytkownika.
Aktualizowanie konta użytkownika przy użyciu profilu technicznego Microsoft Entra ID
Możesz skonfigurować profil techniczny microsoft Entra ID w celu zaktualizowania konta użytkownika zamiast próby utworzenia nowego. W tym celu ustaw profil techniczny Identyfikator entra firmy Microsoft, aby zgłosić błąd, jeśli określone konto użytkownika jeszcze nie istnieje w Metadata
kolekcji, używając następującego kodu. Operacja musi być ustawiona na Zapis:
<Item Key="Operation">Write</Item>
<Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
Używanie atrybutów niestandardowych
W tym artykule przedstawiono sposób przechowywania szczegółów użytkownika przy użyciu wbudowanych atrybutów profilu użytkownika. Jednak często trzeba utworzyć własne atrybuty niestandardowe, aby zarządzać konkretnym scenariuszem. W tym celu postępuj zgodnie z instrukcjami w artykule Define custom attributes in Azure Active Directory B2C (Definiowanie atrybutów niestandardowych w usłudze Azure Active Directory B2C ).
Następne kroki
Dowiedz się, jak skonfigurować przepływ rejestracji i logowania dla konta lokalnego przy użyciu niestandardowych zasad usługi Azure Active Directory B2C.
Dowiedz się, jak definiować atrybuty niestandardowe w zasadach niestandardowych.
Dowiedz się, jak dodać wygaśnięcie hasła do zasad niestandardowych.
Dowiedz się więcej o profilu technicznym microsoft Entra ID.