Azure Active Directory B2C özel ilkesinde OAuth2 teknik profili tanımlama
Not
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), OAuth2 protokolü kimlik sağlayıcısı için destek sağlar. OAuth2, yetkilendirme ve temsilci kimlik doğrulaması için birincil protokoldür. Daha fazla bilgi için bkz. RFC 6749 OAuth 2.0 Yetkilendirme Çerçevesi. OAuth2 teknik profiliyle, Facebook gibi OAuth2 tabanlı bir kimlik sağlayıcısıyla federasyon oluşturabilirsiniz. Kimlik sağlayıcısıyla federasyon, kullanıcıların mevcut sosyal veya kurumsal kimlikleriyle oturum açmasına olanak tanır.
Protokol
Protocol öğesinin Name özniteliğinin olarak OAuth2
ayarlanması gerekir. Örneğin, Facebook-OAUTH teknik profilinin protokolü şu şekildedir OAuth2
:
<TechnicalProfile Id="Facebook-OAUTH">
<DisplayName>Facebook</DisplayName>
<Protocol Name="OAuth2" />
...
Giriş talepleri
InputClaims ve InputClaimsTransformations öğeleri gerekli değildir. Ancak kimlik sağlayıcınıza daha fazla parametre göndermek isteyebilirsiniz. Aşağıdaki örnek , yetkilendirme isteğine değeriyle contoso.com
domain_hint sorgu dizesi parametresini ekler.
<InputClaims>
<InputClaim ClaimTypeReferenceId="domain_hint" DefaultValue="contoso.com" />
</InputClaims>
Çıkış talepleri
OutputClaims öğesi, OAuth2 kimlik sağlayıcısı tarafından döndürülen taleplerin listesini içerir. İlkenizde tanımlanan talebin adını kimlik sağlayıcısında tanımlanan adla eşlemeniz gerekebilir. Özniteliğini ayarladığınız DefaultValue
sürece kimlik sağlayıcısı tarafından döndürülmeyecek talepleri de ekleyebilirsiniz.
OutputClaimsTransformations öğesi, çıkış taleplerini değiştirmek veya yenilerini oluşturmak için kullanılan OutputClaimsTransformation öğelerinin bir koleksiyonunu içerebilir.
Aşağıdaki örnekte Facebook kimlik sağlayıcısı tarafından döndürülen talepler gösterilmektedir:
- first_name talebi givenName talebiyle eşlenir.
- last_name talebi soyad talebiyle eşlenir.
- ad eşlemesi olmadan displayName talebi.
- Ad eşlemesi olmadan e-posta talebi.
Teknik profil, kimlik sağlayıcısı tarafından döndürülmeyecek talepleri de döndürür:
- Kimlik sağlayıcısının adını içeren identityProvider talebi.
- socialIdpAuthentication varsayılan değerine sahip authenticationSource talebi.
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="id" />
<OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="first_name" />
<OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="last_name" />
<OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
<OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" />
<OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="facebook.com" />
<OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" />
</OutputClaims>
Yetkilendirme uç noktası meta verileri
Yetkilendirme akışı, Azure AD B2C kullanıcıyı OAuth2 kimlik sağlayıcıları /authorize
uç noktasına yönlendirdiğinde başlar. Yetkilendirme uç noktasına yapılan çağrı, kullanıcının işlem yaptığı akışın etkileşimli bölümüdür. Bu noktada, kullanıcıdan OAuth2 kimlik sağlayıcısında oturum açma işlemini tamamlaması istenir. Örneğin, kullanıcı adını ve parolasını girerek.
Azure AD B2C, kimlik sağlayıcısından erişim belirteci almak için ihtiyaç duyduğu istemci kimliğini, kapsamları, yeniden yönlendirme URI'sini ve diğer parametreleri sağlayarak bir yetkilendirme isteği oluşturur. Bu bölümde, isteğin kimlik sağlayıcısının uç noktasına yapılandırılmasına /authorize
olanak tanıyan yetkilendirme uç noktası meta verileri açıklanmaktadır.
Yetkilendirme uç noktasına yapılan istek her zaman HTTP GET'dir. Aşağıdaki örnekte yetkilendirme uç noktasına yapılan bir çağrı gösterilmektedir.
GET https://login.contoso.com/oauth/v2/authorization?
client_id=12345
&response_type=code
&response_mode=query
&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob
&scope=profile%20offline_access
&redirect_uri=https%3a%2f%2fabrikam.b2clogin.com%2fabrikam.onmicrosoft.com%2foauth2%2fauthresp
&state=...
Aşağıdaki tabloda yetkilendirme uç noktası meta verileri listelenir.
Öznitelik | Gerekli | Açıklama |
---|---|---|
authorization_endpoint |
Evet | RFC 6749'a göre yetkilendirme uç noktasının URL'si. |
client_id |
Yes | Kimlik sağlayıcısının uygulama tanımlayıcısı. |
AdditionalRequestQueryParameters |
No | Ek istek sorgusu parametreleri. Örneğin, kimlik sağlayıcınıza ek parametreler göndermek isteyebilirsiniz. Virgül sınırlayıcısı kullanarak birden çok parametre ekleyebilirsiniz. |
response_mode |
No | Kimlik sağlayıcısının sonucu Azure AD B2C'ye geri göndermek için kullandığı yöntem. Olası değerler: query , form_post (varsayılan) veya fragment . |
scope |
No | OAuth2 kimlik sağlayıcısı belirtimine göre tanımlanan isteğin kapsamı. , ve email gibiprofile openid . |
UsePolicyInRedirectUri |
No | Yeniden yönlendirme URI'sini oluştururken ilkenin kullanılıp kullanılmayacağını gösterir. Uygulamanızı kimlik sağlayıcısında yapılandırırken yeniden yönlendirme URI'sini belirtmeniz gerekir. Yeniden yönlendirme URI'Azure AD B2C, https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/oauth2/authresp öğesine işaret ediyor. belirtirseniz true , kullandığınız her ilke için bir yeniden yönlendirme URI'sini eklemeniz gerekir. Örneğin: https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/{policy-name}/oauth2/authresp . |
Belirteç uç noktası meta verileri
Kullanıcı kimlik sağlayıcısının yetkilendirme uç noktasında kimlik doğrulamasını tamamladıktan sonra, Azure AD B2C'ye yetkilendirmeyi code
içeren bir yanıt döndürülür. Azure AD B2C, kimlik sağlayıcısının uç noktasına bir POST isteği /token
göndererek erişim belirteci için yetkilendirme kodunu kullanır. Bu bölümde, isteğin /token
kimlik sağlayıcısının uç noktasına yapılandırılmasına olanak tanıyan belirteç uç noktası meta verileri açıklanmaktadır.
Aşağıdaki HTTP isteği, kimlik sağlayıcısının belirteç uç noktasına yapılan Azure AD B2C çağrısını gösterir.
POST https://contoso/oauth2/token
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code&client_id=12345&scope=profile offline_access&code=AwABAAAAvPM1KaPlrEqdFSBzjqfTGBCmLdgfSTLEMPGYuNHSUYBrq...
Aşağıdaki tabloda belirteç uç noktası meta verileri listelenir.
Öznitelik | Gerekli | Açıklama |
---|---|---|
AccessTokenEndpoint |
Evet | Belirteç uç noktasının URL'si. Örneğin, https://www.linkedin.com/oauth/v2/accessToken . |
HttpBinding |
No | Belirteç uç noktasına beklenen HTTP bağlaması. Olası değerler: GET veya POST . |
AccessTokenResponseFormat |
No | Erişim belirteci uç noktası çağrısının biçimi. Örneğin, Facebook bir HTTP GET yöntemi gerektirir, ancak erişim belirteci yanıtı JSON biçimindedir. Olası değerler: Default , Json ve JsonP . |
ExtraParamsInAccessTokenEndpointResponse |
No | Bazı kimlik sağlayıcıları tarafından AccessTokenEndpoint'ten gelen yanıtta döndürülebilecek ek parametreleri içerir. Örneğin, AccessTokenEndpoint'ten gelen yanıt, ClaimsEndpoint istek sorgu dizesindeki access_token yanında zorunlu bir parametre olan gibi openid ek bir parametre içerir. Birden çok parametre adı kaçış ve virgül ',' sınırlayıcı ile ayrılmalıdır. |
token_endpoint_auth_method |
No | Azure AD B2C'nin kimlik doğrulama üst bilgisini belirteç uç noktasına nasıl gönderdiğini belirtir. Olası değerler: client_secret_post (varsayılan) ve client_secret_basic , private_key_jwt . Daha fazla bilgi için bkz. OpenID Connect istemci kimlik doğrulaması bölümü. |
token_signing_algorithm |
No | olarak ayarlandığında kullanılacak token_endpoint_auth_method imzalama algoritmasını private_key_jwt belirtir. Olası değerler: RS256 (varsayılan) veya RS512 . |
HTTP bağlama yöntemini yapılandırma
Varsayılan olarak belirteç uç noktasına yapılan istek HTTP POST kullanır.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="HttpBinding">POST</Item>
Aşağıdaki HTTP çağrısı, HTTP POST isteği kullanılarak belirteç uç noktasına yapılan çağrıyı gösterir:
POST /oauth2/token
client_id=abcd&client_secret=1234&redirect_uri=https%3a%2f%2fcontoso.b2clogin.com%2fcontoso.onmicrosoft.com%2foauth2%2fauthresp&code=12345&grant_type=authorization_code
Uç noktada HTTP GET yönteminin /token
kullanılmasını gerektiren kimlik sağlayıcıları için meta verileri olarak GET
ayarlayınHttpBinding
. Aşağıdaki örnekte, AccessTokenResponseFormat
belirteç uç noktası yanıtı JSON biçiminde döndürdüğünden değerinin olarak ayarlandığını json
unutmayın.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="HttpBinding">GET</Item>
<Item Key="AccessTokenResponseFormat">json</Item>
GET /oauth2/token?client_id=abcd&client_secret=1234&redirect_uri=https%3a%2f%2fcontoso.b2clogin.com%2fcontoso.onmicrosoft.com%2foauth2%2fauthresp&code=12345&grant_type=authorization_code
Erişim belirteci yanıt biçimini yapılandırma
HTTP POST yöntemini destekleyen kimlik sağlayıcıları için, AccessTokenResponseFormat
varsayılan olarak olarak json
ayarlanır. Kimlik sağlayıcısı HTTP GET isteğini destekliyorsa erişim belirteci yanıt biçimini json
açıkça olarak ayarlamanız gerekir.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="HttpBinding">GET</Item>
<Item Key="AccessTokenResponseFormat">json</Item>
Aşağıdaki örnekte JSON biçiminde bir belirteç uç noktası yanıtı gösterilmektedir:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...",
"token_type": "Bearer",
"not_before": 1637924390,
"expires_in": 960000,
}
Kimlik doğrulama yöntemini yapılandırma
Belirteç uç noktasına yapılan istekler her zaman kimlik doğrulaması gerektirir. Varsayılan olarak Azure AD B2C, kimlik sağlayıcısına istemci kimlik bilgilerini sağlar. Varsayılan olarak kimlik doğrulama yöntemi, istek gövdesindeki istemci kimlik bilgileri (client_id
ve client_secret
) dahil olmak üzere şeklindedirclient_secret_post
.
Belirteç uç noktasına yapılan aşağıdaki HTTP isteği POST verilerinde ve client_secret
değerini içerirclient_id
. GET istekleri client_id
için ve client_secret
sorgu dizesi parametrelerine eklenir.
POST /oauth2/token
client_id=abcd&client_secret=1234&redirect_uri=https%3a%2f%2fcontoso.b2clogin.com%2fcontoso.onmicrosoft.com%2foauth2%2fauthresp&code=12345&grant_type=authorization_code
Uç noktalarında HTTP temel kimlik doğrulamasının /token
kullanılmasını gerektiren kimlik sağlayıcıları için meta verileri olarak client_secret_basic
yapılandırıntoken_endpoint_auth_method
. Bu kimlik doğrulama yöntemi türüyle, istemci kimlik bilgileri HTTP Basic kimlik doğrulama şeması kullanılarak kimlik sağlayıcısına geçirilir.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="token_endpoint_auth_method">client_secret_basic</Item>
Aşağıdaki HTTP isteği, HTTP temel kimlik doğrulaması ile belirteç uç noktasına yapılan çağrıyı gösterir. Yetkilendirme üst bilgisi, istemci kimliğini ve istemci gizli anahtarını base64 biçiminde kodlanmış olarak client_ID:client_secret
içerir.
POST /oauth2/token
Authorization: Basic YWJjZDoxMjM0
redirect_uri=https%3a%2f%2fcontoso.b2clogin.com%2fontoso.onmicrosoft.com%2foauth2%2fauthresp&code=12345&grant_type=authorization_code
Özel anahtar JWT kimlik doğrulamasını destekleyen kimlik sağlayıcıları için meta verileri olarak private_key_jwt
yapılandırıntoken_endpoint_auth_method
. Bu kimlik doğrulama yöntemiyle, Azure AD B2C'ye sağlanan sertifika, kimlik sağlayıcısına parametresi aracılığıyla client_assertion
geçirilen imzalı bir onay oluşturmak için kullanılır. client_assertion_type
olarak ayarlanırurn:ietf:params:oauth:client-assertion-type:jwt-bearer
. Meta token_signing_algorithm
veriler, JWT belirtecinin imzalama algoritmasını belirtir.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="token_endpoint_auth_method">private_key_jwt</Item>
<Item Key="token_signing_algorithm">RS256</Item>
Aşağıdaki HTTP isteği, özel anahtar JWT kimlik doğrulaması kullanılarak belirteç uç noktasına yapılan çağrıyı gösterir.
POST /oauth2/token
client_assertion=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImtpZCI6IjJFRFg0dWRYeDIxbXNoaXdJVzczMUY3OUZSbFJiUDZXVXJyZmktR1RFeVkifQ.eyJpc3MiOiJhYmNkIiwiZXhwIjoxNjM3OTI5ODY0LCJuYmYiOjE2Mzc5Mjk1NjQsImF1ZCI6Imh0dHBzOi8vNWRlNC0xMDktNjQtMTI0LTUzLm5ncm9rLmlvL2FjY2Vzc190b2tlbiIsImp0aSI6IjVxQWlGV2lEODNDbU1KWWNrejBRdGc9PSIsInN1YiI6ImFiY2QiLCJpYXQiOjE2Mzc5Mjk1NjR9.C4OtRnrLaQatpT5LP45O5Nb418S4v8yZi_C42ld440w&client_id=abcd&client_assertion_type=urn%3aietf%3aparams%3aoauth%3aclient-assertion-type%3ajwt-bearer&redirect_uri=https%3a%2f%2fcontoso.b2clogin.com%2fcontoso.onmicrosoft.com%2foauth2%2fauthresp&code=12345&grant_type=authorization_code
Kullanıcı bilgileri uç noktası meta verileri
Azure AD B2C, OAuth2 kimlik sağlayıcısından erişim belirtecini aldıktan sonra, kullanıcı bilgileri uç noktasına bir çağrı yapar. Talep uç noktası olarak da bilinen kullanıcı bilgileri uç noktası, kimliği doğrulanmış kullanıcı hakkındaki talepleri alacak şekilde tasarlanmıştır. Azure AD B2C, kimlik sağlayıcıları kullanıcı bilgileri uç noktasında kimlik doğrulaması yapmak için taşıyıcı belirteç kimlik doğrulamasını kullanır. Taşıyıcı belirteci, Azure AD B2C'nin kimlik sağlayıcıları /token
uç noktasından aldığı erişim belirtecidir.
Kullanıcı bilgileri uç noktasına gönderilen istek her zaman HTTP GET'dir. Erişim belirteci adlı access_token
bir sorgu dizesi parametresinde gönderilir. Aşağıdaki HTTP isteği, sorgu dizesi parametresinde erişim belirteci ile kullanıcı bilgileri uç noktasına yapılan çağrıyı gösterir.
GET /oauth2/claims?access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
Aşağıdaki tabloda kullanıcı bilgileri uç noktası meta verileri listeledik.
Öznitelik | Gerekli | Açıklama |
---|---|---|
ClaimsEndpoint |
Evet | Kullanıcı bilgileri uç noktasının URL'si. Örneğin, https://api.linkedin.com/v2/me . |
ClaimsEndpointAccessTokenName |
No | Erişim belirteci sorgu dizesi parametresinin adı. Varsayılan değer: access_token . |
ClaimsEndpointFormatName |
No | Format sorgu dizesi parametresinin adı. Örneğin, adı bu LinkedIn talep uç noktasında https://api.linkedin.com/v1/people/~?format=json olduğu gibi format ayarlayabilirsiniz. |
ClaimsEndpointFormat |
No | Format sorgu dizesi parametresinin değeri. Örneğin, değeri bu LinkedIn talep uç noktasında https://api.linkedin.com/v1/people/~?format=json olduğu gibi json ayarlayabilirsiniz. |
BearerTokenTransmissionMethod |
No | Belirtecin nasıl gönderileceğini belirtir. Varsayılan yöntem bir sorgu dizesidir. Belirteci istek üst bilgisi olarak göndermek için olarak AuthorizationHeader ayarlayın. |
ExtraParamsInClaimsEndpointRequest |
No | Bazı kimlik sağlayıcıları tarafından ClaimsEndpoint isteğinde döndürülebilecek ek parametreleri içerir. Birden çok parametre adı kaçış ve virgül ',' sınırlayıcı ile ayrılmalıdır. |
Erişim belirteci sorgu dizesi parametresini yapılandırma
Kullanıcı bilgileri uç noktası, erişim belirtecinin belirli bir sorgu dizesi parametresinde gönderilmesini gerektirebilir. Erişim belirtecini içeren sorgu dizesi parametresinin adını değiştirmek için meta verileri kullanın ClaimsEndpointAccessTokenName
. Aşağıdaki örnekte erişim belirteci sorgu dizesi parametresi olarak token
ayarlanmıştır.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="ClaimsEndpointAccessTokenName">token</Item>
Aşağıdaki HTTP çağrısı, olarak ayarlanmış kullanıcı bilgileri uç noktasına ClaimsEndpointAccessTokenName
yapılan çağrıyı token
gösterir:
GET /oauth2/claims?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
Talep biçimini yapılandırma
ClaimsEndpointFormatName
veClaimsEndpointFormat
, kullanıcı bilgileri uç noktasına bir anahtar-değer çifti sorgu dizesi parametresi göndermenize olanak tanır. Aşağıdaki örnek, adlı format
bir sorgu dizesi parametresini değeriyle yapılandırıyor json
.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="ClaimsEndpointFormatName">format</Item>
<Item Key="ClaimsEndpointFormat">json</Item>
Aşağıdaki HTTP isteği, ile ve ClaimsEndpointFormat
yapılandırılmış kullanıcı bilgileri uç noktasına ClaimsEndpointFormatName
yapılan çağrıyı gösterir.
GET /oauth2/claims?format=json&access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
Taşıyıcı belirteci iletim yöntemini yapılandırma
Varsayılan olarak, erişim belirteci bir sorgu dizesi parametresi aracılığıyla kimlik sağlayıcıları kullanıcı bilgileri uç noktasına gönderilir. Belirteci HTTP Authorization
üst bilgisinde göndermek için meta verileri olarak AuthorizationHeader
ayarlayınBearerTokenTransmissionMethod
.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="BearerTokenTransmissionMethod">AuthorizationHeader</Item>
Aşağıdaki HTTP isteği, olarak ayarlandığında AuthorizationHeader
erişim belirtecinin nasıl geçirildiğini BearerTokenTransmissionMethod
gösterir.
GET /oauth2/claims
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
Belirteç uç noktası tarafından döndürülen parametreleri geçirme
Bazı kimlik sağlayıcılarının belirteç uç noktasından döndürülen ek parametreleri kullanıcı bilgileri uç noktasına geçirmesi gerekir. Örneğin, belirteç uç noktasından gelen yanıt, kullanıcı bilgisi uç noktasının (erişim belirtecinin yanı sıra) zorunlu bir parametresi olan adlı resource
bir parametre içerir. ExtraParamsInClaimsEndpointRequest
Geçirilmesi gereken ek parametreleri belirtmek için meta verileri kullanın. Birden çok parametre adı kaçış ve virgül ',' sınırlayıcı ile ayrılmalıdır.
Aşağıdaki JSON, adlı resource
parametreye sahip belirteç uç noktası tarafından bir JSON yük dönüşünü gösterir.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...",
"token_type": "Bearer",
"not_before": 1549647431,
"expires_in": 960000,
"resource": "f2a76e08-93f2-4350-833c-965c02483b11"
}
Parametresini resource
kullanıcı bilgileri uç noktasına geçirmek için aşağıdaki meta verileri ekleyin:
<Item Key="ExtraParamsInClaimsEndpointRequest">resource</Item>
Aşağıdaki HTTP isteği, parametrenin resource
kullanıcı bilgileri uç noktasına nasıl geçirildiğini gösterir.
GET /oauth2/claims?resource=f2a76e08-93f2-4350-833c-965c02483b11&access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
Oturum uç noktasını sonlandırma
Kullanıcıyı uygulamadan kapatmak için, kullanıcıyı Azure AD B2C oturum kapatma uç noktasına (OAuth2 ve OpenID Connect için) yeniden yönlendirin veya bir LogoutRequest
(SAML için) gönderin. Azure AD B2C, kullanıcının oturumunu tarayıcıdan temizler. Bir oturum kapatma isteğinde Azure AD B2C, kullanıcının oturum açmış olabileceği federasyon kimlik sağlayıcılarının oturumunu kapatmaya çalışır. OAuth2 kimlik sağlayıcısının oturum kapatma URI'si meta verilerde end_session_endpoint
yapılandırılır. Kullanıcı Azure AD B2C aracılığıyla uygulamanızın oturumunu kapattığında, Azure AD B2C oturumu kapatma sayfasında öğesini end_session_endpoint
çağıran gizli bir iframe oluşturulur.
Aşağıdaki tabloda kullanıcı bilgileri uç noktası meta verileri listeledik.
Öznitelik | Gerekli | Açıklama |
---|---|---|
end_session_endpoint |
Evet | RFC 6749'a göre son oturum uç noktasının URL'si. |
SingleLogoutEnabled |
No | Teknik profilde oturum açma sırasında federasyon kimlik sağlayıcılarının oturumunu kapatmayı deneyip denemediğini gösterir. Daha fazla bilgi için bkz. Azure AD B2C oturumu oturumu kapatma. Olası değerler: true (varsayılan) veya false . |
OAuth2 genel meta verileri
Aşağıdaki tabloda OAuth2 kimlik sağlayıcısı genel meta verileri listelenir. Meta veriler, OAuth2 teknik profilinin belirteç doğrulamayı nasıl işlediğini, talepleri nasıl alacağını ve hata iletilerine nasıl tepki gösterlendiğini açıklar.
Öznitelik | Gerekli | Açıklama |
---|---|---|
IdTokenAudience |
Hayır | id_token izleyicileri. Belirtilirse, Azure AD B2C belirtecin kimlik sağlayıcısı tarafından döndürülen bir talepte olup olmadığını ve belirtilene eşit olup olmadığını denetler. |
ProviderName |
No | Kimlik sağlayıcısının adı. |
ResponseErrorCodeParamName |
No | HTTP 200 üzerinden döndürülen hata iletisini içeren parametrenin adı (Tamam). |
IncludeClaimResolvingInClaimsHandling |
No | Giriş ve çıkış talepleri için, talep çözümlemesinin teknik profile dahil edilip edilmeyeceğini belirtir. Olası değerler: true veya false (varsayılan). Teknik profilde bir talep çözümleyicisi kullanmak istiyorsanız, bunu olarak true ayarlayın. |
ResolveJsonPathsInJsonTokens |
No | Teknik profilin JSON yollarını çözümleyip çözümlemediğini gösterir. Olası değerler: true veya false (varsayılan). İç içe JSON öğesinden verileri okumak için bu meta verileri kullanın. OutputClaim içinde, çıkışını PartnerClaimType almak istediğiniz JSON yol öğesine ayarlayın. Örneğin: firstName.localized , veya data[0].to[0].email . |
Şifreleme anahtarları
CryptographicKeys öğesi aşağıdaki özniteliği içerir:
Öznitelik | Gerekli | Açıklama |
---|---|---|
client_secret |
Evet | Kimlik sağlayıcısı uygulamasının istemci gizli dizisi. Şifreleme anahtarı yalnızca response_types meta verileri olarak code ayarlandığında gereklidir. Bu durumda, Azure AD B2C, yetkilendirme kodunu bir erişim belirteci ile değiştirmek için başka bir çağrı yapar. Meta veriler olarak id_token ayarlanırsa, şifreleme anahtarını atlayabilirsiniz. |
assertion_signing_key |
No | token_endpoint_auth_method Meta veriler olarak private_key_jwt ayarlandığında, JWT anahtarını imzalamak için kullanılacak bir X509 sertifikası sağlayın. Bu anahtar size OAuth2 kimlik sağlayıcısı tarafından sağlanmalıdır. |
Yeniden Yönlendirme URI'si
Kimlik sağlayıcınızın yeniden yönlendirme URI'sini yapılandırdığınızda girin https://{tenant-name}.b2clogin.com/{tenant-name}.onmicrosoft.com/oauth2/authresp
. değerini kiracınızın adıyla (örneğin, contosob2c) değiştirdiğinden {tenant-name}
emin olun. Yeniden yönlendirme URI'sinin küçük harfle yazılması gerekir.