Aracılığıyla paylaş


İçerik Tanımları

Önemli

1 Mayıs 2025 tarihinden itibaren Azure AD B2C artık yeni müşteriler için satın alınamayacak. SSS bölümünden daha fazla bilgi edinebilirsiniz.

Uyarı

Azure Active Directory B2C'de özel ilkeler öncelikli olarak karmaşık senaryoları ele almak için tasarlanmıştır. Çoğu senaryoda, yerleşik kullanıcı akışlarını kullanmanızı öneririz. Bunu yapmadıysanız, Active Directory B2C'de özel ilkeleri kullanmaya başlama bölümünde özel ilke başlangıç paketi hakkında bilgi edinin.

Kendi kendine onaylanan herhangi bir teknik profilin genel görünümünü özelleştirebilirsiniz. Azure Active Directory B2C (Azure AD B2C), müşterinizin tarayıcısında kod çalıştırır ve Çıkış Noktaları Arası Kaynak Paylaşımı (CORS) adlı modern bir yaklaşım kullanır.

Kullanıcı arabirimini özelleştirmek için ContentDefinition öğesinde özelleştirilmiş HTML içeriğine sahip bir URL belirtirsiniz. Kendi kendine onaylanan teknik profilde veya OrchestrationStep'te bu içerik tanımı tanımlayıcısına işaret edersiniz. İçerik tanımı, yüklenecek yerelleştirilmiş kaynakların listesini belirten localizedResourcesReferences öğesi içerebilir. Azure AD B2C, kullanıcı arabirimi öğelerini URL'nizden yüklenen HTML içeriğiyle birleştirir ve sayfayı kullanıcıya görüntüler.

ContentDefinitions öğesi, bir kullanıcı yolculuğunda kullanılabilecek HTML5 şablonlarına URL'ler içerir. BELIRTILEN kullanıcı arabirimi adımı için HTML5 sayfa URI'si kullanılır. Örneğin, oturum açma veya kaydolma, parola sıfırlama veya hata sayfaları. HTML5 dosyasının LoadUri'sini geçersiz kılarak görünüm ve hissi değiştirebilirsiniz. gereksinimlerinize göre yeni içerik tanımları oluşturabilirsiniz. Bu öğe, Yerelleştirme öğesinde belirtilen yerelleştirme tanımlayıcısına yerelleştirilmiş kaynaklar başvurusu içerebilir.

Aşağıdaki örnekte içerik tanımı tanımlayıcısı ve yerelleştirilmiş kaynakların tanımı gösterilmektedir:

<ContentDefinition Id="api.localaccountsignup">
  <LoadUri>~/tenant/default/selfAsserted.cshtml</LoadUri>
  <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
  <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0</DataUri>
  <Metadata>
    <Item Key="DisplayName">Local account sign up page</Item>
  </Metadata>
  <LocalizedResourcesReferences MergeBehavior="Prepend">
    <LocalizedResourcesReference Language="en" LocalizedResourcesReferenceId="api.localaccountsignup.en" />
    <LocalizedResourcesReference Language="es" LocalizedResourcesReferenceId="api.localaccountsignup.es" />
    ...

LocalAccountSignUpWithLogonEmail tarafından onaylanan teknik profilin meta verileri ContentDefinitionReferenceId olarak ayarlanmış içerik tanımı tanımlayıcısını içerirapi.localaccountsignup

<TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
  <DisplayName>Email signup</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
  <Metadata>
    <Item Key="ContentDefinitionReferenceId">api.localaccountsignup</Item>
    ...
  </Metadata>
  ...

İçerik Tanımı

ContentDefinition öğesi aşağıdaki özniteliği içerir:

Özellik Gerekli Açıklama
Kimlik Evet İçerik tanımının tanımlayıcısı. Değer, bu sayfanın devamında İçerik tanımı kimlikleri bölümünde belirtilen değerdir.

ContentDefinition öğesi aşağıdaki öğeleri içerir:

Öğe Oluşum Açıklama
Yük Uri'si 1:1 İçerik tanımı için HTML5 sayfasının URL'sini içeren dize.
RecoveryUri 1:1 İçerik tanımıyla ilgili bir hata görüntülemek için HTML sayfasının URL'sini içeren dize. Şu anda kullanılmaz, değeri olmalıdır ~/common/default_page_error.html.
DataUri 1:1 Adım için çağrılacak kullanıcı deneyimini sağlayan bir HTML dosyasının göreli URL'sini içeren dize.
Meta veriler 0:1 İçerik tanımı tarafından kullanılan meta verileri içeren anahtar/değer çiftleri koleksiyonu.
LocalizedResourcesReferences 0:1 Yerelleştirilmiş kaynak başvuruları koleksiyonu. Kullanıcı arabirimi ve talep özniteliğinin yerelleştirilmesini özelleştirmek için bu öğeyi kullanın.

Yük Uri'si

LoadUri öğesi, içerik tanımı için HTML5 sayfasının URL'sini belirtmek için kullanılır. Azure AD B2C özel ilke başlangıç paketleri , Azure AD B2C HTML sayfalarını kullanan içerik tanımlarıyla birlikte gelir. LoadUri, Azure AD B2C kiracınızın göreli yolu olan ile ~başlar.

<ContentDefinition Id="api.signuporsignin">
  <LoadUri>~/tenant/templates/AzureBlue/unified.cshtml</LoadUri>
  ...
</ContentDefinition>

Kullanıcı arabirimini HTML şablonlarıyla özelleştirebilirsiniz. HTML şablonları kullanırken mutlak bir URL sağlayın. Aşağıdaki örnekte HTML şablonu içeren bir içerik tanımı gösterilmektedir:

<ContentDefinition Id="api.signuporsignin">
  <LoadUri>https://your-storage-account.blob.core.windows.net/your-container/customize-ui.html</LoadUri>
  ...
</ContentDefinition>

DataUri

DataUri öğesi, sayfa tanımlayıcısını belirtmek için kullanılır. Azure AD B2C, kullanıcı arabirimi öğelerini ve istemci tarafı JavaScript'i yüklemek ve başlatmak için sayfa tanımlayıcısını kullanır. Değerin biçimi şeklindedir urn:com:microsoft:aad:b2c:elements:page-name:version. Aşağıdaki tabloda, kullanabileceğiniz sayfa tanımlayıcıları listelenir.

Sayfa tanımlayıcısı Açıklama
globalexception Özel durum veya hatayla karşılaşıldığında bir hata sayfası görüntüler.
providerselection, idpselection Kullanıcıların oturum açma sırasında aralarından seçim yapabilecekleri kimlik sağlayıcılarını listeler.
unifiedssp E-posta adresini veya kullanıcı adını temel alan yerel bir hesapla oturum açmak için bir form görüntüler. Bu değer ayrıca "oturumumu açmama izin ver" ve "Parolanızı mı unuttunuz?" bağlantısını sağlar.
unifiedssd E-posta adresini veya kullanıcı adını temel alan yerel bir hesapla oturum açmak için bir form görüntüler. Bu sayfa tanımlayıcısı kullanım dışı bırakıldı. Bunun yerine sayfa tanımlayıcısını unifiedssp kullanın.
multifactor Kaydolma veya oturum açma sırasında metin veya ses kullanarak telefon numaralarını doğrular.
selfasserted Bir kullanıcıdan veri toplamak için bir form görüntüler. Örneğin, kullanıcıların profillerini oluşturmasına veya güncelleştirmesine olanak tanır.

Sayfa düzeni seçme

ve sayfa türü arasına ekleyerek contractelements etkinleştirebilirsiniz. Örneğin, urn:com:microsoft:aad:b2c:elements:contract:page-name:version.

sürümDataUri bölümü, ilkenizdeki kullanıcı arabirimi öğeleri için HTML, CSS ve JavaScript içeren içerik paketini belirtir. JavaScript istemci tarafı kodunu etkinleştirmeyi düşünüyorsanız, JavaScript'inizi temel aldığınız öğelerin değişmez olması gerekir. Sabit değillerse, herhangi bir değişiklik kullanıcı sayfalarınızda beklenmeyen davranışlara neden olabilir. Bu sorunları önlemek için sayfa düzeni kullanımını zorunlu kılın ve sayfa düzeni sürümünü belirtin. Bunun yapılması JavaScript'inizi temel alan tüm içerik tanımlarının sabit olmasını sağlar. JavaScript'i etkinleştirmeyi amaçlamasanız bile, sayfalarınız için sayfa düzeni sürümünü belirtmeniz gerekir.

Aşağıdaki örnek, sürümünün selfasserted1.2.0 gösterir:

<!-- 
<BuildingBlocks> 
  <ContentDefinitions>-->
    <ContentDefinition Id="api.localaccountpasswordreset">
      <LoadUri>~/tenant/templates/AzureBlue/selfAsserted.cshtml</LoadUri>
      <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:1.2.0</DataUri>
      <Metadata>
        <Item Key="DisplayName">Local account change password page</Item>
      </Metadata>
    </ContentDefinition>
  <!-- 
  </ContentDefinitions> 
</BuildingBlocks> -->

Sayfa düzenine geçiş

Eski DataUri değerinden (sayfa sözleşmesi olmadan) sayfa düzeni sürümüne geçiş yapmak için, sayfa sürümüyle takip edilen sözcüğü contract ekleyin. Eski DataUri değerinden sayfa düzeni sürümüne geçmek için aşağıdaki tabloyu kullanın.

Eski DataUri değeri Yeni DataUri değeri
urn:com:microsoft:aad:b2c:elements:globalexception:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:globalexception:1.2.1
urn:com:microsoft:aad:b2c:elements:globalexception:1.1.0 urn:com:microsoft:aad:b2c:elements:contract:globalexception:1.2.1
urn:com:microsoft:aad:b2c:elements:idpselection:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:providerselection:1.2.1
urn:com:microsoft:aad:b2c:elements:selfasserted:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.7
urn:com:microsoft:aad:b2c:elements:selfasserted:1.1.0 urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.7
urn:com:microsoft:aad:b2c:elements:unifiedssd:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:unifiedssd:1.2.1
urn:com:microsoft:aad:b2c:elements:unifiedssp:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:unifiedssp:2.1.5
urn:com:microsoft:aad:b2c:elements:unifiedssp:1.1.0 urn:com:microsoft:aad:b2c:elements:contract:unifiedssp:2.1.5
urn:com:microsoft:aad:b2c:elements:multifactor:1.0.0 urn:com:microsoft:aad:b2c:elements:contract:multifactor:1.2.5
urn:com:microsoft:aad:b2c:elements:multifactor:1.1.0 urn:com:microsoft:aad:b2c:elements:contract:multifactor:1.2.5

Aşağıdaki örnek, içerik tanımı tanımlayıcılarını ve en son sayfa sürümüyle ilgili DataUri'yi gösterir:

<!-- 
<BuildingBlocks> -->
  <ContentDefinitions>
    <ContentDefinition Id="api.error">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:globalexception:1.2.1</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.idpselections">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:providerselection:1.2.1</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.idpselections.signup">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:providerselection:1.2.1</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.signuporsignin">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:unifiedssp:2.1.7</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.selfasserted">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.14</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.selfasserted.profileupdate">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.14</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.localaccountsignup">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.14</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.localaccountpasswordreset">
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:selfasserted:2.1.14</DataUri>
    </ContentDefinition>
    <ContentDefinition Id="api.phonefactor">
      <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
      <DataUri>urn:com:microsoft:aad:b2c:elements:contract:multifactor:1.2.5</DataUri>
    </ContentDefinition>
  </ContentDefinitions>
<!-- 
</BuildingBlocks> -->

Meta veriler

Meta Veri öğesi aşağıdaki öğeleri içerir:

Öğe Oluşum Açıklama
Ürün 0:n İçerik tanımıyla ilişkili meta veriler.

Metadata öğesinin Item öğesi aşağıdaki öznitelikleri içerir:

Özellik Gerekli Açıklama
Anahtar Evet Meta veri anahtarı.

Meta veri anahtarları

İçerik tanımı aşağıdaki meta veri öğelerini destekler:

Anahtar Gerekli Açıklama
Gösterim Adı Hayı İçerik tanımının adını içeren bir dize.

LocalizedResourcesReferences

LocalizedResourcesReferences öğesi aşağıdaki öğeleri içerir:

Öğe Oluşum Açıklama
LocalizedResourcesReference 1:n İçerik tanımı için yerelleştirilmiş kaynak başvurularının listesi.

LocalizedResourcesReference öğesi aşağıdaki öznitelikleri içerir:

Özellik Gerekli Açıklama
Dil Evet RFC 5646 - Dilleri Tanımlama Etiketleri başına ilke için desteklenen bir dil içeren dize.
LocalizedResourcesReferenceId Evet LocalizedResources öğesinin tanımlayıcısı.

Aşağıdaki örnekte, İngilizce, Fransızca ve İspanyolca için yerelleştirmeye başvuru içeren bir kaydolma veya oturum açma içerik tanımı gösterilmektedir:

<ContentDefinition Id="api.signuporsignin">
  <LoadUri>~/tenant/default/unified.cshtml</LoadUri>
  <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
  <DataUri>urn:com:microsoft:aad:b2c:elements:unifiedssp:1.0.0</DataUri>
  <Metadata>
    <Item Key="DisplayName">Signin and Signup</Item>
  </Metadata>
  <LocalizedResourcesReferences MergeBehavior="Prepend">
    <LocalizedResourcesReference Language="en" LocalizedResourcesReferenceId="api.signuporsignin.en" />
    <LocalizedResourcesReference Language="fr" LocalizedResourcesReferenceId="api.signuporsignin.rf" />
    <LocalizedResourcesReference Language="es" LocalizedResourcesReferenceId="api.signuporsignin.es" />
</LocalizedResourcesReferences>
</ContentDefinition>

İçerik tanımlarınıza yerelleştirme desteği eklemeyi öğrenmek için bkz. Yerelleştirme.

İçerik tanımı kimlikleri

ContentDefinition öğesinin ID özniteliği, içerik tanımıyla ilişkili sayfa türünü belirtir. öğesi, özel bir HTML5/CSS şablonunun uygulanacağı bağlamı tanımlar. Aşağıdaki tabloda, Kimlik Deneyimi Çerçevesi tarafından tanınan içerik tanımı kimlikleri kümesi ve bunlarla ilişkili sayfa türleri açıklanmaktadır. Rastgele bir kimlikle kendi içerik tanımlarınızı oluşturabilirsiniz.

Kimlik Varsayılan şablon Açıklama
api.error hatası exception.cshtml Hata sayfası - Özel durum veya hatayla karşılaşıldığında bir hata sayfası görüntüler.
api.idpselections idpSelector.cshtml Kimlik sağlayıcısı seçim sayfası - Kullanıcıların oturum açma sırasında aralarından seçim yapabilecekleri kimlik sağlayıcılarını listeler. Seçenekler genellikle kurumsal kimlik sağlayıcıları, Facebook ve Google+ gibi sosyal kimlik sağlayıcıları veya yerel hesaplardır.
api.idpselections.signup idpSelector.cshtml Kaydolma için kimlik sağlayıcısı seçimi - Kullanıcıların kaydolma sırasında aralarından seçim yapabilecekleri kimlik sağlayıcılarını listeler. Seçenekler genellikle kurumsal kimlik sağlayıcıları, Facebook ve Google+ gibi sosyal kimlik sağlayıcıları veya yerel hesaplardır.
api.localaccountpasswordreset selfasserted.cshtml Parolayı unuttum sayfası - Kullanıcıların parola sıfırlamayı başlatmak için tamamlaması gereken bir form görüntüler.
api.localaccountoturum açma selfasserted.cshtml Yerel hesap oturum açma sayfası - E-posta adresini veya kullanıcı adını temel alan yerel bir hesapla oturum açmak için bir form görüntüler. Form bir metin giriş kutusu ve parola giriş kutusu içerebilir.
api.localaccountkayıt ol selfasserted.cshtml Yerel hesap kaydolma sayfası - E-posta adresini veya kullanıcı adını temel alan yerel bir hesaba kaydolmak için bir form görüntüler. Form, metin giriş kutusu, parola giriş kutusu, radyo düğmesi, tek seçimli açılan kutular ve çoklu seçim onay kutuları gibi çeşitli giriş denetimleri içerebilir.
api.phonefactor multifactor-1.0.0.cshtml Çok faktörlü kimlik doğrulama sayfası - Kaydolma veya oturum açma sırasında metin veya ses kullanarak telefon numaralarını doğrular.
api.selfasserted selfasserted.cshtml Sosyal hesap kaydolma sayfası - Kullanıcıların bir sosyal kimlik sağlayıcısından var olan bir hesabı kullanarak kaydolduğunda tamamlamaları gereken bir form görüntüler. Bu sayfa, parola giriş alanları dışında önceki sosyal hesap kaydolma sayfasına benzer.
api.selfasserted.profileupdate updateprofile.cshtml Profil güncelleştirme sayfası - Kullanıcıların profillerini güncelleştirmek için erişebileceği bir form görüntüler. Bu sayfa, parola giriş alanları dışında sosyal hesap kaydolma sayfasına benzer.
api.signupveyaoturum açma birleşik.cshtml Birleşik kaydolma veya oturum açma sayfası - Kullanıcı kaydolma ve oturum açma işlemini işler. Kullanıcılar kurumsal kimlik sağlayıcılarını, Facebook veya Google+ gibi sosyal kimlik sağlayıcılarını veya yerel hesapları kullanabilir.

Sonraki Adımlar

İçerik tanımlarını kullanarak kullanıcı arabirimini özelleştirme örneği için bkz:

Özel ilke kullanarak uygulamanızın kullanıcı arabirimini özelleştirme