Прочитать на английском

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


Проверка подлинности в настольных приложениях

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

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

В разных коннекторах показаны различные методы аутентификации. Например, коннектор OData Feed в Power BI Desktop и Excel отображает следующее диалоговое окно методов аутентификации.

снимок экрана диалогового окна проверки подлинности для канала OData в Power Query Desktop.

Если вы используете соединитель из веб-приложения, например службы Power BI или Power Apps, Power Query отображает диалоговое окно метода проверки подлинности для соединителя канала OData, который выглядит примерно так, как показано на следующем рисунке.

снимок экрана: окно

Как видно, другой выбор методов проверки подлинности представлен из онлайн-приложения. Кроме того, в веб-приложении некоторые соединители могут попросить ввести имя локального шлюза данных для подключения к данным. Дополнительные сведения о проверке подлинности в Power Query Online см. в разделе Подключения и аутентификация в Power Query Online.

Настройка уровня метода проверки подлинности

В соединителях, требующих ввода URL-адреса, вам будет предложено выбрать уровень, к которому применяется метод проверки подлинности. Например, если выбрать веб-соединитель с URL-адресом https://contoso.com/2020data/List_of_countries_and_capitals, значение уровня по умолчанию для метода аутентификации устанавливается на https://contoso.com.

снимок экрана диалогового окна проверки подлинности с выбранным уровнем и заданным уровнем по умолчанию.

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

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

После установки метода проверки подлинности для определенного адреса соединителя вам не нужно выбрать метод проверки подлинности для этого соединителя, используя этот URL-адрес или любые подадресы. Например, предположим, что вы выберете адрес https://contoso.com/ в качестве уровня, к которому будут применяться параметры URL-адреса веб-соединителя. При использовании веб-соединителя для доступа к любой веб-странице, начинающейся с этого адреса, вам не нужно снова выбрать метод проверки подлинности.

Изменение метода проверки подлинности

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

Чтобы изменить метод проверки подлинности в Power BI Desktop или Excel, выполните следующие действия.

  1. Выполните одно из следующих действий:

    • На вкладке Файл Power BI Desktop выберите Параметры и настройкиНастроек источника данных.

      снимок экрана вкладки

    • В Excel на вкладке Данные выберите Получить данные>Параметры источника данных.

      снимок экрана книги Excel с выделенным параметром

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

  3. В диалоговом окне Редактирование разрешений выберите раздел Учетные данные, а затем нажмите Изменить.

    снимок экрана диалогового окна

  4. Измените учетные данные на тип, необходимый источником данных, выберите Сохранить, а затем нажмите кнопку ОК.

Вы также можете удалить учетные данные для определенного источника данных на шаге 3, выбрав Очистить разрешения для выбранного источника данных или выбрав Очистить все разрешения для всех перечисленных источников данных.

Подключение к Microsoft Entra ID через соединители Web и OData

При подключении к источникам данных и службам, которым требуется проверка подлинности с помощью OAuth или проверки подлинности на основе идентификатора Microsoft Entra, в некоторых случаях, когда служба настроена правильно, можно использовать встроенные соединители Web или OData для проверки подлинности и подключения к данным без необходимости использовать служебный или настраиваемый соединитель.

В этом разделе описываются симптомы подключения, если служба не настроена должным образом. Он также содержит сведения о том, как Power Query взаимодействует со службой при правильной настройке.

Симптомы, когда служба не настроена должным образом

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

Один из примеров, когда эта ошибка может произойти, находится в службе Northwind OData.

  1. Введите конечную точку Northwind в режиме "Получение данных" с помощью соединителя OData.

    Скриншот диалогового окна получения данных веб-канала OData с сайтом Northwind, введённый в качестве URL.

  2. Нажмите кнопку ОК, чтобы войти в процесс аутентификации. Как правило, поскольку Northwind не является службой, прошедшей проверку подлинности, вы просто используете Анонимный. Чтобы продемонстрировать отсутствие поддержки идентификатора Microsoft Entra, выберите учетную запись организации, а затем выберите войти.

    снимок экрана диалогового окна проверки подлинности с выбранной вкладкой учетной записи организации.

  3. Возникла ошибка, указывающая, что проверка подлинности OAuth или Идентификатора Microsoft Entra ID не поддерживается в службе.

    снимок экрана диалогового окна проверки подлинности с сообщением об ошибке «Не удается подключиться».

Поддерживаемый рабочий процесс

Одним из примеров поддерживаемой службы, работающей с OAuth, является CRM, например https://contoso.crm.dynamics.com/api/data/v8.2.

  1. Введите URL-адрес в интерфейсе получения данных с помощью соединителя OData.

    Снимок экрана потока OData для получения данных с адресом CRM, указанным в URL.

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

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

  3. Запрос успешно выполнен, и поток OAuth продолжает выполнять проверку подлинности.

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

При выборе входа в шаге 2 выше Power Query отправляет запрос в указанную конечную точку URL-адреса с заголовком авторизации с пустым маркером носителя.

GET https://contoso.crm.dynamics.com/api/data/v8.2 HTTP/1.1
Authorization: Bearer
User-Agent: Microsoft.Data.Mashup (https://go.microsoft.com/fwlink/?LinkID=304225)
Host: pbi.crm.dynamics.com
Connection: Keep-Alive

Ожидается, что служба будет отвечать ответом 401 с заголовком WWW-Authenticate, указывающим URI авторизации Microsoft Entra ID для использования. Этот ответ должен включать клиент для входа или /common/, если ресурс не связан с определенным клиентом.

HTTP/1.1 401 Unauthorized
Cache-Control: private
Content-Type: text/html
Server: 
WWW-Authenticate: Bearer authorization_uri=https://login.microsoftonline.com/3df2eaf6-33d0-4a10-8ce8-7e596000ebe7/oauth2/authorize 
Date: Wed, 15 Aug 2018 15:02:04 GMT
Content-Length: 49

Программа Power Query может затем инициировать поток OAuth для authorization_uri. Power Query запрашивает ресурс или значение аудитории Microsoft Entra ID, равное домену запрашиваемого URL-адреса. Это значение будет значением, используемым для URL-адреса идентификатора приложения Azure в регистрации API или службы. Например, если доступ к https://api.myservice.com/path/to/data/api, то Power Query ожидает, что значение URL-адреса идентификатора приложения будет равно https://api.myservice.com.

Если вам нужен дополнительный контроль над потоком OAuth (например, если служба должна отвечать 302, а не 401), или если url-адрес идентификатора приложения или значение ресурса идентификатора Microsoft Entra ID не соответствует URL-адресу службы, то вам потребуется использовать настраиваемый соединитель. Для получения дополнительной информации об использовании встроенного потока идентификации Microsoft Entra ID, перейдите к проверке подлинности Microsoft Entra ID.

Идентификаторы клиента Microsoft Entra ID

Следующие идентификаторы клиентов Microsoft Entra ID используются в Power Query. Возможно, вам потребуется явно разрешить этим идентификаторам клиента доступ к службе и API в зависимости от общих параметров идентификатора Microsoft Entra. Перейдите к шагу 6 в разделе «Добавление области», чтобы получить дополнительные сведения.

Идентификатор клиента Титул Описание
a672d62c-fc7b-4e81-a576-e60dc46e951d Power Query для Excel Общедоступный клиент, используемый в Power BI Desktop и шлюзе.
b52893c8-bc2e-47fc-918b-77022b299bbc Обновление данных Power BI Конфиденциальный клиент, используемый в службе Power BI.
7ab7862c-4c57-491e-8a45-d52a7e023983 Power Apps и Power Automate Конфиденциальный клиент, используемый в Power Apps и Power Automate.