Настройка Office Online Server для SharePoint Server

Сводка: Узнайте, как настроить SharePoint Server для использования Office Online Server (следующая версия Office веб-приложения Server).

Аудитория: ИТ-специалисты

Эта статья — продолжение статьи Развертывание Office Online Server, где описывалась настройка сервера, на котором работает локальный сервер Office Online Server. В этой статье описано, как настроить SharePoint Server 2016 для использования Office Online Server. В этом примере вы настроите SharePoint Server для использования Office Online Server. Сначала необходимо выполнить несколько командлетов Microsoft PowerShell из SharePoint Server 2016, после которых пользователи смогут открывать Office-файлы из библиотек документов SharePoint Server в браузере.

Подготовка к настройке SharePoint Server на использование Office Online Server

Перед началом работы нужно кое-что проверить.

  • Эти инструкции также применимы к SharePoint Server 2013, однако SharePoint Server 2013 не может использовать функции подключения внешних данных Excel Online и обновления данных в Office Online Server.

  • Установите SharePoint Server 2016. Инструкции см. в SharePoint Install SharePoint Server.

  • Убедитесь, что все веб-приложения SharePoint Server 2016 используют проверку подлинности на основе утверждений. Визуализация и редактирование Office Online не будут работать для веб-приложений SharePoint Server 2016, использующих классический режим проверки подлинности.

  • Чтобы пользователи могли редактировать (а не только читать) документы Office в браузере, вам потребуется лицензия на редактирование. Кроме того, необходимо разрешить редактирование в ферме серверов Office Online Server.

  • При входе в SharePoint Server 2016 с использованием системной учетной записи вы не сможете тестировать подключение между SharePoint Server 2016 и сервером Office Online Server. Войдите с другой учетной записью, чтобы проверить подключение.

  • В условиях недостатка памяти могут происходить сбои при просмотре документов Office в Office Online.

  • SharePoint Server 2013 не может использовать функции подключения внешних данных Excel Online и обновления данных в Office Online Server. Это доступно только в SharePoint Server 2016.

  • Office Online Server использует маркеры OAuth для взаимодействия с SharePoint Server. Эти маркеры могут быть перехватываться и воспроизводиться, предоставляя злоумышленнику те же права, что и пользователь, выполняющего запрос с SharePoint Server на Office Online Server. Настоятельно рекомендуется настроить Office Online Server использовать только протокол HTTPS (TLS).

Настройка SharePoint Server для использования сервера Office Online Server

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

Тестовая среда с использованием HTTP

В этой конфигурации установите сервер Office Online Server, выполнив действия, описанные в статье Развертывание фермы Office Online Server, состоящей из одного сервера и поддерживающей HTTP. Настройте ферму Office Online Server для использования внутреннего URL-адреса и HTTP.

Шаг 1. Создание привязки между SharePoint 2016 и Office Web Apps Server

Сначала откройте командную консоль SharePoint 2016 с повышенными привилегиями. (Правой кнопкой мыши щелкните Командная консоль SharePoint 2016 и выберите пункт Запуск от имени администратора.)

Выполните следующую команду, в которой <WacServerName> представляет полное доменное имя URL-адреса, установленного для внутренних URL-адресов. Это точка входа для трафика сервера Office Online Server. Для данной тестовой среды необходимо указать параметр -AllowHTTP, чтобы разрешить SharePoint Server 2016 получать сведения обнаружения из фермы серверов Office Online Server посредством протокола HTTP. Если вы не укажете -AllowHTTP, то SharePoint Server 2016 будет пытаться использовать для взаимодействия с фермой серверов Office Online Server протокол HTTPS, и эта команда завершится неудачно.


New-SPWOPIBinding -ServerName <WacServerName> -AllowHTTP

После выполнения этой команды вы должны увидеть список привязок, отображенный в командной строке Microsoft PowerShell.

Шаг 2. Просмотр зон WOPI для привязок SharePoint

Сервер Office Online Server использует зоны для определения, какой URL-адрес (внутренний или внешний) и какой протокол (HTTP или HTTPS) использовать при взаимодействии с узлом, в данном случае с SharePoint Server 2016. По умолчанию SharePoint Server 2016 использует зону internal-https. Выполните следующую команду, чтобы узнать текущую зону.

Get-SPWOPIZone

Эта команда должна отобразить зону WOPI internal-http. Если она отображается правильно, перейдите к шагу 4. В противном случае перейдите к следующему шагу.

Шаг 3. Изменение зоны WOPI на зону "internal-http"

Если в результате шага 3 была получена зона internal-https, выполните следующую команду, чтобы изменить ее на internal-http. Это изменение необходимо потому, что зона SharePoint Server 2016 должна соответствовать зоне фермы серверов Office Online Server.

Set-SPWOPIZone -zone "internal-http"

Убедитесь, что новая зона является зоной internal-http, выполнив Get-SPWOPIZone еще раз.

Шаг 4. Изменение значения параметра AllowOAuthOverHttp в SharePoint 2016 на True

Чтобы использовать Office Online в SharePoint Server 2016 посредством протокола HTTP в тестовой среде, необходимо установить для параметра AllowOAuthOverHttp значение True. В противном случае Office Online не будет работать. Текущее состояние можно проверить, выполнив следующую команду:

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

Если эта команда возвращает значение False, установите значение True, выполнив следующую команду.

$config = (Get-SPSecurityTokenServiceConfig)
$config.AllowOAuthOverHttp = $true
$config.Update()

Снова выполните следующую команду, чтобы убедиться, что параметр AllowOAuthOverHttp теперь имеет значение True.

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

Шаг 5. Включение API Excel SOAP

API Excel SOAP необходим для обновления данных по расписанию с помощью Excel Online, а также для отображения веб-части Excel. Чтобы включить API Excel SOAP, необходимо добавить свойство WopiLegacySoapSupport в свойства фермы SharePoint Server, используя PowerShell. Входной параметр — URL-адрес файла ExcelServiceInternal.asmx. Этот URL-адрес может обращаться к нескольким серверам OOS посредством балансировки нагрузки. Просто замените <string> на путь Office Online Server.

Чтобы включить API Excel SOAP, выполните указанную ниже команду PowerShell где <URL> — это URL-адрес вашей фермы Office Online Server (например, http://OfficeOnlineServer.contoso.com.).


$Farm = Get-SPFarm
$Farm.Properties.Add("WopiLegacySoapSupport", "<URL>/x/_vti_bin/ExcelServiceInternal.asmx");
$Farm.Update();

Шаг 6. Проверка работы Office Web Apps

В SharePoint Server 2016 убедитесь, что вы не вошли с использованием системной учетной записи, так как вы не сможете редактировать или просматривать документы в Office Online. Перейдите в библиотеку документов SharePoint Server 2016, содержащую документы Office, и откройте файл Word, PowerPoint, Excel или OneNote. Документ должен открыться в браузере, где этот файл должен отображаться с помощью Office Online.

Рабочая среда, которая использует протокол HTTPS

Прежде чем приступить к следующим процедурам, убедитесь, что сервер Office Online Server установлен, выполнив действия из статьи Развертывание фермы Office Online Server, состоящей из одного сервера и поддерживающей HTTPS или Развертывание многосерверной фермы Office Online Server, поддерживающей балансировку нагрузки и протокол HTTPS

Шаг 1. Создание привязки между SharePoint 2016 и Office Online Server

Сначала откройте командную консоль SharePoint 2016 с повышенными привилегиями. (Правой кнопкой мыши щелкните Командная консоль SharePoint 2016 и выберите пункт Запуск от имени администратора.)

Выполните следующую команду, в которой <WacServerName> представляет полное доменное имя URL-адреса, установленного для внутренних URL-адресов. Это точка входа для трафика сервера Office Online Server.


New-SPWOPIBinding -ServerName <WacServerName> 

Шаг 2. Просмотр зоны WOPI SharePoint 2016

Сервер Office Online Server использует зоны для определения, какой URL-адрес (внутренний или внешний) и какой протокол (HTTP или HTTPS) использовать при взаимодействии с узлом, в данном случае с SharePoint Server 2016. По умолчанию SharePoint Server 2016 использует зону internal-https. Убедитесь, что это текущая зона, выполнив следующую команду:

Get-SPWOPIZone

Отметьте, какая зона WOPI отображается.

Шаг 3. Изменение зоны WOPI при необходимости

В зависимости от вашей среды может потребоваться изменить зону WOPI. При использовании фермы SharePoint, которая одновременно является внешней и внутренней, укажите внешнюю ферму. Если используемая ферма SharePoint является только внутренней, укажите внутреннюю зону.

Если в результате шага 2 отображается зона internal-https, а ферма SharePoint только внутренняя, можно пропустить этот шаг. Если ферма SharePoint одновременно является внутренней и внешней, необходимо выполнить указанную ниже команду, чтобы изменить зону на external-https.

Set-SPWOPIZone -zone "external-https"

Шаг 4. Включение API Excel SOAP

API Excel SOAP необходим для обновления данных по расписанию с помощью Excel Online, а также для отображения веб-части Excel. Чтобы включить API Excel SOAP, необходимо добавить свойство WopiLegacySoapSupport в свойства фермы SharePoint Server, используя PowerShell. Входной параметр URL-адрес файла ExcelServiceInternal.asmx. Этот URL-адрес может обращаться к нескольким серверам OOS посредством балансировки нагрузки. Просто замените <string> на путь Office Online Server.

Чтобы включить API Excel SOAP, выполните указанную ниже команду PowerShell где <URL> — это URL-адрес вашей фермы Office Online Server (например, https://OfficeOnlineServer.contoso.com.).


$Farm = Get-SPFarm
$Farm.Properties.Add("WopiLegacySoapSupport", "<URL>/x/_vti_bin/ExcelServiceInternal.asmx");
$Farm.Update();

Шаг 5. Проверка работы Office Web Apps

В SharePoint Server 2016 убедитесь, что вы не вошли с использованием системной учетной записи, так как вы не сможете редактировать или просматривать документы в Office Online. Перейдите в библиотеку документов SharePoint Server 2016, содержащую документы Office, и откройте файл Word, PowerPoint, Excel или OneNote. Документ должен открыться в браузере, где этот файл должен отображаться с помощью Office Online.

Отключение SharePoint Server 2016 от сервера Office Online Server

Если по каким-либо причинам требуется отключить SharePoint Server 2016 от сервера Office Online Server, используйте приведенную ниже команду.


Remove-SPWOPIBinding -All:$true