Вход пользователей в пример приложения Android (Kotlin)
В этом руководстве показано, как настроить пример мобильного приложения Android для входа пользователей.
Ниже перечислены действия, которые вы выполните в этой статье.
- Зарегистрируйте приложение в Центре администрирования Microsoft Entra.
- Добавьте URL-адрес перенаправления платформы.
- Включите общедоступные потоки клиентов.
- Обновите пример файла кода конфигурации Android, чтобы использовать собственные Внешняя идентификация Microsoft Entra для сведений о клиенте.
- Запустите и проверьте пример мобильного приложения Android.
Необходимые компоненты
- Android Studio.
- Внешний клиент. Если у вас еще нет пробной версии, зарегистрируйтесь на бесплатную пробную версию.
Регистрация приложения
Чтобы приложение входить в систему с помощью Microsoft Entra, Внешняя идентификация Microsoft Entra должны быть осведомлены о создаваемом приложении. Регистрация приложения устанавливает отношение доверия между приложением и Microsoft Entra. При регистрации приложения внешний идентификатор создает уникальный идентификатор, известный как идентификатор приложения (клиента), значение, используемое для идентификации приложения при создании запросов проверки подлинности.
Ниже показано, как зарегистрировать приложение в Центре администрирования Microsoft Entra:
Войдите в Центр администрирования Microsoft Entra как минимум разработчик приложений.
Если у вас есть доступ к нескольким клиентам, используйте значок параметров в верхнем меню, чтобы переключиться на внешний клиент из меню каталогов и подписок.
Перейдите к приложениям> удостоверений>Регистрация приложений.
Выберите + Создать регистрацию.
На отображаемой странице регистрации приложения;
- Введите понятное имя приложения, отображаемое пользователям приложения, например ciam-client-app.
- В разделе Поддерживаемые типы учетных записей выберите Учетные записи только в этом каталоге организации.
Выберите Зарегистрировать.
Панель обзора приложения отображается при успешной регистрации. Запишите идентификатор приложения (клиента), который будет использоваться в исходном коде приложения.
Добавление URL-адреса перенаправления платформы
Чтобы указать тип приложения для регистрации приложения, выполните следующие действия.
- В разделе Управление выберите Проверка подлинности.
- На странице конфигураций платформы выберите "Добавить платформу" и выберите вариант Android.
- Введите имя пакета проекта. Если вы скачали пример кода, это значение равно
com.azuresamples.msaldelegatedandroidkotlinsampleapp
. - В разделе хэш подписи в области "Настройка приложения Android" выберите "Создать хэш подписи разработки". Это изменится для каждой среды разработки. Скопируйте и запустите команду KeyTool для операционной системы в терминале.
- Введите хэш подписи, созданный с помощью KeyTool.
- Выберите Настроить.
- Скопируйте конфигурацию MSAL из области конфигурации Android и сохраните ее для последующей настройки приложения.
- Нажмите кнопку Готово.
Включение общедоступного потока клиента
Чтобы определить приложение как общедоступный клиент, выполните следующие действия.
В разделе Управление выберите Проверка подлинности.
В разделе "Дополнительные параметры" для параметра "Разрешить общедоступные потоки клиентов" нажмите кнопку "Да".
Выберите Сохранить, чтобы сохранить изменения.
Предоставление согласия администратора
После регистрации приложения он получает разрешение User.Read . Однако, поскольку клиент является внешним клиентом, сами пользователи клиента не могут согласиться с этим разрешением. Вы, как администратор, должны предоставить это разрешение от имени всех пользователей в клиенте:
На странице Регистрация приложений выберите созданное приложение (например, ciam-client-app), чтобы открыть страницу обзора.
В разделе Управление выберите Разрешения API.
- Выберите "Предоставить согласие администратора" для <имени> клиента, а затем нажмите кнопку "Да".
- Выберите "Обновить", а затем убедитесь, что <имя> клиента предоставлено в разделе "Состояние" для разрешения.
Клонирование примера мобильного приложения Android
Чтобы получить пример приложения, можно клонировать его из GitHub или скачать его в виде файла .zip.
Чтобы клонировать пример, откройте командную строку и перейдите к месту создания проекта и введите следующую команду:
git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-android-sample
Настройка примера мобильного приложения Android
Чтобы включить проверку подлинности и доступ к ресурсам Microsoft Graph, настройте пример, выполнив следующие действия.
В Android Studio откройте клонируемый проект.
Откройте файл /app/src/main/res/raw/auth_config_ciam.json .
Найдите заполнитель:
Enter_the_Application_Id_Here
и замените его идентификатором приложения (клиента) зарегистрированного ранее приложения.Enter_the_Redirect_Uri_Here
и замените его значением redirect_uri в файле конфигурации библиотеки проверки подлинности Майкрософт (MSAL), скачанном ранее при добавлении URL-адреса перенаправления платформы.Enter_the_Tenant_Subdomain_Here
и замените его поддоменом каталога (клиента). Например, если основной домен клиента — этоcontoso.onmicrosoft.com
, используйтеcontoso
. Если вы не знаете поддомен клиента, узнайте, как прочитать сведения о клиенте.
Откройте файл /app/src/main/AndroidManifest.xml .
Найдите заполнитель:
ENTER_YOUR_SIGNATURE_HASH_HERE
и замените его хэшом подписи, созданным ранее при добавлении URL-адреса перенаправления платформы.
Откройте файл /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt .
Найдите свойство с именем
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
Чтобы создать и запустить приложение, выполните следующие действия.
На панели инструментов выберите приложение в меню конфигураций запуска.
В меню целевого устройства выберите устройство, на которое вы хотите запустить приложение.
Если у вас нет устройств, необходимо создать виртуальное устройство Android для использования эмулятора Android или подключить физическое устройство Android.
Нажмите кнопку Запустить.
Выберите " Получить маркер" в интерактивном режиме , чтобы запросить маркер доступа.
Если вы выберете API — выполните GET для вызова защищенного веб-API ASP.NET Core, вы получите ошибку.
Дополнительные сведения о вызове защищенного веб-API см. в следующих шагах.
Следующие шаги
- Войдите пользователей и вызовите защищенный веб-API в примере приложения Android (Kotlin).