Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Начиная с 1 мая 2025 г. Azure AD B2C больше не будет доступен для приобретения для новых клиентов. Дополнительные сведения см. в разделе "Вопросы и ответы".
В этой статье приведены примеры использования логических преобразований утверждений схемы Identity Experience Framework в Azure Active Directory B2C (Azure AD B2C). Дополнительные сведения см. в статье о преобразовании утверждений.
ИПретензии
Вычисляет And операцию двух логических входных утверждений и задает выходное утверждение с результатом операции. Ознакомьтесь с преобразованием этих утверждений в демонстрации в реальном времени.
| Элемент | TransformationClaimType (Тип утверждения) | Тип данных | Примечания. |
|---|---|---|---|
| InputClaim (Утверждение входа) | inputClaim1 | булевый | Первое утверждение для оценки. |
| InputClaim (Утверждение входа) | inputClaim2 | булевый | Второе утверждение для оценки. |
| outputClaim | outputClaim | булевый | Утверждение, которое будет создано после вызова этого преобразования утверждений (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: true
- inputClaim2: false
- Выходные утверждения:
- outputClaim: false
AssertBooleanClaimIsEqualToValue
Проверяет, равны ли логические значения двух утверждений, и создает исключение, если они не являются. Ознакомьтесь с преобразованием этих утверждений в демонстрации в реальном времени.
| Элемент | TransformationClaimType (Тип утверждения) | Тип данных | Примечания. |
|---|---|---|---|
| InputClaim | InputClaim | булевый | Проверяемое утверждение. |
| ПараметрВвода | valueToCompareToTo | булевый | Значение для сравнения (true или false). |
Преобразование утверждений AssertBooleanClaimIsEqualToValue всегда выполняется из технического профиля проверки , вызываемого самостоятельным техническим профилем. Метаданные пользовательского профиля UserMessageIfClaimsTransformationBooleanValueIsNotEqual управляют сообщением об ошибке, которое технический профиль представляет пользователю. Сообщения об ошибках можно локализовать.
Пример AssertBooleanClaimIsEqualToValue
В следующем преобразовании утверждений показано, как проверить значение логического утверждения со значением true . Если значение accountEnabled утверждения равно false, создается сообщение об ошибке.
<ClaimsTransformation Id="AssertAccountEnabledIsTrue" TransformationMethod="AssertBooleanClaimIsEqualToValue">
<InputClaims>
<InputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
</InputParameters>
</ClaimsTransformation>
- Входные утверждения:
- inputClaim: false
- valueToCompareTo: true
- Результат: возникла ошибка.
Вызов преобразования утверждений 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>
Сравните BooleanClaimToValue
Проверяет, что логическое значение утверждения равно true или falseвозвращает результат сжатия. Ознакомьтесь с преобразованием этих утверждений в демонстрации в реальном времени.
| Элемент | TransformationClaimType (Тип утверждения) | Тип данных | Примечания. |
|---|---|---|---|
| InputClaim (Утверждение входа) | InputClaim | булевый | Утверждение для сравнения. |
| ПараметрВвода | valueToCompareToTo | булевый | Значение для сравнения (true или false). |
| outputClaim | compareResult | булевый | Утверждение, которое создается после вызова этого преобразования утверждений. |
Пример 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: false
- Входные параметры:
- valueToCompareTo: true
- Выходные утверждения:
- compareResult: false
NotClaims
Вычисляет Not операцию логического входного утверждения и задает выходное утверждение с результатом операции. Ознакомьтесь с преобразованием этих утверждений в демонстрации в реальном времени.
| Элемент | TransformationClaimType (Тип утверждения) | Тип данных | Примечания. |
|---|---|---|---|
| InputClaim (Утверждение входа) | InputClaim | булевый | Утверждение, с которым должно работать. |
| outputClaim | outputClaim | булевый | Утверждение, созданное после этого преобразования утверждений, вызывается (true или false). |
Пример NotClaims
В следующем преобразовании утверждений показано, как выполнить логическое отрицание утверждения.
<ClaimsTransformation Id="CheckWhetherEmailBePresented" TransformationMethod="NotClaims">
<InputClaims>
<InputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="userExists" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Входные утверждения:
- inputClaim: false
- Выходные утверждения:
- outputClaim: true.
ИлиПретензии
Вычисляет Or два логических утверждения и задает выходное утверждение с результатом операции. Ознакомьтесь с преобразованием этих утверждений в демонстрации в реальном времени.
| Элемент | TransformationClaimType (Тип утверждения) | Тип данных | Примечания. |
|---|---|---|---|
| InputClaim (Утверждение входа) | inputClaim1 | булевый | Первое утверждение для оценки. |
| InputClaim (Утверждение входа) | inputClaim2 | булевый | Второе утверждение для оценки. |
| outputClaim | outputClaim | булевый | Утверждение, которое будет создано после вызова этого преобразования утверждений (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: true
- inputClaim2: false
- Выходные утверждения:
- outputClaim: true.
Дальнейшие шаги
- Дополнительные примеры преобразования утверждений можно найти в репозитории сообщества Azure AD B2C в GitHub.