다음을 통해 공유


부울 클레임 변환

중요합니다

2025년 5월 1일부터 새 고객을 위해 Azure AD B2C를 더 이상 구매할 수 없습니다. FAQ에서 자세히 알아보세요.

이 문서에서는 Azure AD B2C(Azure Active Directory B2C)에서 ID 경험 프레임워크 스키마의 부울 클레임 변환을 사용하는 예제를 제공합니다. 자세한 내용은 클레임 변환을 참조하세요.

및클레임

And 두 부울 입력 클레임의 작업을 계산하고 작업의 결과로 출력 클레임을 설정합니다. 이 클레임 변환의 라이브 데모를 확인하세요.

요소 TransformationClaimType 데이터 형식 비고
입력클레임 입력클레임1 불리언 평가할 첫 번째 클레임입니다.
입력클레임 입력클레임2 불리언 평가할 두 번째 클레임입니다.
출력클레임 출력클레임 불리언 이 클레임 변환이 호출된 후 생성될 클레임(true 또는 false)입니다.

AndClaims의 예

다음 클레임 변환은 두 개의 부울 클레임을 사용하는 And 방법을 보여 줍니다isEmailNotExist. isSocialAccount 출력 클레임은 두 입력 클레임 presentEmailSelfAsserted 의 값이 모두인 경우로 설정 true 됩니다 true.

<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="AndClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="isEmailNotExist" TransformationClaimType="inputClaim1" />
    <InputClaim ClaimTypeReferenceId="isSocialAccount" TransformationClaimType="inputClaim2" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="presentEmailSelfAsserted" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • 입력 클레임:
    • inputClaim1: 참
    • inputClaim2: 거짓
  • 출력 클레임:
    • outputClaim: 거짓

AssertBooleanClaimIsEqualToValue

두 클레임의 부울 값이 같은지 확인하고 그렇지 않은 경우 예외를 throw합니다. 이 클레임 변환의 라이브 데모를 확인하세요.

요소 TransformationClaimType 데이터 형식 비고
입력클레임 입력클레임 불리언 확인할 클레임입니다.
입력 매개 변수 valueToCompareTo 불리언 비교할 값(true 또는 false)입니다.

AssertBooleanClaimIsEqualToValue 클레임 변환은 항상 자체 어설션된 기술 프로필에서 호출되는 유효성 검사 기술 프로필에서 실행됩니다. UserMessageIfClaimsTransformationBooleanValueIsNotEqual 자체 어설션된 기술 프로필 메타데이터는 기술 프로필이 사용자에게 제공하는 오류 메시지를 제어합니다. 오류 메시지를 지역화수 있습니다.

다이어그램은 AssertStringClaimsAreEqual 클레임 변환을 사용하는 방법을 보여 줍니다.

AssertBooleanClaimIsEqualToValue의 예

다음 클레임 변환은 값을 사용하여 부울 클레임 true 의 값을 확인하는 방법을 보여 줍니다. 클레임 값이 accountEnabled false이면 오류 메시지가 throw됩니다.

<ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
  </InputParameters>
</ClaimsTransformation>
  • 입력 클레임:
    • inputClaim: 거짓
    • valueToCompareTo: 참
  • 결과: 오류가 throw됨

AssertBooleanClaimIsEqualToValue 클레임 변환 호출

다음 Example-AssertBoolean 유효성 검사 기술 프로필은 클레임 변환을 AssertAccountEnabledIsTrue 호출합니다.

<TechnicalProfile Id="Example-AssertBoolean">
  <DisplayName>Unit test</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="ComparisonResult" DefaultValue="false" />
  </OutputClaims>
  <OutputClaimsTransformations>
    <OutputClaimsTransformation ReferenceId="AssertAccountEnabledIsTrue" />
  </OutputClaimsTransformations>
  <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

자체 어설션된 기술 프로필은 유효성 Example-AssertBoolean 검사 기술 프로필을 호출합니다.

<TechnicalProfile Id="SelfAsserted-AssertDateTimeIsGreaterThan">
  <DisplayName>Example</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.selfasserted</Item>
    <Item Key="UserMessageIfClaimsTransformationBooleanValueIsNotEqual">Custom error message if account is disabled.</Item>
  </Metadata>
  ...
  <ValidationTechnicalProfiles>
    <ValidationTechnicalProfile ReferenceId="Example-AssertBoolean" />
  </ValidationTechnicalProfiles>
</TechnicalProfile>

CompareBooleanClaimToValue

클레임의 부울 값이 같거나 true같은 false 지 확인하고 압축 결과를 반환합니다. 이 클레임 변환의 라이브 데모를 확인하세요.

요소 TransformationClaimType 데이터 형식 비고
입력클레임 입력클레임 불리언 비교할 클레임입니다.
입력 매개 변수 valueToCompareTo 불리언 비교할 값(true 또는 false)입니다.
출력클레임 비교 결과 불리언 이 클레임 변환이 호출된 후에 생성되는 클레임입니다.

CompareBooleanClaimToValue의 예

다음 클레임 변환은 값을 사용하여 부울 클레임 true 의 값을 확인하는 방법을 보여 줍니다. 클레임 값 IsAgeOver21Years 이 같true으면 클레임 변환이 반환되고, 그렇지 않으면 true반환됩니다false.

<ClaimsTransformation Id="AssertAccountEnabled" TransformationMethod="CompareBooleanClaimToValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="IsAgeOver21Years" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim  ClaimTypeReferenceId="accountEnabled" TransformationClaimType="compareResult"/>
  </OutputClaims>
</ClaimsTransformation>
  • 입력 클레임:
    • inputClaim: 거짓
  • 입력 매개 변수:
    • valueToCompareTo: 참
  • 출력 클레임:
    • compareResult: 거짓

Not클레임

Not 부울 입력 클레임의 작업을 계산하고 작업의 결과로 출력 클레임을 설정합니다. 이 클레임 변환의 라이브 데모를 확인하세요.

요소 TransformationClaimType 데이터 형식 비고
입력클레임 입력클레임 불리언 운영할 클레임입니다.
출력클레임 출력클레임 불리언 이 클레임 변환이 호출된 후 생성되는 클레임(true 또는 false)입니다.

NotClaims의 예

다음 클레임 변환은 클레임에 대해 논리적 부정을 수행하는 방법을 보여 줍니다.

<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="NotClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • 입력 클레임:
    • inputClaim: 거짓
  • 출력 클레임:
    • outputClaim: true

또는클레임

두 부울 클레임 중 일부를 Or 계산하고 작업의 결과로 출력 클레임을 설정합니다. 이 클레임 변환의 라이브 데모를 확인하세요.

요소 TransformationClaimType 데이터 형식 비고
입력클레임 입력클레임1 불리언 평가할 첫 번째 클레임입니다.
입력클레임 입력클레임2 불리언 평가할 두 번째 클레임입니다.
출력클레임 출력클레임 불리언 이 클레임 변환이 호출된 후 생성될 클레임(true 또는 false)입니다.

OrClaims의 예

다음 클레임 변환은 두 개의 부울 클레임을 사용하는 Or 방법을 보여 줍니다.

<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="OrClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="isLastTOSAcceptedNotExists" TransformationClaimType="inputClaim1" />
    <InputClaim ClaimTypeReferenceId="isLastTOSAcceptedGreaterThanNow" TransformationClaimType="inputClaim2" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="presentTOSSelfAsserted" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • 입력 클레임:
    • inputClaim1: 참
    • inputClaim2: 거짓
  • 출력 클레임:
    • outputClaim: true

다음 단계