Azure Active Directory B2C özel ilkesini kullanarak kullanıcı hesabı oluşturma ve okuma
Azure Active Directory B2C (Azure AD B2C), Microsoft Entra Id üzerine kurulmuştur ve bu nedenle kullanıcı hesaplarını depolamak için Microsoft Entra ID depolamayı kullanır. Azure AD B2C dizin kullanıcı profili, verilen ad, soyadı, şehir, posta kodu ve telefon numarası gibi yerleşik bir öznitelik kümesiyle birlikte gelir, ancak dış veri deposuna gerek kalmadan kullanıcı profilini kendi özel özniteliklerinizle genişletebilirsiniz.
Özel ilkeniz, kullanıcı bilgilerini depolamak, güncelleştirmek veya silmek için Microsoft Entra ID teknik profilini kullanarak Microsoft Entra ID depolamaya bağlanabilir. Bu makalede, JWT belirteci döndürülmeden önce bir kullanıcı hesabını depolamak ve okumak için bir dizi Microsoft Entra ID teknik profili yapılandırmayı öğreneceksiniz.
Senaryoya genel bakış
Azure Active Directory B2C özel ilke makalesini kullanarak REST API çağırma makalesinde kullanıcıdan bilgi toplar, verileri doğrular, REST API olarak adlandırılır ve son olarak kullanıcı hesabını depolamadan bir JWT döndürürdük. İlke yürütmeyi tamamladıktan sonra bilgileri kaybetmemek için kullanıcı bilgilerini depolamamız gerekir. Bu kez kullanıcı bilgilerini toplayıp doğruladıktan sonra kullanıcı bilgilerini Azure AD B2C depolama alanında depolamamız ve JWT belirtecini döndürmeden önce okumamız gerekir. İşlemin tamamı aşağıdaki diyagramda gösterilmiştir.
Ön koşullar
Henüz bir kiracınız yoksa, Azure aboneliğinize bağlı bir Azure AD B2C kiracısı oluşturun.
Bir web uygulaması kaydedin ve kimlik belirteci örtük verme özelliğini etkinleştirin. Yeniden Yönlendirme URI'sinde kullanın https://jwt.ms.
Bilgisayarınızda Visual Studio Code (VS Code) yüklü olmalıdır.
Azure Active Directory B2C özel ilkesini kullanarak REST API çağırma makalesindeki adımları tamamlayın. Bu makale, Kendi özel ilkelerinizi oluşturma ve çalıştırma kılavuz serisinin bir parçasıdır.
Dekont
Bu makale, Azure Active Directory B2C'de kendi özel ilkelerinizi oluşturma ve çalıştırma nasıl yapılır kılavuzu serisinin bir parçasıdır. Bu seriyi ilk makaleden başlatmanızı öneririz.
1. Adım - Beyanları bildirme
ve olmak üzere iki talep userPrincipalName
passwordPolicies
daha bildirmeniz gerekir:
ContosoCustomPolicy.XML
dosyasında ClaimsSchema öğesini bulun ve aşağıdaki kodu kullanarak vepasswordPolicies
beyanlarını bildirinuserPrincipalName
:<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>
Kullanıcı profili öznitelikleri makalesinde ve
passwordPolicies
taleplerininuserPrincipalName
kullanımları hakkında daha fazla bilgi edinin.
2. Adım - Microsoft Entra ID teknik profilleri oluşturma
İki Microsoft Entra Id teknik profili yapılandırmanız gerekir. Teknik profillerden biri kullanıcı ayrıntılarını Microsoft Entra ID depolama alanına, diğeri ise Microsoft Entra ID depolama alanından bir kullanıcı hesabını okur.
ContosoCustomPolicy.XML
dosyasında ClaimsProviders öğesini bulun ve aşağıdaki kodu kullanarak yeni bir talep sağlayıcısı ekleyin. Bu talep sağlayıcısı Microsoft Entra Id teknik profillerini barındırıyor:<ClaimsProvider> <DisplayName>Azure AD Technical Profiles</DisplayName> <TechnicalProfiles> <!--You'll add you Azure AD Technical Profiles here--> </TechnicalProfiles> </ClaimsProvider>
Yeni oluşturduğunuz talep sağlayıcısına aşağıdaki kodu kullanarak bir Microsoft Entra ID teknik profili ekleyin:
<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>
Yeni bir Microsoft Entra Id teknik profili ekledik.
AAD-UserWrite
Teknik profilin aşağıdaki önemli bölümlerini not almanız gerekir:İşlem: İşlem, gerçekleştirilecek eylemi belirtir( bu örnekte, Yazma). Microsoft Entra ID teknik sağlayıcısındaki diğer işlemler hakkında daha fazla bilgi edinin.
Kalıcı talepler: PersistedClaims öğesi, Microsoft Entra Id depolamada depolanması gereken tüm değerleri içerir.
InputClaims: InputClaims öğesi, dizinde bir hesap aramak veya yeni bir hesap oluşturmak için kullanılan bir talep içerir. Tüm Microsoft Entra Id teknik profilleri için giriş talepleri koleksiyonunda tam olarak bir giriş talep öğesi olmalıdır. Bu teknik profil, kullanıcı hesabının anahtar tanımlayıcısı olarak e-posta talebi kullanır. Bir kullanıcı hesabını benzersiz olarak tanımlamak için kullanabileceğiniz diğer anahtar tanımlayıcıları hakkında daha fazla bilgi edinin.
ContosoCustomPolicy.XML
Dosyasında teknik profili bulunAAD-UserWrite
ve ardından aşağıdaki kodu kullanarak arkasına yeni bir teknik profil ekleyin:<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>
Yeni bir Microsoft Entra Id teknik profili ekledik.
AAD-UserRead
Bu teknik profili bir okuma işlemi gerçekleştirecek ve bölümünde bulunanemail
InputClaim
bir kullanıcı hesabı bulunursa ,givenName
userPrincipalName
,surname
vedisplayName
taleplerini döndürecekobjectId
şekilde yapılandırdık.
3. Adım - Microsoft Entra Id teknik profilini kullanma
Kendi kendine onaylanan teknik profili kullanarak UserInformationCollector
kullanıcı ayrıntılarını topladıktan sonra, teknik profili kullanarak Microsoft Entra ID depolama alanına AAD-UserWrite
bir kullanıcı hesabı yazmamız gerekir. Bunu yapmak için, kendi kendine onaylanan teknik profilde UserInformationCollector
doğrulama teknik profili olarak teknik profili kullanınAAD-UserWrite
.
ContosoCustomPolicy.XML
dosyasında teknik profili bulun UserInformationCollector
ve ardından teknik profili koleksiyona ValidationTechnicalProfiles
doğrulama teknik profili olarak ekleyinAAD-UserWrite
. Bunu doğrulama teknik profilinden CheckCompanyDomain
sonra eklemeniz gerekir.
JWT belirteci AAD-UserRead
vermeden önce kullanıcı ayrıntılarını okumak için kullanıcı yolculuğu düzenleme adımlarında teknik profili kullanacağız.
4. Adım - ClaimGenerator teknik profilini güncelleştirme
GenerateRandomObjectIdTransformation, CreateDisplayNameTransformation ve CreateMessageTransformation olmak üzere üç talep dönüştürmesi yürütmek için teknik profili kullanırızClaimGenerator
.
ContosoCustomPolicy.XML
dosyasında teknik profili bulunClaimGenerator
ve aşağıdaki kodla değiştirin:<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>
Teknik profili iki ayrı teknik profile bölmüş olduk. UserInputMessageClaimGenerator teknik profili, JWT belirtecinde talep olarak gönderilen iletiyi oluşturur. UserInputDisplayNameGenerator teknik profili talebi oluşturur
displayName
. TeknikdisplayName
profil kullanıcı kaydını Microsoft Entra ID depolama alanına yazmadan önceAAD-UserWrite
talep değerinin kullanılabilir olması gerekir. Yeni kodda, bir hesap oluşturulduktan sonra Microsoft Entra Kimliği tarafından oluşturulur ve döndürülürken GenerateRandomObjectIdTransformation'ıobjectId
kaldırırız, bu nedenle ilke içinde kendimiz oluşturmamız gerekmez.ContosoCustomPolicy.XML
Dosyasında, kendi kendine onaylanan teknik profili bulunUserInformationCollector
ve ardından teknik profili doğrulama teknik profili olarak ekleyinUserInputDisplayNameGenerator
. Bunu yaptıktan sonra, teknik profilinUserInformationCollector
ValidationTechnicalProfiles
koleksiyonu aşağıdaki koda benzer görünmelidir:<!--<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>-->
Teknik profilin kullanıcı kaydını Microsoft Entra ID depolama alanına yazmadan önce talep değerinin kullanılabilir olması gerektiğinden
AAD-UserWrite
doğrulama teknik profilini eklemenizAAD-UserWrite
displayName
gerekir.
5. Adım - Kullanıcı yolculuğu düzenleme adımlarını güncelleştirme
Kullanıcı yolculuğunuzu HelloWorldJourney
bulun ve tüm düzenleme adımlarını aşağıdaki kodla değiştirin:
<!--<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>-->
Düzenleme adımında 4
, oluşturulan kullanıcı hesabından AAD-UserRead
kullanıcı ayrıntılarını (JWT belirtecine dahil edilecek) okumak için teknik profili yürüteceğiz.
Talebi depolamadığımız message
için düzenleme adımında 5
JWT belirtecine UserInputMessageClaimGenerator
eklenmesi için talebi oluşturmak message
üzere dosyasını yürütüriz.
6. Adım - İlkeyi karşıya yükleme
İlke dosyanızı karşıya yüklemek için Özel ilke dosyasını karşıya yükleme bölümünde yer alan adımları izleyin. Portalda bulunan dosyayla aynı ada sahip bir dosyayı karşıya yüklüyorsanız, zaten varsa Özel ilkenin üzerine yaz'ı seçtiğinizden emin olun.
7. Adım - Test ilkesi
Özel ilkenizi test etmek için Özel ilkeyi test etme'deki adımları izleyin.
İlke yürütmeyi tamamladıktan ve kimlik belirtecinizi aldıktan sonra kullanıcı kaydının oluşturulup oluşturulmadığını denetleyin:
Azure portalında Genel Yönetici istrator veya Privileged Role Yönetici istrator izinleriyle oturum açın.
Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Azure AD B2C kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.
Azure hizmetleri'nin altında Azure AD B2C'yi seçin. Azure AD B2C'yi bulmak ve seçmek için arama kutusunu da kullanabilirsiniz.
Yönet bölümünde Kullanıcılar'ı seçin.
Yeni oluşturduğunuz kullanıcı hesabını bulun ve seçin. Hesap profili aşağıdaki ekran görüntüsüne benzer:
Microsoft Entra Id teknik profilimizde AAD-UserWrite
, kullanıcı zaten varsa bir hata iletisi oluşturmamızı belirtiriz.
Aynı E-posta Adresini kullanarak özel ilkenizi yeniden test edin. Kimlik belirteci vermek için tamamlanmaya kadar yürütülen ilke yerine aşağıdaki ekran görüntüsüne benzer bir hata iletisi görmeniz gerekir.
Dekont
Parola talep değeri çok önemli bir bilgi parçasıdır, bu nedenle özel ilkenizde nasıl işlediğinize çok dikkat edin. Benzer bir nedenle, Azure AD B2C parola talep değerini özel bir değer olarak değerlendirir. Kendi kendine onaylanan teknik profilde parola talep değerini topladığınızda, bu değer yalnızca aynı teknik profilde veya kendi kendine onaylanan aynı teknik profil tarafından başvuruda bulunulan doğrulama teknik profillerinde kullanılabilir. Kendi kendine onaylanan bu teknik profilin yürütülmesi tamamlandıktan ve başka bir teknik profile geçtikten sonra değer kaybolur.
Kullanıcı e-posta adresini doğrulama
Kullanıcı hesabı oluşturmak için kullanmadan önce kullanıcının e-postasını doğrulamanızı öneririz. E-posta adreslerini doğruladığınızda, hesapların gerçek kullanıcılar tarafından oluşturulduğundan emin olursunuz. Ayrıca, kullanıcıların hesap oluşturmak için doğru e-posta adreslerini kullandıklarında emin olmalarına da yardımcı olursunuz.
Azure AD B2C'nin özel ilkesi, doğrulama görüntüleme denetimini kullanarak e-posta adresini doğrulamanın bir yolunu sağlar. E-postaya bir doğrulama kodu gönderirsiniz. Kod gönderildikten sonra kullanıcı iletiyi okur, doğrulama kodunu görüntüleme denetimi tarafından sağlanan denetime girer ve Kodu Doğrula düğmesini seçer.
Görüntüleme denetimi, özel işlevlere sahip olan ve Azure Active Directory B2C (Azure AD B2C) arka uç hizmetiyle etkileşim kuran bir kullanıcı arabirimi öğesidir. Kullanıcının sayfada arka uçta doğrulama teknik profili çağıran eylemler gerçekleştirmesine olanak tanır. Görüntüleme denetimleri sayfada görüntülenir ve kendinden onaylanan bir teknik profil tarafından başvurulur.
Görüntüleme denetimi kullanarak e-posta doğrulaması eklemek için aşağıdaki adımları kullanın:
Talep bildirme
Doğrulama kodunu tutmak için kullanılacak bir talep bildirmeniz gerekir.
Talebi bildirmek için dosyasında ContosoCustomPolicy.XML
öğesini bulun ClaimsSchema
ve aşağıdaki kodu kullanarak talebi bildirin verificationCode
:
<!--<ClaimsSchema>-->
...
<ClaimType Id="verificationCode">
<DisplayName>Verification Code</DisplayName>
<DataType>string</DataType>
<UserHelpText>Enter your verification code</UserHelpText>
<UserInputType>TextBox</UserInputType>
</ClaimType>
<!--</ClaimsSchema>-->
Kod gönderme ve doğrulama teknik profilini yapılandırma
Azure AD B2C, e-posta adresini doğrulamak için Microsoft Entra ID SSPR teknik profilini kullanır. Bu teknik profil bir e-posta adresine kod oluşturup gönderebilir veya kodu nasıl yapılandırdığınıza bağlı olarak doğrular.
ContosoCustomPolicy.XML
dosyasında öğesini bulun ClaimsProviders
ve aşağıdaki kodu kullanarak talep sağlayıcısını ekleyin:
<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>
ve şeklinde iki teknik profil AadSspr-SendCode
AadSspr-VerifyCode
yapılandırdık. AadSspr-SendCode
bölümünde belirtilen InputClaims
e-posta adresine bir kod oluşturur ve gönderirken AadSspr-VerifyCode
kodu doğrular. Gerçekleştirmek istediğiniz eylemi teknik profilin meta verilerinde belirtirsiniz.
Görüntüleme denetimini yapılandırma
Kullanıcıların e-postalarını doğrulayabilmek için bir e-posta doğrulama görüntüleme denetimi yapılandırmanız gerekir. Yapılandırdığınız e-posta doğrulama görüntüleme denetimi, kullanıcıdan e-posta toplamak için kullandığınız e-posta görüntüleme talebiyle değiştirilir.
Bir görüntüleme denetimini yapılandırmak için aşağıdaki adımları kullanın:
ContosoCustomPolicy.XML
dosyasında bölümünü bulunBuildingBlocks
ve aşağıdaki kodu kullanarak bir görüntüleme denetimini alt öğe olarak ekleyin:<!--<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>-->
Bir görüntü denetimi bildirdik.
emailVerificationControl
Aşağıdaki önemli bölümleri not alın:DisplayClaims - Kendi kendine onaylanan bir teknik profilde olduğu gibi, bu bölüm de görüntü denetimindeki kullanıcıdan toplanacak talep koleksiyonunu belirtir.
Eylemler - Görüntüleme denetimi tarafından gerçekleştirilecek eylemlerin sırasını belirtir. Her eylem, eylemleri gerçekleştirmek için sorumlu olan bir teknik profile başvurur. Örneğin, SendCode teknik profile başvurur
AadSspr-SendCode
ve bir e-posta adresine kod oluşturur ve gönderir.
ContosoCustomPolicy.XML
Dosyasında, kendi kendine onaylanan teknik profili bulunUserInformationCollector
ve denetimi görüntülemek için e-posta görüntüleme iddiasınıemailVerificationControl
değiştirin:Gönderen:
<DisplayClaim ClaimTypeReferenceId="email" Required="true"/>
Hedef:
<DisplayClaim DisplayControlReferenceId="emailVerificationControl" />
İlke dosyanızı karşıya yüklemek ve test etmek için 6. ve 7. adımdaki yordamı kullanın. Bu kez, bir kullanıcı hesabı oluşturulmadan önce e-posta adresinizi doğrulamanız gerekir.
Microsoft Entra Id teknik profilini kullanarak kullanıcı hesabını güncelleştirme
Microsoft Entra Id teknik profilini, yeni bir hesap oluşturmaya çalışmak yerine bir kullanıcı hesabını güncelleştirmek üzere yapılandırabilirsiniz. Bunu yapmak için, aşağıdaki kodu kullanarak belirtilen kullanıcı hesabı koleksiyonda Metadata
zaten yoksa Microsoft Entra Id teknik profilini hata oluşturacak şekilde ayarlayın. İşlemin Yazma olarak ayarlanması gerekir:
<Item Key="Operation">Write</Item>
<Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
Özel öznitelikler kullanma
Bu makalede, yerleşik kullanıcı profili özniteliklerini kullanarak kullanıcı ayrıntılarını depolamayı öğrendiniz. Ancak, belirli senaryonuzu yönetmek için genellikle kendi özel özniteliklerinizi oluşturmanız gerekir. Bunu yapmak için Azure Active Directory B2C'de özel öznitelikleri tanımlama makalesindeki yönergeleri izleyin.
Sonraki adımlar
Azure Active Directory B2C özel ilkesini kullanarak yerel bir hesap için kaydolma ve oturum açma akışı ayarlamayı öğrenin.
Özel ilkenizde özel öznitelikleri tanımlamayı öğrenin.
Microsoft Entra Id teknik profili hakkında daha fazla bilgi edinin.