중요합니다
2025년 5월 1일부터 새 고객을 위해 Azure AD B2C를 더 이상 구매할 수 없습니다. FAQ에서 자세히 알아보세요.
비고
Azure Active Directory B2C에서 사용자 지정 정책은 주로 복잡한 시나리오를 해결하기 위해 설계되었습니다. 대부분의 시나리오에서 기본 제공 사용자 흐름을 사용하는 것이 좋습니다. 아직 수행하지 않았다면 Active Directory B2C에서 사용자 지정 정책 시작하기에서 사용자 지정 정책 스타터 팩에 대해 알아봅니다.
Azure AD B2C(Azure Active Directory B2C)는 OAuth2 프로토콜 ID 공급자를 지원합니다. OAuth2는 권한 부여 및 위임된 인증을 위한 기본 프로토콜입니다. 자세한 내용은 RFC 6749 OAuth 2.0 권한 부여 프레임워크를 참조하세요. OAuth2 기술 프로필을 사용하면 Facebook과 같은 OAuth2 기반 ID 공급자와 페더레이션할 수 있습니다. ID 공급자와 페더레이션하면 사용자가 기존 소셜 또는 엔터프라이즈 ID로 로그인할 수 있습니다.
프로토콜
Protocol 요소의 Name 특성을 .로 설정OAuth2
해야 합니다. 예를 들어 Facebook-OAUTH 기술 프로필에 대한 프로토콜은 다음과 같습니다 OAuth2
.
<TechnicalProfile Id="Facebook-OAUTH">
<DisplayName>Facebook</DisplayName>
<Protocol Name="OAuth2" />
...
입력 클레임
InputClaims 및 InputClaimsTransformations 요소는 필요하지 않습니다. 그러나 ID 공급자에게 더 많은 매개 변수를 보낼 수 있습니다. 다음 예제에서는 권한 부여 요청에 값 contoso.com
이 있는 domain_hint 쿼리 문자열 매개 변수를 추가합니다.
<InputClaims>
<InputClaim ClaimTypeReferenceId="domain_hint" DefaultValue="contoso.com" />
</InputClaims>
출력 클레임
OutputClaims 요소에는 OAuth2 ID 공급자가 반환한 클레임 목록이 포함되어 있습니다. 정책에 정의된 클레임의 이름을 ID 공급자에 정의된 이름에 매핑해야 할 수 있습니다. 특성을 설정하는 DefaultValue
한 ID 공급자가 반환하지 않는 클레임을 포함할 수도 있습니다.
OutputClaimsTransformations 요소에는 출력 클레임을 수정하거나 새 클레임을 생성하는 데 사용되는 OutputClaimsTransformation 요소의 컬렉션이 포함될 수 있습니다.
다음 예제에서는 Facebook ID 공급자가 반환한 클레임을 보여줍니다.
- first_name 클레임은 givenName 클레임에 매핑됩니다.
- last_name 클레임은 성 클레임에 매핑됩니다.
- 이름 매핑이 없는 displayName 클레임입니다.
- 이름 매핑이 없는 전자 메일 클레임입니다.
또한 기술 프로필은 ID 공급자가 반환하지 않는 클레임을 반환합니다.
- ID 공급자의 이름을 포함하는 identityProvider 클레임입니다.
- 기본값이 socialIdpAuthentication인 authenticationSource 클레임입니다.
<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>
권한 부여 엔드포인트 메타데이터
권한 부여 흐름은 Azure AD B2C가 사용자를 OAuth2 ID 공급자 엔드포인트로 보낼 때 시작됩니다 /authorize
. 권한 부여 엔드포인트에 대한 호출은 사용자가 작업을 수행하는 흐름의 대화형 부분입니다. 이 시점에서 사용자에게 OAuth2 ID 공급자에서 로그인을 완료하라는 메시지가 표시됩니다. 예를 들어 사용자 이름 및 암호를 입력합니다.
Azure AD B2C는 ID 공급자로부터 액세스 토큰을 획득하는 데 필요한 클라이언트 ID, 범위, 리디렉션 URI 및 기타 매개 변수를 제공하여 권한 부여 요청을 만듭니다. 이 섹션에서는 ID 공급자의 엔드포인트에 대한 요청을 /authorize
구성할 수 있는 권한 부여 엔드포인트 메타데이터에 대해 설명합니다.
권한 부여 엔드포인트에 대한 요청은 항상 HTTP GET입니다. 다음 샘플에서는 권한 부여 엔드포인트에 대한 호출을 보여 줍니다.
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=...
다음 표에서는 권한 부여 엔드포인트 메타데이터를 나열합니다.
특성 | 필수 | 설명 |
---|---|---|
authorization_endpoint |
예 | RFC 6749에 따른 권한 부여 엔드포인트의 URL입니다. |
client_id |
예 | ID 공급자의 애플리케이션 식별자입니다. |
AdditionalRequestQueryParameters |
아니오 | 추가 요청 쿼리 매개 변수입니다. 예를 들어 ID 공급자에게 추가 매개 변수를 보낼 수 있습니다. 쉼표 구분 기호를 사용하여 여러 매개 변수를 포함할 수 있습니다. |
response_mode |
아니오 | ID 공급자가 결과를 Azure AD B2C로 다시 보내는 데 사용하는 메서드입니다. 가능한 값: query , form_post (기본값) 또는 fragment . |
scope |
아니오 | OAuth2 ID 공급자 사양에 따라 정의된 요청의 범위입니다. 예: openid , profile 및 email . |
UsePolicyInRedirectUri |
아니오 | 리디렉션 URI를 생성할 때 정책을 사용할지 여부를 나타냅니다. ID 공급자에서 애플리케이션을 구성할 때 리디렉션 URI를 지정해야 합니다. 리디렉션 URI는 Azure AD B2C를 https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/oauth2/authresp 가리킵니다. 지정 true 하는 경우 사용하는 각 정책에 대한 리디렉션 URI를 추가해야 합니다. 예: https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/{policy-name}/oauth2/authresp . |
토큰 엔드포인트 메타데이터
사용자가 ID 공급자의 권한 부여 엔드포인트에서 인증을 완료하면 권한 부여 code
가 포함된 응답이 Azure AD B2C로 반환됩니다. Azure AD B2C는 ID 공급자의 엔드포인트에 POST 요청을 /token
전송하여 액세스 토큰에 대한 권한 부여 코드를 사용합니다. 이 섹션에서는 ID 공급자의 엔드포인트에 대한 요청을 /token
구성할 수 있는 토큰 엔드포인트 메타데이터에 대해 설명합니다.
다음 HTTP 요청은 ID 공급자의 토큰 엔드포인트에 대한 Azure AD B2C 호출을 보여줍니다.
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...
다음 표에서는 토큰 엔드포인트 메타데이터를 나열합니다.
특성 | 필수 | 설명 |
---|---|---|
AccessTokenEndpoint |
예 | 토큰 엔드포인트의 URL입니다. 예: https://www.linkedin.com/oauth/v2/accessToken . |
HttpBinding |
아니오 | 토큰 엔드포인트에 대한 예상 HTTP 바인딩입니다. 가능한 값은 GET 또는 POST 입니다. |
AccessTokenResponseFormat |
아니오 | 액세스 토큰 엔드포인트 호출의 형식입니다. 예를 들어 Facebook에는 HTTP GET 메서드가 필요하지만 액세스 토큰 응답은 JSON 형식입니다. 가능한 값: Default , Json 및 JsonP . |
ExtraParamsInAccessTokenEndpointResponse |
아니오 | 일부 ID 공급자가 AccessTokenEndpoint 의 응답에서 반환할 수 있는 추가 매개 변수를 포함합니다. 예를 들어 AccessTokenEndpoint의 응답에는 openid 요청 쿼리 문자열의 access_token 외에 필수 매개 변수인 등의 추가 매개 변수가 포함됩니다. 여러 매개 변수 이름을 이스케이프하고 쉼표 ',' 구분 기호로 구분해야 합니다. |
token_endpoint_auth_method |
아니오 | Azure AD B2C가 인증 헤더를 토큰 엔드포인트로 보내는 방법을 지정합니다. 가능한 값: client_secret_post (기본값) 및 client_secret_basic . private_key_jwt 자세한 내용은 OpenID Connect 클라이언트 인증 섹션을 참조하세요. |
token_signing_algorithm |
아니오 | 로 설정된 경우 token_endpoint_auth_method 사용할 서명 알고리즘을 지정합니다 private_key_jwt . 가능한 값은 RS256 (기본값) 또는 RS512 입니다. |
HTTP 바인딩 메서드 구성
기본적으로 토큰 엔드포인트에 대한 요청은 HTTP POST를 사용합니다.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="HttpBinding">POST</Item>
다음 HTTP 호출은 HTTP POST 요청을 사용하여 토큰 엔드포인트에 대한 호출을 보여 줍니다.
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
엔드포인트에서 /token
HTTP GET 메서드를 사용해야 하는 ID 공급자의 경우 메타데이터HttpBinding
를 GET
.로 설정합니다. 다음 예제에서는 토큰 엔드포인트가 AccessTokenResponseFormat
JSON 형식으로 응답을 반환하므로 json
이 형식으로 설정됩니다.
<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
액세스 토큰 응답 형식 구성
HTTP POST 메서드를 지원하는 ID 공급자의 AccessTokenResponseFormat
경우 기본적으로 .로 json
설정됩니다. ID 공급자가 HTTP GET 요청을 지원하는 경우 액세스 토큰 응답 형식을 명시적으로 설정해야 합니다 json
.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="HttpBinding">GET</Item>
<Item Key="AccessTokenResponseFormat">json</Item>
다음 예제에서는 JSON 형식의 토큰 엔드포인트 응답을 보여 줍니다.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...",
"token_type": "Bearer",
"not_before": 1637924390,
"expires_in": 960000,
}
인증 방법 구성
토큰 엔드포인트에 대한 요청은 항상 인증이 필요합니다. 기본적으로 Azure AD B2C는 ID 공급자에 클라이언트 자격 증명을 제공합니다. 기본적으로 인증 방법은 client_secret_post
요청 본문에 클라이언트 자격 증명(client_id
및 client_secret
)을 포함합니다.
토큰 엔드포인트에 대한 다음 HTTP 요청에는 POST 데이터와 client_id
해당 데이터가 포함됩니다client_secret
. GET 요청의 client_id
client_secret
경우 쿼리 문자열 매개 변수에 포함됩니다.
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
엔드포인트에서 /token
HTTP 기본 인증을 사용해야 하는 ID 공급자의 경우 메타데이터를 token_endpoint_auth_method
구성합니다 client_secret_basic
. 이 유형의 인증 방법을 사용하면 클라이언트 자격 증명이 HTTP 기본 인증 체계를 사용하여 ID 공급자에게 전달됩니다.
<Item Key="AccessTokenEndpoint">https://contoso.com/oauth2/token</Item>
<Item Key="token_endpoint_auth_method">client_secret_basic</Item>
다음 HTTP 요청은 HTTP 기본 인증을 사용하여 토큰 엔드포인트에 대한 호출을 보여 줍니다. 권한 부여 헤더에는 base64로 인코딩된 형식 client_ID:client_secret
의 클라이언트 ID 및 클라이언트 암호가 포함됩니다.
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
프라이빗 키 JWT 인증을 지원하는 ID 공급자의 경우 메타데이터를 token_endpoint_auth_method
구성합니다 private_key_jwt
. 이러한 유형의 인증 방법을 사용하면 Azure AD B2C에 제공된 인증서를 사용하여 매개 변수를 통해 ID 공급자에게 전달되는 서명된 어설션을 client_assertion
생성합니다. 에 대한 집합입니다 client_assertion_type
urn:ietf:params:oauth:client-assertion-type:jwt-bearer
. 메타데이터는 token_signing_algorithm
JWT의 서명 알고리즘을 지정합니다.
<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>
다음 HTTP 요청은 프라이빗 키 JWT 인증을 사용하여 토큰 엔드포인트에 대한 호출을 보여 줍니다.
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
사용자 정보 엔드포인트 메타데이터
Azure AD B2C가 OAuth2 ID 공급자로부터 액세스 토큰을 가져오면 사용자 정보 엔드포인트를 호출합니다. 클레임 엔드포인트라고도 하는 사용자 정보 엔드포인트는 인증된 사용자에 대한 클레임을 검색하도록 설계되었습니다. Azure AD B2C는 전달자 토큰 인증 을 사용하여 ID 공급자 사용자 정보 엔드포인트에 인증합니다. 전달자 토큰은 Azure AD B2C가 ID 공급자 엔드포인트에서 가져오는 액세스 토큰입니다 /token
.
사용자 정보 엔드포인트에 대한 요청은 항상 HTTP GET입니다. 액세스 토큰은 라는 access_token
쿼리 문자열 매개 변수로 전송됩니다. 다음 HTTP 요청은 쿼리 문자열 매개 변수의 액세스 토큰을 사용하여 사용자 정보 엔드포인트에 대한 호출을 보여 줍니다.
GET /oauth2/claims?access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
다음 표에서는 사용자 정보 엔드포인트 메타데이터를 나열합니다.
특성 | 필수 | 설명 |
---|---|---|
ClaimsEndpoint |
예 | 사용자 정보 엔드포인트의 URL입니다. 예: https://api.linkedin.com/v2/me . |
ClaimsEndpointAccessTokenName |
아니오 | 액세스 토큰 쿼리 문자열 매개 변수의 이름입니다. 기본값은 access_token 입니다. |
ClaimsEndpointFormatName |
아니오 | 형식 쿼리 문자열 매개 변수의 이름입니다. 예를 들어 이 LinkedIn 클레임 엔드포인트format 에서와 같이 https://api.linkedin.com/v1/people/~?format=json 이름을 설정할 수 있습니다. |
ClaimsEndpointFormat |
아니오 | 형식 쿼리 문자열 매개 변수의 값입니다. 예를 들어 이 LinkedIn 클레임 엔드포인트json 에서와 같이 https://api.linkedin.com/v1/people/~?format=json 값을 설정할 수 있습니다. |
BearerTokenTransmissionMethod |
아니오 | 토큰을 보내는 방법을 지정합니다. 기본 메서드는 쿼리 문자열입니다. 토큰을 요청 헤더로 보내려면 .로 설정합니다 AuthorizationHeader . |
ExtraParamsInClaimsEndpointRequest |
아니오 | 일부 ID 공급자가 ClaimsEndpoint 요청에 반환할 수 있는 추가 매개 변수를 포함합니다. 여러 매개 변수 이름을 이스케이프하고 쉼표 ',' 구분 기호로 구분해야 합니다. |
액세스 토큰 쿼리 문자열 매개 변수 구성
사용자 정보 엔드포인트는 특정 쿼리 문자열 매개 변수에서 액세스 토큰을 보내야 할 수 있습니다. 액세스 토큰을 포함하는 쿼리 문자열 매개 변수의 이름을 변경하려면 메타데이터를 ClaimsEndpointAccessTokenName
사용합니다. 다음 예제에서는 액세스 토큰 쿼리 문자열 매개 변수가 .로 token
설정됩니다.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="ClaimsEndpointAccessTokenName">token</Item>
다음 HTTP 호출은 다음으로 설정된 사용자 정보 엔드포인트 ClaimsEndpointAccessTokenName
에 대한 호출을 token
보여 줍니다.
GET /oauth2/claims?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
클레임 형식 구성
ClaimsEndpointFormatName
키ClaimsEndpointFormat
-값 쌍 쿼리 문자열 매개 변수를 사용자 정보 엔드포인트로 보낼 수 있습니다. 다음 예제에서는 값format
이 인 쿼리 json
문자열 매개 변수를 구성합니다.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="ClaimsEndpointFormatName">format</Item>
<Item Key="ClaimsEndpointFormat">json</Item>
다음 HTTP 요청은 구성한 ClaimsEndpointFormatName
사용자 정보 엔드포인트 ClaimsEndpointFormat
에 대한 호출을 보여 줍니다.
GET /oauth2/claims?format=json&access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
전달자 토큰 전송 방법 구성
기본적으로 액세스 토큰은 쿼리 문자열 매개 변수를 통해 ID 공급자 사용자 정보 엔드포인트로 전송됩니다. HTTP Authorization
헤더 내에서 토큰을 보내려면 메타데이터BearerTokenTransmissionMethod
를 .로 설정합니다AuthorizationHeader
.
<Item Key="ClaimsEndpoint">https://contoso.com/oauth2/claims</Item>
<Item Key="BearerTokenTransmissionMethod">AuthorizationHeader</Item>
다음 HTTP 요청은 액세스 토큰이 설정될 때 BearerTokenTransmissionMethod
전달되는 방법을 보여 줍니다 AuthorizationHeader
.
GET /oauth2/claims
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
토큰 엔드포인트에서 반환된 매개 변수 전달
일부 ID 공급자는 토큰 엔드포인트에서 사용자 정보 엔드포인트로 반환되는 추가 매개 변수를 전달해야 합니다. 예를 들어 토큰 엔드포인트의 응답에는 액세스 토큰 외에 사용자 정보 엔드포인트의 필수 매개 변수인 명명 resource
된 매개 변수가 포함됩니다. 메타데이터를 ExtraParamsInClaimsEndpointRequest
사용하여 전달할 추가 매개 변수를 지정합니다. 여러 매개 변수 이름을 이스케이프하고 쉼표 ',' 구분 기호로 구분해야 합니다.
다음 JSON은 이름이 지정된 resource
매개 변수를 사용하여 토큰 엔드포인트가 반환하는 JSON 페이로드를 보여 줍니다.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...",
"token_type": "Bearer",
"not_before": 1549647431,
"expires_in": 960000,
"resource": "f2a76e08-93f2-4350-833c-965c02483b11"
}
매개 변수를 resource
사용자 정보 엔드포인트에 전달하려면 다음 메타데이터를 추가합니다.
<Item Key="ExtraParamsInClaimsEndpointRequest">resource</Item>
다음 HTTP 요청은 매개 변수가 resource
사용자 정보 엔드포인트에 전달되는 방법을 보여 줍니다.
GET /oauth2/claims?resource=f2a76e08-93f2-4350-833c-965c02483b11&access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IlBFcG5...
세션 엔드포인트 종료
애플리케이션에서 사용자를 로그아웃하려면 사용자를 Azure AD B2C 로그아웃 엔드포인트 (OAuth2 및 OpenID Connect 모두)로 리디렉션하거나(SAML용)을 LogoutRequest
보냅니다. Azure AD B2C는 브라우저에서 사용자의 세션을 지웁합니다. 로그아웃 요청 시 Azure AD B2C는 사용자가 로그인했을 수 있는 페더레이션 ID 공급자로부터 로그아웃을 시도합니다. OAuth2 ID 공급자의 로그아웃 URI는 메타데이터에 end_session_endpoint
구성됩니다. 사용자가 Azure AD B2C를 통해 애플리케이션에서 로그아웃하면 Azure AD B2C 로그아웃 페이지에서 호출 end_session_endpoint
할 숨겨진 iframe이 만들어집니다.
다음 표에서는 사용자 정보 엔드포인트 메타데이터를 나열합니다.
특성 | 필수 | 설명 |
---|---|---|
end_session_endpoint |
예 | RFC 6749에 따라 종료 세션 엔드포인트의 URL입니다. |
SingleLogoutEnabled |
아니오 | 로그인하는 동안 기술 프로필이 페더레이션 ID 공급자로부터 로그아웃을 시도하는지 여부를 나타냅니다. 자세한 내용은 Azure AD B2C 세션 로그아웃을 참조하세요. 가능한 값: true (기본값) 또는 false . |
OAuth2 일반 메타데이터
다음 표에서는 OAuth2 ID 공급자 일반 메타데이터를 나열합니다. 메타데이터는 OAuth2 기술 프로필이 토큰 유효성 검사를 처리하고, 클레임을 가져오고, 오류 메시지에 대응하는 방법을 설명합니다.
특성 | 필수 | 설명 |
---|---|---|
IdTokenAudience |
아니오 | id_token 대상 그룹입니다. 지정된 경우 Azure AD B2C는 토큰이 ID 공급자가 반환한 클레임에 있고 지정된 클레임과 같은지 확인합니다. |
ProviderName |
아니오 | ID 공급자의 이름입니다. |
ResponseErrorCodeParamName |
아니오 | HTTP 200(확인)을 통해 반환된 오류 메시지가 포함된 매개 변수의 이름입니다. |
IncludeClaimResolvingInClaimsHandling |
아니오 | 입력 및 출력 클레임의 경우 클레임 확인 이 기술 프로필에 포함되는지 여부를 지정합니다. 가능한 값: true 또는 false (기본값) 기술 프로필에서 클레임 확인자를 사용하려면 이 값을 으로 true 설정합니다. |
ResolveJsonPathsInJsonTokens |
아니오 | 기술 프로필이 JSON 경로를 확인하는지 여부를 나타냅니다. 가능한 값: true 또는 false (기본값) 이 메타데이터를 사용하여 중첩된 JSON 요소에서 데이터를 읽습니다.
OutputClaim에서 출력하려는 JSON 경로 요소로 설정합니다PartnerClaimType . 예를 들면 firstName.localized 또는 data[0].to[0].email 입니다. |
암호화 키
CryptographicKeys 요소에는 다음 특성이 포함됩니다.
특성 | 필수 | 설명 |
---|---|---|
client_secret |
예 | ID 공급자 애플리케이션의 클라이언트 암호입니다. 암호화 키는 response_types 메타데이터가 로 설정된 code 경우에만 필요합니다. 이 경우 Azure AD B2C는 액세스 토큰에 대한 권한 부여 코드를 교환하기 위해 다른 호출을 수행합니다. 메타데이터가 설정된 id_token 경우 암호화 키를 생략할 수 있습니다. |
assertion_signing_key |
아니오 | 메타데이터가 token_endpoint_auth_method 설정 private_key_jwt 되면 JWT 키에 서명하는 데 사용할 X509 인증서를 제공합니다. 이 키는 OAuth2 ID 공급자가 제공해야 합니다. |
리디렉션 URI
ID 공급자의 리디렉션 URI를 구성할 때 https://{tenant-name}.b2clogin.com/{tenant-name}.onmicrosoft.com/oauth2/authresp
를 입력합니다. 테넌트의 이름(예: contosob2c)으로 바꾸어 {tenant-name}
야 합니다. 리디렉션 URI는 모두 소문자여야 합니다.