Configurar Office Online Server para SharePoint Server

Resumen: Obtenga información sobre cómo configurar SharePoint Server para que use Office Online Server (la siguiente versión de Office Web Apps Server).

Audiencia: profesionales de TI

En este artículo se recoge dónde se ha dejado Implementar Office Online Server. En ese artículo, se configura el servidor que ejecuta Office Online Server local. En este, configurará SharePoint Server para que use Office Online Server. En primer lugar, deberá ejecutar algunos cmdlets de PowerShell de Microsoft desde SharePoint Server 2016, después de lo cual los usuarios podrán abrir archivos de Office desde bibliotecas de documentos de SharePoint Server en un explorador.

Antes de configurar SharePoint Server para usar Office Online Server

Algunas cosas que debe comprobar antes de empezar:

  • Estas instrucciones también se aplican a SharePoint Server 2013, pero SharePoint Server 2013 no puede usar la funcionalidad de actualización de datos y conectividad de datos externos de Excel Online en Office Online Server.

  • Instale SharePoint Server 2016. Vea Instalar SharePoint Server para obtener instrucciones.

  • Asegúrese de que todas las aplicaciones web de SharePoint Server 2016 usan la autenticación basada en notificaciones. En las aplicaciones web de SharePoint Server 2016 que usan la autenticación de modo clásico, no funcionarán ni la edición ni la representación de Office Online.

  • Para permitir que los usuarios editen (no solo lean) documentos de Office en un explorador web, necesitará una licencia de edición. Además, necesitará habilitar la edición en la granja de Office Online Server.

  • Si inicia sesión en SharePoint Server 2016 con la cuenta del sistema, no podrá probar la conexión entre SharePoint Server 2016 y Office Online Server. Si desea hacerlo, inicie sesión con otra cuenta.

  • Las condiciones de memoria insuficiente pueden provocar errores de vista previa de documentos de Office en Office Online.

  • SharePoint Server 2013 no puede usar la funcionalidad de actualización de datos y conectividad de datos externos de Excel Online en Office Online Server. Solo está disponible con SharePoint Server 2016.

  • Office Online Server usa tokens OAuth para comunicarse con SharePoint Server. Estos tokens pueden interceptarse y reproducirse potencialmente, lo que proporciona a un atacante los mismos derechos que el usuario que realiza la solicitud de SharePoint Server a Office Online Server. Se recomienda encarecidamente configurar Office Online Server solo para usar HTTPS (TLS).

Configurar SharePoint Server para usar Office Online Server

Elija una de las secciones siguientes, en función de si desea usar HTTP o HTTPS. HTTP se suele recomendar únicamente para entornos de prueba. En entornos de producción, el protocolo HTTPS más seguro es la mejor opción.

En un entorno de prueba que usa HTTP

Para esta configuración, asegúrese de que ha configurado Office Online Server siguiendo los pasos sobre cómo Implementar una granja de un solo servidor de Office Online Server que usa HTTP. Asegúrese de configurar la granja de Office Online Server para que use HTTP y una dirección URL interna.

Paso 1: crear el enlace entre SharePoint 2016 y Office Web Apps Server

Para comenzar, abra un shell de administración de SharePoint 2016 con privilegios elevados. (Haga clic con el botón derecho en Shell de administración de SharePoint 2016 y, después, haga clic en Ejecutar como administrador).

Ejecute el comando siguiente, donde es el nombre de dominio completo (FQDN) de la dirección URL que ha establecido como URL interna. Este será el punto de entrada para el tráfico de Office Online Server. En este entorno de prueba, debe especificar el parámetro -AllowHTTP para que SharePoint Server 2016 pueda recibir la información de detección de la granja de servidores de Office Online Server con HTTP. Si no lo hace, SharePoint Server 2016 intentará usar HTTPS para comunicarse con la granja de servidores de Office Online Server, y el comando no funcionará.


New-SPWOPIBinding -ServerName <WacServerName> -AllowHTTP

Después de ejecutar este comando, verá una lista de enlaces en el símbolo del sistema de PowerShell de Microsoft.

Paso 2: ver las zonas WOPI para los enlaces de SharePoint

Office Online Server usa zonas para determinar la dirección URL (interna o externa) y el protocolo (HTTP o HTTPS) que deben usarse para establecer la comunicación con el host, en este caso, SharePoint Server 2016. La zona predeterminada que usa SharePoint Server 2016 es internal-https. Ejecute el siguiente comando para ver su zona actual.

Get-SPWOPIZone

La zona WOPI mostrada por este comando debe ser internal-http. Si se muestra correctamente, vaya al paso 4. De lo contrario, vea el siguiente paso.

Paso 3: cambiar la zona WOPI a internal-http

Si el resultado del paso 3 es internal-https, ejecute el comando siguiente para cambiar la zona a internal-http. Este cambio es imprescindible, ya que las zonas de SharePoint Server 2016 y de la granja de servidores de Office Online Server deben coincidir.

Set-SPWOPIZone -zone "internal-http"

Para comprobar que la nueva zona es internal-http, vuelva a ejecutar Get-SPWOPIZone.

Paso 4: cambiar el valor AllowOAuthOverHttp a True en SharePoint 2016

Si desea usar Office Online con SharePoint Server 2016 sobre HTTP en un entorno de prueba, establezca AllowOAuthOverHttp en True. De lo contrario, Office Online no funcionará. Para comprobar el estado actual, ejecute el ejemplo siguiente.

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

Si este comando devuelve False, ejecute los comandos siguientes para establecerlo en True.

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

Ejecute de nuevo el comando siguiente para comprobar que el valor AllowOAuthOverHttp ya se encuentra establecido en True.

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

Paso 5: habilitar la API de SOAP de Excel

Se necesita la API de SOAP de Excel para la actualización de datos programados con Excel Online y para la representación del elemento web de Excel. Para habilitar la API de SOAP de Excel, necesita agregar la propiedad WopiLegacySoapSupport a las propiedades de la granja de SharePoint Server mediante PowerShell. El parámetro de entrada es la dirección URL para ExcelServiceInternal.asmx. Esta dirección URL puede referirse a varios servidores OOS mediante el equilibrio de carga. Simplemente reemplace por la ruta de acceso de Office Online Server.

Para habilitar la API soap de Excel, ejecute el siguiente PowerShell donde está la dirección URL de la granja de servidores de Office Online Server. (Por ejemplo, http://OfficeOnlineServer.contoso.com.)


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

Paso 6: comprobar que Office Web Apps está funcionando

En SharePoint Server 2016, asegúrese de que no ha iniciado sesión en la cuenta del sistema, ya que no podrá editar ni ver documentos con Office Online. Vaya a una biblioteca de documentos de SharePoint Server 2016 que contenga documentos de Office y vea un archivo de Word, PowerPoint, Excel u OneNote. El documento debe abrirse en un explorador que muestre el archivo con Office Online.

En un entorno de producción que usa HTTPS

Antes de iniciar los procedimientos siguientes, realice los pasos de los temas sobre cómo Implementar una granja de un solo servidor de Office Online Server que usa HTTPS o sobre cómo Implementar una granja de varios servidores y de carga equilibrada de Office Online Server que usa HTTPS para comprobar que ha configurado Office Online Server.

Paso 1: crear el enlace entre SharePoint 2016 y Office Online Server

Para comenzar, abra un shell de administración de SharePoint 2016 con privilegios elevados. (Haga clic con el botón derecho en Shell de administración de SharePoint 2016 y, después, haga clic en Ejecutar como administrador).

Ejecute el comando siguiente, donde es el nombre de dominio completo (FQDN) de la dirección URL que ha establecido como URL interna. Este será el punto de entrada para el tráfico de Office Online Server.


New-SPWOPIBinding -ServerName <WacServerName> 

Paso 2: ver la zona WOPI de SharePoint 2016

Office Online Server usa zonas para determinar la dirección URL (interna o externa) y el protocolo (HTTP o HTTPS) que deben usarse para establecer la comunicación con el host, en este caso, SharePoint Server 2016. La zona predeterminada que usa SharePoint Server 2016 es internal-https. Para comprobar que esta es la zona activa, ejecute el comando siguiente.

Get-SPWOPIZone

Anote la zona WOPI que aparece.

Paso 3: cambiar la zona WOPI si es necesario

En función del entorno, es posible que deba cambiar la zona WOPI. Si la granja de servidores de SharePoint es tanto interna como externa, especifique que es externa. Si solo es interna, especifíquelo.

Si el resultado del paso 2 es internal-https y la granja de servidores de SharePoint es solo interna, puede omitir este paso. Si la granja es interna y externa, ejecute el comando siguiente para cambiar la zona a external-https.

Set-SPWOPIZone -zone "external-https"

Paso 4: habilitar la API de SOAP de Excel

Se necesita la API de SOAP de Excel para la actualización de datos programados con Excel Online y para la representación del elemento web de Excel. Para habilitar la API de SOAP de Excel, necesita agregar la propiedad WopiLegacySoapSupport a las propiedades de la granja de SharePoint Server mediante PowerShell. El parámetro de entrada es la dirección URL para ExcelServiceInternal.asmx. Esta dirección URL puede referirse a varios servidores OOS mediante el equilibrio de carga. Simplemente reemplace por la ruta de acceso de Office Online Server.

Para habilitar la API soap de Excel, ejecute el siguiente PowerShell donde está la dirección URL de la granja de servidores de Office Online Server. (Por ejemplo, https://OfficeOnlineServer.contoso.com.)


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

Paso 5: comprobar que Office Web Apps está funcionando

En SharePoint Server 2016, asegúrese de que no ha iniciado sesión en la cuenta del sistema, ya que no podrá editar ni ver documentos con Office Online. Vaya a una biblioteca de documentos de SharePoint Server 2016 que contenga documentos de Office y vea un archivo de Word, PowerPoint, Excel u OneNote. El documento debe abrirse en un explorador que muestre el archivo con Office Online.

Desconectar SharePoint Server 2016 de Office Online Server

Si por cualquier motivo quiere desconectar SharePoint Server 2016 de Office Online Server, use el siguiente ejemplo de comando.


Remove-SPWOPIBinding -All:$true