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


Подключение к Сервер отчетов Power BI и SSRS из мобильных приложений Power BI

В этой статье описывается, как настроить среду для поддержки проверки подлинности OAuth с помощью мобильного приложения Power BI для подключения к Сервер отчетов Power BI и SQL Server Reporting Services 2016 или более поздней версии.

Требования

Windows Server требуется для серверов прокси веб-приложения (WAP) и службы федерации Active Directory (AD FS) (AD FS). У вас нет домена функционального уровня Windows.

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

Примечание.

По состоянию на 1 марта 2025 г. мобильное приложение Power BI Mobile больше не сможет подключаться к серверу отчетов с помощью протокола OAuth через AD FS, настроенное в Windows Server 2016. Клиентам, которые используют OAuth с AD FS, настроенными в Windows Server 2016 и прокси веб-приложения (WAP), потребуется обновить сервер AD FS до Windows Server 2019 или более поздней версии или использовать прокси приложения Microsoft Entra. После обновления Windows Server пользователям мобильных приложений Power BI может потребоваться повторно войти на сервер отчетов.

Это обновление требует изменения в библиотеке проверки подлинности, используемой мобильным приложением. Изменение никак не влияет на поддержку AD FS в Windows Server 2016, а только возможность подключения к нему приложения Power BI Mobile.

Конфигурация служб доменных имен (DNS)

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

https://reports.contoso.com

Запись DNS для отчетов на общедоступный IP-адрес сервера прокси веб-приложения (WAP). Кроме того, необходимо настроить общедоступную запись DNS для сервера AD FS. Например, возможно, вы настроили сервер AD FS со следующим URL-адресом.

https://fs.contoso.com

Запись DNS для fs на общедоступный IP-адрес сервера прокси веб-приложения (WAP), так как она будет опубликована как часть приложения WAP.

Сертификаты

Необходимо настроить сертификаты для приложения WAP и сервера AD FS. Оба этих сертификата должны быть частью допустимого центра сертификации, распознаваемого мобильными устройствами.

Конфигурация служб Reporting Services

На стороне служб Reporting Services не нужно настраивать много. Вам просто нужно убедиться, что:

Имя субъекта-службы (SPN)

Имя субъекта-службы — это уникальный идентификатор для службы, которая использует проверку подлинности Kerberos. Необходимо убедиться, что у вас есть соответствующий HTTP-имя участника-службы для сервера отчетов.

Сведения о настройке правильного имени субъекта-службы для сервера отчетов см. в разделе "Регистрация имени субъекта-службы" для сервера отчетов.

Включение проверки подлинности для согласования

Чтобы разрешить серверу отчетов использовать проверку подлинности Kerberos, необходимо настроить тип проверки подлинности сервера отчетов для RSWindowsNegotiate. Это можно сделать в файле rsreportserver.config.

<AuthenticationTypes>  
    <RSWindowsNegotiate />  
    <RSWindowsKerberos />  
    <RSWindowsNTLM />  
</AuthenticationTypes>

Дополнительные сведения см. в разделе "Изменение файла конфигурации служб Reporting Services" и настройка проверки подлинности Windows на сервере отчетов.

конфигурация службы федерации Active Directory (AD FS) (AD FS)

Необходимо настроить AD FS на сервере Windows в вашей среде. Конфигурацию можно выполнить с помощью диспетчер сервера и выбора добавления ролей и компонентов в разделе "Управление". Дополнительные сведения см. в службы федерации Active Directory (AD FS).

Внимание

По состоянию на 1 марта 2025 г. приложения Power BI Mobile больше не смогут подключаться к серверу отчетов через AD FS, настроенные в Windows Server 2016. См. примечание в начале этой статьи.

Создать группу приложений

На экране управления AD FS необходимо создать группу приложений для служб Reporting Services, содержащую сведения для мобильных приложений Power BI.

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

  1. В приложении ad FS Management щелкните правой кнопкой мыши группы приложений и выберите " Добавить группу приложений".

    Добавление приложения AD FS

  2. В мастере добавления группы приложений укажите имя группы приложений и выберите собственное приложение, обращающееся к веб-API.

    Мастер группы приложений AD FS 01

  3. Выберите Далее.

  4. Укажите имя добавляемого приложения.

  5. Хотя идентификатор клиента будет создан автоматически, введите 484d54fc-b481-4eee-9505-0258a13020 для iOS и Android.

  6. Вы хотите добавить следующие URL-адреса перенаправления:

    Записи для Power BI Mobile — iOS:
    msauth://code/mspbi-adal://com.microsoft.powerbimobile
    msauth://code/mspbi-adalms://com.microsoft.powerbimobilems
    mspbi-adal://com.microsoft.powerbimobile
    mspbi-adalms://com.microsoft.powerbimobilems

    Приложения Android должны выполнить следующие действия.
    urn:ietf:wg:oauth:2.0:oob

    Мастер группы приложений AD FS 02

  7. Выберите Далее.

  8. Укажите URL-адрес сервера отчетов. URL-адрес — это внешний URL-адрес, который будет попасть в прокси веб-приложения. Он должен быть в следующем формате.

    Примечание.

    Этот URL-адрес учитывает регистр!

    https://<report server url>/reports

    Мастер группы приложений AD FS 03

  9. Выберите Далее.

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

    Мастер группы приложений AD FS 04

  11. Выберите Далее.

  12. Выберите Далее.

  13. Выберите Далее.

  14. Выберите Закрыть.

После завершения вы увидите свойства группы приложений, как показано ниже.

Мастер группы приложений AD FS

Теперь выполните следующую команду PowerShell на сервере AD FS, чтобы убедиться, что обновление маркера поддерживается.

Set-AdfsApplicationPermission -TargetClientRoleIdentifier '484d54fc-b481-4eee-9505-0258a1913020' -AddScope 'openid'

Конфигурация прокси-сервера веб-приложения (WAP)

Вы хотите включить роль Прокси веб-приложения (роль) Windows на сервере в вашей среде. Он должен находиться на сервере Windows. Дополнительные сведения см. в разделе Прокси веб-приложения в Windows Server и публикации приложений с помощью предварительной проверки подлинности AD FS.

Конфигурация ограниченного делегирования

Чтобы перейти с проверки подлинности OAuth на проверка подлинности Windows, необходимо использовать ограниченное делегирование с переходом протокола. Это часть конфигурации Kerberos. Мы уже определили имя субъекта-службы Reporting Services в конфигурации служб Reporting Services.

Необходимо настроить ограниченное делегирование в учетной записи компьютера WAP Server в Active Directory. Возможно, вам потребуется работать с администратором домена, если у вас нет прав на Active Directory.

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

  1. На компьютере с установленными средствами Active Directory запустите Пользователи и компьютеры Active Directory.

  2. Найдите учетную запись компьютера для сервера WAP. По умолчанию он находится в контейнере компьютеров.

  3. Щелкните правой кнопкой мыши сервер WAP и перейдите к свойствам.

  4. Перейдите на вкладку "Делегирование".

  5. Выберите " Доверять этому компьютеру" только для делегирования указанным службам, а затем используйте любой протокол проверки подлинности.

    Ограниченное значение WAP

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

  6. Нажмите кнопку "Добавить... в поле "Службы".

    Ограниченное значение WAP 02

  7. Выбор пользователей или компьютеров...

  8. Введите учетную запись службы, которую вы используете для Reporting Services. Эта учетная запись — это учетная запись, добавленная в службу субъекта-службы в конфигурации служб Reporting Services.

  9. Выберите имя субъекта-службы для служб Reporting Services и нажмите кнопку "ОК".

    Примечание.

    Возможно, вы увидите только имя субъекта-службы NetBIOS. На самом деле он выберет имена субъектов-служб NetBIOS и FQDN, если они существуют.

    Ограничение WAP 03

  10. Результат должен выглядеть следующим образом, когда установлен флажок "Развернутый ".

    Ограничение WAP 04

  11. Нажмите ОК.

Добавление приложения WAP

Хотя вы можете публиковать приложения в консоли управления доступом к отчету, мы хотим создать приложение с помощью PowerShell. Ниже приведена команда для добавления приложения.

Add-WebApplicationProxyApplication -Name "Contoso Reports" -ExternalPreauthentication ADFS -ExternalUrl https://reports.contoso.com/ -ExternalCertificateThumbprint "0ff79c75a725e6f67e3e2db55bdb103efc9acb12" -BackendServerUrl https://ContosoSSRS/ -ADFSRelyingPartyName "Reporting Services - Web API" -BackendServerAuthenticationSPN "http/ContosoSSRS.contoso.com" -UseOAuthAuthentication
Параметр Комментарии
ADFSRelyingPartyName Имя веб-API, созданное в составе группы приложений в AD FS.
ExternalCertificateThumbprint Сертификат, используемый для внешних пользователей. Важно, чтобы сертификат действителен на мобильных устройствах и был получен из доверенного центра сертификации.
BackendServerUrl URL-адрес сервера отчетов с сервера WAP. Если сервер WAP находится в dmZ, может потребоваться использовать полное доменное имя. Убедитесь, что этот URL-адрес можно получить из веб-браузера на сервере WAP.
BackendServerAuthenticationSPN Имя субъекта-службы, созданное в рамках конфигурации служб Reporting Services.

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

После добавления приложения WAP необходимо задать backendServerAuthenticationMode для использования IntegrationWindowsAuthentication. Чтобы задать его, необходимо указать идентификатор из приложения WAP.

Get-WebApplicationProxyApplication "Contoso Reports" | fl

Добавление группы приложений

Выполните следующую команду, чтобы задать BackendServerAuthenticationMode с помощью идентификатора приложения WAP.

Set-WebApplicationProxyApplication -id 30198C7F-DDE4-0D82-E654-D369A47B1EE5 -BackendServerAuthenticationMode IntegratedWindowsAuthentication

Мастер добавления группы приложений

Подключение к мобильному приложению Power BI

В мобильном приложении Power BI необходимо подключиться к экземпляру служб Reporting Services. Для этого укажите внешний URL-адрес для приложения WAP.

Введите адрес сервера

При нажатии кнопки "Подключиться" вы будете перенаправлены на страницу входа AD FS. Введите допустимые учетные данные для вашего домена.

Вход в AD FS

После нажатия кнопки "Вход" вы увидите элементы на сервере Служб Reporting Services.

Многофакторная проверка подлинности

Вы можете включить многофакторную проверку подлинности, чтобы включить дополнительную безопасность для вашей среды. Дополнительные сведения см. в статье "Настройка многофакторной проверки подлинности Microsoft Entra в качестве поставщика проверки подлинности с помощью AD FS".

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

Появится сообщение об ошибке "Не удалось войти на сервер SSRS"

Ошибка

Вы можете настроить Fiddler для работы с прокси-сервером для мобильных устройств, чтобы узнать, насколько далеко выполнен запрос. Чтобы включить прокси-сервер Fiddler для телефонного устройства, необходимо настроить CertMaker для iOS и Android на компьютере под управлением Fiddler. Надстройка из Telerik для Fiddler.

Если вход работает успешно при использовании Fiddler, может возникнуть проблема с сертификатом с приложением WAP или сервером AD FS.