создание Azure Active Directory регистрации приложения в Azure обозреватель данных

проверка подлинности приложения Azure Active Directory (Azure AD) используется для приложений, таких как автоматическая служба или запланированный поток, которым требуется доступ к обозреватель данных Azure без предоставления пользователю. Если вы подключаетесь к базе данных Azure обозреватель данных с помощью приложения, например веб-приложения, необходимо пройти проверку подлинности с помощью субъекта службы. В этой статье подробно описано, как создать и зарегистрировать субъект-службу Azure AD, а затем авторизовать его для доступа к базе данных Azure обозреватель данных.

Создание регистрации приложения Azure AD

Для аутентификации приложения Azure AD требуется создание и регистрация приложения в Azure AD. При создании регистрации приложения в клиенте Azure AD автоматически создается субъект-служба.

  1. Войдите в портал Azure и откройте Azure Active Directory колонку

    выберите Azure Active Directory в меню портала.

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

    Запустите новую регистрацию приложения.

  3. Заполните следующие сведения:

    • имя;
    • Поддерживаемые типы учетных записей
    • URI > перенаправления Веб-сайт

      Важно!

      Тип приложения должен быть Web. URI является необязательным и в данном случае остается пустым.

    • Нажмите кнопку Зарегистрировать.

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

  4. Выберите колонку Обзор и скопируйте идентификатор приложения.

    Примечание

    Идентификатор приложения необходим для авторизации субъекта-службы для доступа к базе данных.

    Копировать идентификатор регистрации приложения.

  5. В колонке & секреты выберите новый секрет клиента .

    Начните создание секрета клиента.

    Совет

    В этой статье описывается использование секрета клиента для учетных данных приложения. Сертификат X509 можно также использовать для проверки подлинности приложения. выберите Upload сертификат и следуйте инструкциям по отправке открытой части сертификата.

  6. Введите описание, срок действия и нажмите кнопку Добавить .

    Введите параметры секрета клиента.

  7. Скопируйте значение ключа.

    Примечание

    При выходе из этой страницы значение ключа будет недоступно. Вам потребуется ключ для настройки учетных данных клиента для базы данных.

    Скопируйте значение секретного ключа клиента.

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

Настройка делегированных разрешений для регистрации приложения

Если приложению требуется доступ к обозреватель данных Azure с помощью учетных данных вызывающего пользователя, настройте делегированные разрешения для регистрации приложения. Например, если вы создаете веб-API для доступа к Azure обозреватель данных и хотите пройти проверку подлинности с помощью учетных данных пользователя, вызывающего API.

  1. В колонке разрешения API выберите Добавить разрешение.

  2. Выберите API, используемые моей организацией. Найдите и выберите Azure обозреватель данных.

    Добавление разрешения API Azure обозреватель данных.

  3. В окне делегированные разрешения выберите user_impersonation и добавьте разрешения .

    Выберите делегированные разрешения с олицетворением пользователя.

Предоставление субъекту-службе доступа к базе данных обозреватель данных Azure

Теперь, когда регистрация приложения субъекта-службы будет создана, необходимо предоставить соответствующему субъекту-службе доступ к базе данных Azure обозреватель данных. В следующем примере предоставляется доступ к средству просмотра. Другие роли см. в статье Управление разрешениями для базы данных Azure обозреватель данных.

  1. В пользовательском веб-интерфейсеподключитесь к базе данных и откройте вкладку запрос.

  2. Выполните следующую команду:

    .add database <DatabaseName> viewers ('<ApplicationId>') '<Notes>'
    

    Пример:

    .add database Logs viewers ('aadapp=f778b387-ba15-437f-a69e-ed9c9225278b') 'Azure Data Explorer App Registration'
    

    Последний параметр — это строка, которая отображается в виде примечаний при запросе ролей, связанных с базой данных.

    Примечание

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

Дополнительные сведения см. в разделе разрешенияна Управление ролями безопасности и прием.

Использование учетных данных приложения для доступа к базе данных

Используйте учетные данные приложения для программного доступа к базе данных с помощью клиентской библиотеки Azure обозреватель данных.

. . .
string applicationClientId = "<myClientID>";
string applicationKey = "<myApplicationKey>";
. . .
var kcsb = new KustoConnectionStringBuilder($"https://{clusterName}.kusto.windows.net/{databaseName}")
    .WithAadApplicationKeyAuthentication(
        applicationClientId,
        applicationKey,
        authority);
var client = KustoClientFactory.CreateCslQueryProvider(kcsb);
var queryResult = client.ExecuteQuery($"{query}");

Примечание

Укажите идентификатор и ключ приложения, созданные ранее для регистрации приложения (субъект-служба).

Дополнительные сведения см. в статье Аутентификация в Azure AD для azure обозреватель данных доступ и Использование Azure Key Vault с веб-приложением .NET Core.

Устранение неполадок

Ошибка недопустимого ресурса

Если приложение используется для проверки подлинности пользователей или приложений для Azure обозреватель данных Access, необходимо настроить делегированные разрешения для приложения службы обозреватель данных Azure. Объявление приложения может проверять подлинность пользователей или приложений для Azure обозреватель данных Access. В противном случае при попытке проверки подлинности будет возникать ошибка, аналогичная следующей:

AADSTS650057: Invalid resource. The client has requested access to a resource which is not listed in the requested permissions in the client's application registration...

Необходимо выполнить инструкции по настройке делегированных разрешений для приложения службы Обозреватель данных Azure.

Администратор клиента Azure AD может применить политику, которая запрещает пользователям клиента предоставлять согласие на доступ к приложениям. Эта ситуация приведет к ошибке, похожей на следующую, когда пользователь пытается войти в приложение:

AADSTS65001: The user or administrator has not consented to use the application with ID '<App ID>' named 'App Name'

Необходимо обратиться к администратору Azure AD, чтобы предоставить согласие для всех пользователей в клиенте, или разрешить согласие пользователя для конкретного приложения.

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