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


Руководство по настройке IDEMIA Mobile ID с помощью Azure Active Directory B2C

Подготовка к работе

Azure Active Directory B2C (Azure AD B2C) имеет два метода определения взаимодействия пользователей с приложениями: предопределенные потоки пользователей или настраиваемые настраиваемые политики. См. общие сведения о потоках пользователей и пользовательских политиках.

Интеграция Azure AD B2C с IDEMIA Mobile ID

IDEMIA предоставляет службы биометрической проверки подлинности, такие как идентификация лица и отпечатки пальцев, что снижает вероятность мошенничества и повторного использования учетных данных. Благодаря мобильному идентификатору граждане пользуются доверенным цифровым удостоверением, выданным правительством, в качестве дополнения к их физическому идентификатору. Mobile ID проверяет удостоверение с помощью самостоятельно выбранного ПИН-кода, сенсорного идентификатора или идентификатора лица. Граждане управляют своими удостоверениями, обмениваясь информацией, необходимой для транзакции. Многие государственные департаменты автомобильных транспортных средств (DMV) используют Mobile ID.

Дополнительные сведения см. в idemia.com: IDEMIA.

Описание сценария

Интеграция с мобильными идентификаторами включает следующие компоненты:

  • Azure AD B2C — сервер авторизации, который проверяет учетные данные пользователя.
    • Он также называется поставщиком удостоверений (IdP)
  • IDEMIA Mobile ID — поставщик OpenID Connect (OIDC), настроенный как внешний поставщик Azure AD B2C
  • Приложение IDEMIA Mobile ID — цифровая версия водительских прав или идентификатора, выданного государством, в приложении на телефоне

Mobile ID — это цифровой документ идентификации, переносимый маркер мобильного удостоверения, который динамические административные административные представления используют для проверки отдельных удостоверений. Подписанный цифровой идентификатор хранится на мобильных телефонах пользователей в качестве удостоверения на границе. Подписанные учетные данные упрощают доступ к службам идентификации, таким как подтверждение возраста, финансовое знание клиента, доступ к учетной записи и т. д.

На следующей схеме показаны потоки пользователей регистрации и входа с помощью мобильного идентификатора.

Схема потоков пользователей регистрации и входа с помощью мобильного идентификатора.

  1. Пользователь посещает страницу входа Azure AD B2C (ответит сторона) со своим устройством и мобильным идентификатором, чтобы выполнить транзакцию.
  2. Azure AD B2C выполняет проверка идентификатора. Он перенаправляет пользователя на маршрутизатор IDEMIA с потоком кода авторизации OIDC.
  3. Маршрутизатор отправляет биометрический запрос в мобильное приложение пользователя с сведениями о проверке подлинности и запросе на авторизацию.
  4. В зависимости от безопасности пользователю может быть предложено указать дополнительные сведения: ввести ПИН-код, сделать динамическое селфи или и то, и другое.
  5. Ответ проверки подлинности предоставляет подтверждение владения, присутствия и согласия. Ответ возвращается маршрутизатору.
  6. Маршрутизатор проверяет сведения о пользователе и отвечает на Azure AD B2C с результатом.
  7. Пользователю предоставляется или запрещается доступ.

Включение мобильного идентификатора

Чтобы приступить к работе, перейдите на idemia.com страницу "Связаться ", чтобы запросить демонстрацию. В текстовом поле формы запроса укажите свою заинтересованность в интеграции Azure AD B2C.

Интеграция Mobile ID с Azure AD B2C

Используйте следующие разделы для подготовки и выполнения процессов интеграции.

Предварительные требования

Для начала работы необходимы перечисленные ниже компоненты и данные.

  • Доступ к пользователям с idEMIA, выданные государством США учетные данные мобильного идентификатора (mID)

    • Или на этапе тестирования демонстрационное приложение mID от IDEMIA
  • Подписка Azure

  • Клиент Azure AD B2C, связанный с подпиской Azure.

  • Бизнес-приложение, зарегистрированное в клиенте B2C Azure AD

    • Для тестирования настройте https://jwt.msвеб-приложение Майкрософт с декодированным содержимым маркера.

    Примечание

    Содержимое маркера не покидает браузер.

Отправка приложения проверяющей стороны для mID

Во время интеграции с мобильным идентификатором предоставляются следующие сведения.

Свойство Описание
Имя приложения Azure AD B2C или другое имя приложения
Client_ID Уникальный идентификатор поставщика удостоверений (IdP)
Секрет клиента Пароль, который приложение проверяющей стороны использует для проверки подлинности с помощью IDP IDEMIA
Конечная точка метаданных URL-адрес, указывающий на документ конфигурации издателя маркера, также известный как конечная точка конфигурации OpenID.
URI перенаправления https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/oauth2/authresp
Например: https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/oauth2/authresp

Если вы используете личный домен, введите https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp.
URI перенаправления после выхода https://your-B2C-tenant-name.b2clogin.com/your-B2C-tenant-name.onmicrosoft.com/{policy}/oauth2/v2.0/logout
Отправка запроса на выход.

Примечание

Идентификатор клиента и секрет клиента понадобятся позже для настройки поставщика удостоверений в Azure AD B2C.

Создание ключа политики

Сохраните секрет клиента IDEMIA в клиенте Azure AD B2C. Для выполнения следующих инструкций используйте каталог с клиентом Azure AD B2C.

  1. Войдите на портал Azure.
  2. На панели инструментов портала выберите Каталоги и подписки.
  3. На странице Параметры портала Каталоги и подписки в списке Имя каталога найдите каталог Azure AD B2C.
  4. Выберите Переключиться.
  5. В левом верхнем углу портал Azure выберите Все службы.
  6. Найдите и выберите Azure AD B2C.
  7. На странице Обзор выберите Identity Experience Framework.
  8. Выберите Ключи политики.
  9. Выберите Добавить.
  10. Для пункта Параметры выберите Вручную.
  11. Введите имя ключа политики. Например, IdemiaAppSecret. Префикс B2C_1A_ добавляется к имени ключа.
  12. В поле Секрет введите секрет клиента, который вы записали.
  13. Чтобы использовать параметр Ключ, выберите Подпись.
  14. Нажмите кнопку создания.

Настройка мобильного идентификатора в качестве внешнего поставщика удостоверений

Чтобы пользователи могли выполнять вход с помощью мобильного идентификатора, определите IDEMIA в качестве поставщика утверждений. Это действие гарантирует, что Azure AD B2C взаимодействует через конечную точку, которая предоставляет утверждения, Azure AD B2C использует для проверки подлинности пользователя с помощью биометрии.

Чтобы определить IDEMIA в качестве поставщика утверждений, добавьте его в элемент ClaimsProvider в файле расширения политики.

     <TechnicalProfile Id="Idemia-Oauth2">
          <DisplayName>IDEMIA</DisplayName>
          <Description>Login with your IDEMIA identity</Description>
          <Protocol Name="OAuth2" />
          <Metadata>
            <Item Key="METADATA">https://idp.XXXX.net/oxauth/.well-known/openid-configuration</Item>
            <!-- Update the Client ID below to the Application ID -->
            <Item Key="client_id">00001111-aaaa-2222-bbbb-3333cccc4444</Item>
            <Item Key="response_types">code</Item>
            <Item Key="scope">openid id_basic mt_scope</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
            <Item Key="token_endpoint_auth_method">client_secret_basic</Item>
            <Item Key="ClaimsEndpoint">https://idp.XXXX.net/oxauth/restv1/userinfo</Item>
            <Item Key="ValidTokenIssuerPrefixes">https://login.microsoftonline.com/</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_IdemiaAppSecret" />
</CryptographicKeys>
          <InputClaims>
            <InputClaim ClaimTypeReferenceId="acr" PartnerClaimType="acr_values" DefaultValue="loa-2" />
          </InputClaims>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
            <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="firstName1" />
            <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="lastName1" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="idemia" />
            <OutputClaim ClaimTypeReferenceId="documentId" />
            <OutputClaim ClaimTypeReferenceId="address1" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
           

Задайте для параметра client_id значение идентификатора приложения из регистрации приложения.

Свойство Описание
Область Для OpenID Connect (OIDC) минимальное требование устанавливается область параметру openid. Добавление дополнительных областей в список с разделителями пробелами.
redirect_uri В этом расположении агент пользователя отправляет код авторизации в Azure AD B2C.
response_type Для потока кода авторизации выберите код.
acr_values Этот параметр управляет методами проверки подлинности, которые пользователь должен выполнять во время проверки подлинности.

Выберите одно из следующих значений.

Значение параметра Влияние на процесс проверки подлинности пользователя
loa-2 Только многофакторная проверка подлинности на основе шифрования Microsoft Entra
loa-3 MFA на основе шифрования, а также еще один фактор
loa-4 MFA на основе шифрования, а также пользователь выполняет ПИН-код и биометрическую проверку подлинности

Конечная точка /userinfo предоставляет утверждения для областей из запроса авторизации. <Для mt_scope> есть такие утверждения, как имя, фамилия и номер водительского удостоверения, среди прочего. Набор утверждений для область публикуется в разделе scope_to_claims_mapping API обнаружения. Azure AD B2C запрашивает утверждения из конечной точки утверждений и возвращает их в элементе OutputClaims. Может потребоваться сопоставить имя утверждения в политике с именем в поставщике удостоверений. Определите тип утверждения в элементе ClaimSchema:

<ClaimType Id="documentId">
     <DisplayName>documentId</DisplayName>
     <DataType>string</DataType>
</ClaimType>
<ClaimType Id="address1">
     <DisplayName>address</DisplayName>
     <DataType>string</DataType>
</ClaimType>

Добавление пути взаимодействия пользователя

Для выполнения этих инструкций поставщик удостоверений настроен, но он не находится на странице входа. Если у вас нет пользовательского пути взаимодействия пользователя, скопируйте шаблон пути взаимодействия пользователя.

  1. Откройте файл в начальном пакете TrustFrameworkBase.xml .
  2. Найдите и скопируйте содержимое UserJourneys элемента , в том числе ID=SignUpOrSignIn.
  3. Откройте TrustFrameworkExtensions.xml.
  4. Найдите элемент UserJourneys . Если элемента нет, добавьте его.
  5. Вставьте содержимое элемента UserJourney в качестве дочернего элемента элемента UserJourneys.
  6. Переименуйте идентификатор пути взаимодействия пользователя. Например, ID=CustomSignUpSignIn.

Добавление поставщика удостоверений в путь взаимодействия пользователя

Если пользователь находится в пути взаимодействия, добавьте в него нового поставщика удостоверений. Сначала добавьте кнопку входа, а затем свяжите ее с действием, которое является созданным техническим профилем.

  1. В пути взаимодействия пользователя найдите элемент шага оркестрации с Type=CombinedSignInAndSignUp, или Type=ClaimsProviderSelection. Обычно это первый шаг оркестрации. Элемент ClaimsProviderSelections содержит список удостоверений, с помощью которого выполняется вход пользователей. Порядок элементов управления — это порядок кнопок входа, видимых пользователем.
  2. Добавьте XML-элемент ClaimsProviderSelection.
  3. Задайте для параметра TargetClaimsExchangeId понятное имя.
  4. Добавьте элемент ClaimsExchange .
  5. В качестве идентификатора укажите целевое значение идентификатора обмена запросами.
  6. Обновите значение TechnicalProfileReferenceId до созданного идентификатора технического профиля.

В следующем файле XML показаны первые два этапа оркестрации пути взаимодействия пользователя с поставщиком удостоверений:

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
  <ClaimsProviderSelections>
    ...
    <ClaimsProviderSelection TargetClaimsExchangeId="IdemiaExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="IdemiaExchange" TechnicalProfileReferenceId="Idemia-Oauth2" />
  </ClaimsExchanges>
</OrchestrationStep>

Настройка политики проверяющей стороны

Политика проверяющей стороны, например SignUpSignIn.xml, указывает путь взаимодействия пользователя, который выполняется Azure AD B2C.

  1. Найдите элемент DefaultUserJourney в проверяющей стороне.
  2. Обновите ReferenceId в соответствии с идентификатором пути взаимодействия пользователя, в который вы добавили поставщик удостоверений.

В следующем примере для пути взаимодействия пользователя CustomSignUpOrSignIn в качестве параметра ReferenceId задано значение CustomSignUpOrSignIn.

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

Передача настраиваемой политики

Для выполнения следующих инструкций используйте каталог с клиентом Azure AD B2C.

  1. Войдите на портал Azure.

  2. На панели инструментов портала выберите Каталоги и подписки.

  3. На странице Параметры портала Каталоги и подписки в списке Имя каталога найдите каталог Azure AD B2C.

  4. Выберите Переключиться.

  5. На портале Azure найдите и выберите Azure AD B2C.

  6. В разделе Политики выберите Identity Experience Framework.

  7. Выберите Отправить настраиваемую политику.

  8. Отправьте два измененных файла политики в следующем порядке:

    • Политика расширения, например TrustFrameworkExtensions.xml
    • Политика проверяющей стороны, например SignUpSignIn.xml

Тестирование настраиваемой политики

  1. Выберите политику проверяющей стороны, например B2C_1A_signup_signin.
  2. В поле Приложение выберите зарегистрированное веб-приложение.
  3. https://jwt.msотображается в поле URL-адрес ответа.
  4. Выберите Запустить сейчас.
  5. На странице регистрации или входа выберите IDEMIA.
  6. Браузер перенаправляется на https://jwt.ms. Просмотрите содержимое маркера, возвращенное Azure AD B2C.

Дополнительные сведения: Учебник. Регистрация веб-приложения в Azure AD B2C

Дальнейшие действия