Azure Active Directory B2C özel ilkesinde JWT belirteci veren için teknik profil tanımlama

Dekont

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.

Azure Active Directory B2C (Azure AD B2C), her kimlik doğrulama akışını işlerken birkaç tür güvenlik belirteci yayar. Bir JWT belirteci veren için teknik profil, bağlı olan taraf uygulamasına geri döndürülen bir JWT belirteci yayar. Bu teknik profil genellikle kullanıcı yolculuğundaki son düzenleme adımıdır.

Protokol

Protocol öğesinin Name özniteliği olarak ayarlanmalıdırOpenIdConnect. OutputTokenFormat öğesini olarak JWTayarlayın.

Aşağıdaki örnekte için JwtIssuerbir teknik profil gösterilmektedir:

<TechnicalProfile Id="JwtIssuer">
  <DisplayName>JWT Issuer</DisplayName>
  <Protocol Name="OpenIdConnect" />
  <OutputTokenFormat>JWT</OutputTokenFormat>
  <Metadata>
    <Item Key="client_id">{service:te}</Item>
    <Item Key="issuer_refresh_token_user_identity_claim_type">objectId</Item>
    <Item Key="SendTokenResponseBodyWithJsonNumbers">true</Item>
  </Metadata>
  <CryptographicKeys>
    <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
    <Key Id="issuer_refresh_token_key" StorageReferenceId="B2C_1A_TokenEncryptionKeyContainer" />
  </CryptographicKeys>
  <UseTechnicalProfileForSessionManagement ReferenceId="SM-jwt-issuer" />
</TechnicalProfile>

Giriş, çıkış ve kalıcı talepler

InputClaims, OutputClaims ve PersistClaims öğeleri boş veya yok. InutputClaimsTransformations ve OutputClaimsTransformations öğeleri de yoktur.

Meta veri

Öznitelik Zorunlu Tanım
issuer_refresh_token_user_identity_claim_type Evet OAuth2 yetkilendirme kodları ve yenileme belirteçleri içinde kullanıcı kimliği talebi olarak kullanılması gereken talep. Varsayılan olarak, farklı bir SubjectNamingInfo talep türü belirtmediğiniz sürece bunu olarak ayarlamanız objectIdgerekir.
SendTokenResponseBodyWithJsonNumbers Hayır Her zaman olarak trueayarlayın. Sayısal değerlerin JSON numaraları yerine dize olarak verildiği eski biçim için olarak ayarlayın false. Bu öznitelik, dize gibi özellikler döndüren önceki bir uygulamaya bağımlılık almış istemciler için gereklidir.
token_lifetime_secs Hayır Erişim belirteci yaşam süreleri. Korumalı bir kaynağa erişim kazanmak için kullanılan OAuth 2.0 taşıyıcı belirtecinin ömrü. Varsayılan değer 3.600 saniyedir (1 saat). Minimum (dahil) 300 saniyedir (5 dakika). Maksimum (dahil) 86.400 saniyedir (24 saat).
id_token_lifetime_secs Hayır Kimlik belirteci yaşam süreleri. Varsayılan değer 3.600 saniyedir (1 saat). Minimum (dahil) 300 saniyedir (5 dakika). En fazla (dahil) saniye 86.400 (24 saat) olur.
refresh_token_lifetime_secs Hayır Belirteç yaşam süreleri yenilenir. Uygulamanıza offline_access kapsamı verilmişse, yenileme belirtecinin yeni erişim belirteci almak için kullanılabilmesi için en uzun süre. Varsayılan değer 120.9600 saniyedir (14 gün). Minimum (dahil) 86.400 saniyedir (24 saat). Maksimum (dahil) 7.776.000 saniyedir (90 gün).
rolling_refresh_token_lifetime_secs Hayır Belirteç kayan pencere ömrünü yenileyin. Bu süre geçtikten sonra kullanıcı, uygulama tarafından alınan en son yenileme belirtecinin geçerlilik süresinden bağımsız olarak yeniden kimlik doğrulaması yapmaya zorlanır. Kayan pencere ömrünü zorlamak istemiyorsanız, allow_infinite_rolling_refresh_token değerini olarak trueayarlayın. Varsayılan değer 7.776.000 saniyedir (90 gün). Minimum (dahil) 86.400 saniyedir (24 saat). Maksimum (dahil) 31.536.000 saniyedir (365 gün).
allow_infinite_rolling_refresh_token Hayır olarak ayarlanırsa trueyenileme belirteci kayan pencere ömrü hiçbir zaman dolmaz.
IssuanceClaimPattern Hayır Veren (iss) talebi denetler. Değerlerden biri:
  • AuthorityAndTenantGuid - iss talebi, veya tenant-name.b2clogin.comgibi login.microsoftonline etki alanı adınızı ve kiracı tanımlayıcınızı içerirhttps://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0/
  • AuthorityWithTfp - iss talebi, veya tenant-name.b2clogin.comgibi login.microsoftonline etki alanı adınızı, kiracı tanımlayıcınızı ve bağlı olan taraf ilke adınızı içerir. https://login.microsoftonline.com/tfp/00000000-0000-0000-0000-000000000000/b2c_1a_tp_sign-up-or-sign-in/v2.0/
Varsayılan değer: AuthorityAndTenantGuid
AuthenticationContextReferenceClaimPattern Hayır acr Talep değerini denetler.
  • Yok - Azure AD B2C acr talebi vermiyor
  • PolicyId - acr talep ilke adını içerir
Bu değeri ayarlama seçenekleri TFP (güven çerçevesi ilkesi) ve ACR (kimlik doğrulama bağlam başvurusu) seçenekleridir. Bu değeri TFP olarak ayarlamak, değerini ayarlamak için değerinin mevcut olduğundan ve değerinin Key="AuthenticationContextReferenceClaimPattern" olduğundan Noneemin olmak <Item> için önerilir. Bağlı olan taraf ilkenizde öğe ekleyin <OutputClaims> , bu öğeyi <OutputClaim ClaimTypeReferenceId="trustFrameworkPolicy" Required="true" DefaultValue="{policy}" PartnerClaimType="tfp"/>ekleyin. Ayrıca ilkenizin talep türünü içerdiğinden emin olun <ClaimType Id="trustFrameworkPolicy"> <DisplayName>trustFrameworkPolicy</DisplayName> <DataType>string</DataType> </ClaimType>
RefreshTokenUserJourneyId Hayır Uç noktaya yönelik bir erişim belirteci POST isteğini yenileme sırasında yürütülmesi gereken kullanıcı yolculuğunun tanımlayıcısı/token.

Şifreleme anahtarları

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

Öznitelik Zorunlu Tanım
issuer_secret Evet JWT belirtecini imzalamak için kullanılacak X509 sertifikası (RSA anahtar kümesi). Bu, Özel ilkeleri kullanmaya başlama bölümünde yapılandırdığınız anahtardırB2C_1A_TokenSigningKeyContainer.
issuer_refresh_token_key Evet Yenileme belirtecini şifrelemek için kullanılacak X509 sertifikası (RSA anahtar kümesi). Anahtarı Özel ilkelerle çalışmaya başlama bölümünde yapılandırmışsınız B2C_1A_TokenEncryptionKeyContainer

Oturum yönetimi

Azure AD B2C ile bağlı olan bir taraf uygulaması arasında Azure AD B2C oturumlarını yapılandırmak için öğesinin UseTechnicalProfileForSessionManagement özniteliğine OAuthSSOSessionProvider SSO oturumuna bir başvuru ekleyin.