Поделиться через


Элемент управления отображением для проверки

Используйте элемент управления отображением для проверки утверждения, например адреса электронной почты или номера телефона, на который пользователю будет отправлен код проверки.

Действия VerificationControl

Элемент управления отображением для проверки состоит из двух этапов (действий):

  1. Запросите целевой объект от пользователя, например адрес электронной почты или номер телефона, на который должен быть отправлен код проверки. Когда пользователь нажимает кнопку Отправить код, выполняется действие SendCode элемента управления отображением для проверки. Действие SendCode генерирует код, создает содержимое для отправки и отправляет его пользователю. Значение адреса можно предварительно заполнить и использовать в качестве второго фактора проверки подлинности.

    Пример страницы для действия

  2. После отправки кода пользователь читает сообщение, вводит код проверки в элемент управления, предоставленный элементом управления отображением, и выбирает Проверить код. После выбора Проверить код выполняется действие VerifyCode для проверки кода, связанного с адресом. Если пользователь выбирает команду Отправить новый код, первое действие выполняется снова.

    Пример страницы для действия

Обязательные элементы VerificationControl

VerificationControl должен содержать следующие элементы:

  • Тип DisplayControl — это VerificationControl.
  • DisplayClaims
    • Отправить в — одно или несколько утверждений, указывающих, куда отправить код проверки. Например, адрес электронной почты или код страны и номер телефона.
    • Код проверки — утверждение проверочного кода, предоставленное пользователем после отправки кода. Это утверждение должно быть задано как обязательное, а значение ControlClaimType должно быть равно VerificationCode.
  • Выходное утверждение (необязательно), возвращаемое на страницу с самоподтверждением после завершения пользователем процесса проверки. Например, адрес электронной почты или код страны и номер телефона. В самоподтверждаемом техническом профиле используются утверждения для сохранения данных или пузырьковой передачи выходных заявок на следующий этап оркестрации.
  • Два Action со следующими именами:
    • SendCode — отправляет пользователю код. Это действие обычно содержит два технических профиля проверки, чтобы сгенерировать код и отправить его.
    • VerifyCode — проверяет код. Это действие обычно содержит один технический профиль проверки.

В приведенном ниже примере на странице отображается текстовое поле электронной почты. Когда пользователь вводит свой адрес электронной почты и выбирает SendCode, действие SendCode активируется в Azure AD B2C серверной части.

Затем пользователь вводит verificationCode и выбирает VerifyCode, чтобы активировать действие VerifyCode в серверной части. Если все проверки пройдены, VerificationControl считается завершенным, и пользователь может перейти к следующему шагу.

<DisplayControl Id="emailVerificationControl" UserInterfaceControlType="VerificationControl">
  <DisplayClaims>
    <DisplayClaim ClaimTypeReferenceId="email"  Required="true" />
    <DisplayClaim ClaimTypeReferenceId="verificationCode" ControlClaimType="VerificationCode" Required="true" />
  </DisplayClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" />
  </OutputClaims>
  <Actions>
    <Action Id="SendCode">
      <ValidationClaimsExchange>
        <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="GenerateOtp" />
        <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="SendGrid" />
      </ValidationClaimsExchange>
    </Action>
    <Action Id="VerifyCode">
      <ValidationClaimsExchange>
        <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="VerifyOtp" />
      </ValidationClaimsExchange>
    </Action>
  </Actions>
</DisplayControl>