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


Использование библиотеки кошелька Microsoft Entra с проверенным идентификатором

В этом руководстве вы узнаете, как мобильное приложение может использовать библиотеку Кошелька Microsoft Entra с проверенным идентификатором для выдачи и представления проверяемых учетных данных.

Необходимые компоненты

  • Android Studio , установленная на Mac/Windows и тестовом устройстве Android. Необходимо включить режим разработчика на тестовом устройстве Android.
  • Учетная запись разработчика Apple, Mac с Xcode и тестовым устройством iOS с включенным режимом разработчика. Версия iOS должна быть 16 и выше.
  • Установите приложение СРЕДСТВА чтения QR-кода на тестовом устройстве. Приложение WalletLibraryDemo не имеет возможности сканировать QR-коды, поэтому вам нужно приложение средства чтения QR-кода для сканирования QR-кодов с помощью.

Вам не нужно быть разработчиком мобильных устройств, чтобы следовать этому руководству и получить демонстрационное приложение. Инструменты и тестовое устройство и мужество, чтобы попытаться, все, что вам нужно. Кроме того, вам не нужен клиент Проверенные учетные данные Microsoft Entra, так как вы можете протестировать демонстрационное приложение с нашим общедоступным конечным веб-сайтом демонстрации.

Примечание.

Используйте последнюю версию библиотеки кошельков, чтобы получить поддержку для кривой, совместимой с NIST P-256, используемой проверенным идентификатором с февраля 2024 года.

Что такое библиотека кошелька Microsoft Entra?

Библиотека кошелька Microsoft Entra для iOS и Android предоставляет вашему мобильному приложению возможность начать работу с платформой Проверенные учетные данные Microsoft Entra. Используя библиотеку кошельков, мобильное приложение может выдавать и представлять проверяемые учетные данные в соответствии с отраслевыми стандартами.

Когда следует использовать библиотеку кошелька Microsoft Entra?

Microsoft Authenticator имеет все функции, которые будут выступать в качестве кошелька для Проверенные учетные данные Microsoft Entra. Но в случаях, когда вы не можете использовать Microsoft Authenticator, библиотека кошельков является вашей альтернативой. Пример может быть, если у вас уже есть мобильное приложение, с которыми знакомы пользователи, и где более целесообразно включить технологию проверяемых учетных данных в это приложение.

Вы можете использовать Microsoft Authenticator и мобильное приложение с помощью библиотеки кошельков параллельно на одном мобильном устройстве. При установке Authenticator будет приложением, которое зарегистрировало обработчик протокола для openid://, поэтому ваше приложение должно убедиться, что запросы на выдачу и презентацию находят ваше приложение. Использование внедренных глубоких ссылок на HTML-страницах, основанных на протоколе openid://, приведет к запуску Microsoft Authenticator.

Использует ли корпорация Майкрософт библиотеку кошелька Microsoft Entra?

Да, библиотека кошельков используется Microsoft Authenticator. Некоторые функции могут появиться в Authenticator в первую очередь, но это наши амбиции сделать их доступными в библиотеке кошельков.

Каковы усилия по добавлению библиотеки кошелька Microsoft Entra в мое приложение?

Вы добавите библиотеку кошелька в проект мобильного приложения, добавив зависимость maven для Android и добавив зависимость какаопод для iOS.

Для iOS добавьте pod WalletLibrary в файл Podfile.

target "YourApp" do
  use_frameworks!
  pod "WalletLibrary", "~> 1.0.1"
end

Затем необходимо добавить код для обработки запросов. Дополнительные сведения см. в примере кода WalletLibraryDemo.

/// Create a verifiedIdClient.
let verifiedIdClient = VerifiedIdClientBuilder().build()

/// Create a VerifiedIdRequestInput using a OpenId Request Uri.
let input = VerifiedIdRequestURL(url: URL(string: "openid-vc://...")!)
let result = await verifiedIdClient.createRequest(from: input)

/// Every external method's return value is wrapped in a Result object to ensure proper error handling.
switch (result) {
case .success(let request):
    /// A request created from the method above could be an issuance or a presentation request. 
    /// In this example, it is a presentation request, so we can cast it to a VerifiedIdPresentationRequest.
    let presentationRequest = request as? VerifiedIdPresentationRequest
case .failure(let error):
    /// If an error occurs, its value can be accessed here.
    print(error)
}

Затем необходимо выполнить следующие основные задачи в приложении.

  • Получение URL-адресов запроса. Библиотека кошельков не предоставляет никаких функций для сканирования QR-кода или аналогичного кода. Получение URL-адреса запроса с помощью методов, таких как сканирование QR-кода, необходимо добавить вами.
  • Хранение учетных данных. Библиотека кошельков создает закрытый и открытый ключ, используемый для подписывания ответов, и сохраняет его на устройстве, но он не предоставляет никаких функций для хранения учетных данных. Необходимо управлять хранилищем учетных данных для мобильного приложения.
  • Пользовательский интерфейс. Любое визуальное представление сохраненных учетных данных и пользовательского интерфейса для управления процессом выдачи и презентации должно быть реализовано вами.

Демонстрационная версия приложения библиотеки кошелька

Библиотека кошельков поставляется с демонстрационными приложениями в репозитории GitHub, которое готово к использованию без каких-либо изменений. Вам просто нужно создать и развернуть его. Демонстрационное приложение — это упрощенная и простая реализация, которая иллюстрирует выдачу и презентацию как минимум. Чтобы быстро перейти, вы можете использовать приложение средства чтения QR-кода для сканирования QR-кода, а затем скопировать и вставить его в демонстрационном приложении.

Чтобы протестировать демонстрационное приложение, вам потребуется веб-приложение, которое выдает учетные данные и отправляет запросы на презентацию для учетных данных. Веб-приложение для общедоступной демонстрации Woodgrove используется для этой цели в этом руководстве.

Создание примера Android

На компьютере разработчика с Android Studio сделайте следующее:

  1. Скачайте или клонируйте репозиторий библиотеки кошельков Android GitHub. Вам не нужна папка walletlibrary, и ее можно удалить, если вы хотите.

  2. Запустите Android Studio и откройте родительскую папку walletlibrarydemo

    Снимок экрана: Android Studio.

  3. Выберите меню "Сборка" и " Создать проект". Этот шаг занимает некоторое время.

  4. Подключение тестового устройства Android с помощью USB-кабеля к ноутбуку

  5. Выберите тестовое устройство в Android Studio и нажмите кнопку запуска (зеленый треугольник)

Выдача учетных данных с помощью примера Android

  1. Запуск приложения WalletLibraryDemo

    Снимок экрана: создание запроса на Android.

  2. На ноутбуке запустите общедоступный демонстрационный веб-сайт https://aka.ms/vcdemo и выполните следующие действия.

    1. Введите имя и фамилию и нажмите клавишу NEXT
    2. Выберите "Проверить с использованием истинного удостоверения"
    3. Нажмите кнопку "Создать селфи " и "Отправить правительственный идентификатор". В демонстрации используются имитированные данные, и вам не нужно предоставлять реальный селфи или идентификатор.
    4. Нажмите кнопку "Далее" и "ОК"
  3. Сканируйте QR-код с помощью приложения средства чтения QR-кода на тестовом устройстве, а затем скопируйте полный URL-адрес, отображаемый в приложении средства чтения QR-кода. Помните код пин-кода.

  4. Вернитесь в приложение WalletLibraryDemo и вставьте URL-адрес из буфера обмена

  5. Нажмите кнопку CREATE REQUEST

  6. Когда приложение скачал запрос, отобразится экран, как показано ниже. Щелкните белый прямоугольник, который является текстовым полем, и введите пин-код, отображаемый на странице браузера. Затем нажмите кнопку COMPLETE .

    Снимок экрана: ввод пин-кода в Android.

  7. После завершения выдачи демонстрационная версия приложения отображает утверждения в учетных данных.

    Снимок экрана: завершение выдачи на Android.

Представление учетных данных с помощью примера Android

Пример приложения содержит выданные учетные данные в памяти, поэтому после выдачи его можно использовать для презентации.

  1. Приложение WalletLibraryDemo должно отображать некоторые учетные данные на начальном экране, если вы успешно выпустили учетные данные.

    Снимок экрана: приложение с учетными данными в Android.

  2. В демонстрационной версии Woodgrove в браузере нажмите кнопку "Вернуться в Woodgrove", если вы еще не сделали этого и продолжите работу с персонализированным порталом 3 Access.

  3. Сканируйте QR-код с помощью приложения "Читатель QR-кода" на тестовом устройстве, а затем скопируйте полный URL-адрес в буфер обмена.

  4. Вернитесь к приложению WalletLibraryDemo и вставьте URL-адрес и нажмите кнопку CREATE REQUEST

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

    Снимок экрана: презентация учетных данных в Android.

Создание примера iOS

На компьютере разработчика Mac с Xcode выполните следующие действия:

  1. Скачайте или клонируйте репозиторий библиотеки кошельков iOS GitHub.

  2. Запустите Xcode и откройте папку верхнего уровня для WalletLibrary

  3. Настройка фокуса на проекте WalletLibraryDemo

    Снимок экрана: Xcode.

  4. Измените идентификатор команды на идентификатор команды разработчика Apple.

  5. Выберите меню "Продукт" и " Сборка". Этот шаг занимает некоторое время.

  6. Подключение тестового устройства iOS с помощью USB-кабеля к ноутбуку

  7. Выбор тестового устройства в Xcode

  8. Выберите меню "Продукт", а затем нажмите кнопку "Запустить треугольник" или "Запустить "

Выдача учетных данных с помощью примера iOS

  1. Запуск приложения WalletLibraryDemo

    Снимок экрана: создание запроса на iOS.

  2. На ноутбуке запустите общедоступный демонстрационный веб-сайт https://aka.ms/vcdemo и выполните следующие действия.

    1. Введите имя и фамилию и нажмите клавишу NEXT
    2. Выберите "Проверить с использованием истинного удостоверения"
    3. Нажмите кнопку "Создать селфи " и "Отправить правительственный идентификатор". В демонстрации используются имитированные данные, и вам не нужно предоставлять реальный селфи или идентификатор.
    4. Нажмите кнопку "Далее" и "ОК"
  3. Сканируйте QR-код с помощью приложения средства чтения QR-кода на тестовом устройстве, а затем скопируйте полный URL-адрес, отображаемый в приложении средства чтения QR-кода. Помните код пин-кода.

  4. Вернитесь в приложение WalletLibraryDemo и вставьте URL-адрес из буфера обмена

  5. Нажмите кнопку "Создать запрос"

  6. Когда приложение скачал запрос, отобразится экран, как показано ниже. Нажмите кнопку "Добавить закрепление", чтобы перейти на экран, где можно ввести код пин-кода, а затем нажмите кнопку "Добавить", чтобы вернуться и, наконец, нажмите кнопку "Завершить".

    Снимок экрана: ввод пин-кода в iOS.

  7. После завершения выдачи демонстрационная версия приложения отображает утверждения в учетных данных.

    Снимок экрана: завершение выдачи в iOS.

Представление учетных данных с помощью примера iOS

Пример приложения содержит выданные учетные данные в памяти, поэтому после выдачи его можно использовать для презентации.

  1. Приложение WalletLibraryDemo должно отображать имя типа учетных данных на начальном экране, если вы успешно выпустили учетные данные.

    Снимок экрана: приложение с учетными данными в iOS.

  2. В демонстрационной версии Woodgrove в браузере нажмите кнопку "Вернуться в Woodgrove", если вы еще не сделали этого и продолжите работу с персонализированным порталом 3 Access.

  3. Сканируйте QR-код с помощью приложения "Читатель QR-кода" на тестовом устройстве, а затем скопируйте полный URL-адрес в буфер обмена.

  4. Вернитесь к приложению WalletLibraryDemo, очистите предыдущий запрос из текстового поля, вставьте URL-адрес и нажмите кнопку "Создать запрос"

  5. Приложение извлекает запрос презентации и отображает соответствующие учетные данные, которые у вас есть в памяти. В этом случае у вас есть только один. Щелкните его , чтобы маленький флажок переключается с синего на зеленый, а затем нажмите кнопку "Завершить ", чтобы отправить ответ презентации

    Снимок экрана: презентация учетных данных в iOS.

Следующие шаги

Узнайте, как настроить клиент для Проверенные учетные данные Microsoft Entra.