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


Вход пользователей в пример приложения Android (Kotlin)

В этом руководстве показано, как настроить пример мобильного приложения Android для входа пользователей.

Ниже перечислены действия, которые вы выполните в этой статье.

  • Зарегистрируйте приложение в Центре администрирования Microsoft Entra.
  • Добавьте URL-адрес перенаправления платформы.
  • Включите общедоступные потоки клиентов.
  • Обновите пример файла кода конфигурации Android, чтобы использовать собственные Внешняя идентификация Microsoft Entra для сведений о клиенте.
  • Запустите и проверьте пример мобильного приложения Android.

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

Регистрация приложения

Чтобы приложение входить в систему с помощью Microsoft Entra, Внешняя идентификация Microsoft Entra должны быть осведомлены о создаваемом приложении. Регистрация приложения устанавливает отношение доверия между приложением и Microsoft Entra. При регистрации приложения внешний идентификатор создает уникальный идентификатор, известный как идентификатор приложения (клиента), значение, используемое для идентификации приложения при создании запросов проверки подлинности.

Ниже показано, как зарегистрировать приложение в Центре администрирования Microsoft Entra:

  1. Войдите в Центр администрирования Microsoft Entra как минимум разработчик приложений.

  2. Если у вас есть доступ к нескольким клиентам, используйте значок параметров в верхнем меню, чтобы переключиться на внешний клиент из меню каталогов и подписок.

  3. Перейдите к приложениям> удостоверений>Регистрация приложений.

  4. Выберите + Создать регистрацию.

  5. На отображаемой странице регистрации приложения;

    1. Введите понятное имя приложения, отображаемое пользователям приложения, например ciam-client-app.
    2. В разделе Поддерживаемые типы учетных записей выберите Учетные записи только в этом каталоге организации.
  6. Выберите Зарегистрировать.

  7. Панель обзора приложения отображается при успешной регистрации. Запишите идентификатор приложения (клиента), который будет использоваться в исходном коде приложения.

Добавление URL-адреса перенаправления платформы

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

  1. В разделе Управление выберите Проверка подлинности.
  2. На странице конфигураций платформы выберите "Добавить платформу" и выберите вариант Android.
  3. Введите имя пакета проекта. Если вы скачали пример кода, это значение равно com.azuresamples.msaldelegatedandroidkotlinsampleapp.
  4. В разделе хэш подписи в области "Настройка приложения Android" выберите "Создать хэш подписи разработки". Это изменится для каждой среды разработки. Скопируйте и запустите команду KeyTool для операционной системы в терминале.
  5. Введите хэш подписи, созданный с помощью KeyTool.
  6. Выберите Настроить.
  7. Скопируйте конфигурацию MSAL из области конфигурации Android и сохраните ее для последующей настройки приложения.
  8. Нажмите кнопку Готово.

Включение общедоступного потока клиента

Чтобы определить приложение как общедоступный клиент, выполните следующие действия.

  1. В разделе Управление выберите Проверка подлинности.

  2. В разделе "Дополнительные параметры" для параметра "Разрешить общедоступные потоки клиентов" нажмите кнопку "Да".

  3. Выберите Сохранить, чтобы сохранить изменения.

После регистрации приложения он получает разрешение User.Read . Однако, поскольку клиент является внешним клиентом, сами пользователи клиента не могут согласиться с этим разрешением. Вы, как администратор, должны предоставить это разрешение от имени всех пользователей в клиенте:

  1. На странице Регистрация приложений выберите созданное приложение (например, ciam-client-app), чтобы открыть страницу обзора.

  2. В разделе Управление выберите Разрешения API.

    1. Выберите "Предоставить согласие администратора" для <имени> клиента, а затем нажмите кнопку "Да".
    2. Выберите "Обновить", а затем убедитесь, что <имя> клиента предоставлено в разделе "Состояние" для разрешения.

Клонирование примера мобильного приложения Android

Чтобы получить пример приложения, можно клонировать его из GitHub или скачать его в виде файла .zip.

  • Чтобы клонировать пример, откройте командную строку и перейдите к месту создания проекта и введите следующую команду:

    git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-android-sample
    

Настройка примера мобильного приложения Android

Чтобы включить проверку подлинности и доступ к ресурсам Microsoft Graph, настройте пример, выполнив следующие действия.

  1. В Android Studio откройте клонируемый проект.

  2. Откройте файл /app/src/main/res/raw/auth_config_ciam.json .

  3. Найдите заполнитель:

    • Enter_the_Application_Id_Hereи замените его идентификатором приложения (клиента) зарегистрированного ранее приложения.
    • Enter_the_Redirect_Uri_Here и замените его значением redirect_uri в файле конфигурации библиотеки проверки подлинности Майкрософт (MSAL), скачанном ранее при добавлении URL-адреса перенаправления платформы.
    • Enter_the_Tenant_Subdomain_Here и замените его поддоменом каталога (клиента). Например, если основной домен клиента — это contoso.onmicrosoft.com, используйте contoso. Если вы не знаете поддомен клиента, узнайте, как прочитать сведения о клиенте.
  4. Откройте файл /app/src/main/AndroidManifest.xml .

  5. Найдите заполнитель:

    • ENTER_YOUR_SIGNATURE_HASH_HERE и замените его хэшом подписи, созданным ранее при добавлении URL-адреса перенаправления платформы.
  6. Откройте файл /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt .

  7. Найдите свойство с именем scopes и задайте области, записанные в разделе "Предоставление согласия администратора". Если вы не записали области, вы можете оставить этот список области пустым.

    private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
    

Вы настроили приложение и готовы к выполнению.

Запуск и проверка примера мобильного приложения Android

Чтобы создать и запустить приложение, выполните следующие действия.

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

  2. В меню целевого устройства выберите устройство, на которое вы хотите запустить приложение.

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

  3. Нажмите кнопку Запустить.

  4. Выберите " Получить маркер" в интерактивном режиме , чтобы запросить маркер доступа.

  5. Если вы выберете API — выполните GET для вызова защищенного веб-API ASP.NET Core, вы получите ошибку.

Дополнительные сведения о вызове защищенного веб-API см. в следующих шагах.

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