SharePoint Server용 Office Online Server 구성

요약: Office Online Server(다음 버전의 Office Web Apps Server)를 사용하도록 SharePoint Server를 구성하는 방법을 알아봅니다.

대상: IT 전문가

이 문서에서는 배포 Office Online Server 중단된 위치를 선택합니다. 또한 온-프레미스에서 Office Online Server를 실행하는 서버를 설정하고, Office Online Server를 사용하도록 SharePoint Server 2016을 구성합니다. 이 항목에서는 Office Online Server 사용하도록 SharePoint Server를 구성합니다. 먼저 SharePoint Server 2016에서 몇 가지 Microsoft PowerShell cmdlet을 실행해야 하며, 그 후에는 사용자가 브라우저의 SharePoint Server 문서 라이브러리에서 Office 파일을 열 수 있습니다.

Office Online Server를 사용하도록 SharePoint Server를 구성하기 전에

시작하기 전에 확인해야 할 사항

  • 이러한 지침은 SharePoint Server 2013에도 적용되지만 SharePoint Server 2013은 Office Online Server Excel Online 외부 데이터 연결 및 데이터 새로 고침 기능을 사용할 수 없습니다.

  • SharePoint Server 2016를 설치합니다. 지침 은 SharePoint Server 설치 를 참조하세요.

  • 모든 SharePoint Server 2016 웹 응용 프로그램이 클레임 기반 인증을 사용하는지 확인합니다. Office Online 렌더링 및 편집 기능은 클래식 모드 인증을 사용하는 SharePoint Server 2016 웹 응용 프로그램에서 작동하지 않습니다.

  • 사용자가 웹 브라우저에서 Office 문서를 편집할 수 있도록 하려면(단지 읽는 것만이 아님) 편집 라이선스가 필요합니다. Office Online Server 팜에서 편집을 사용하도록 설정해야 합니다.

  • 시스템 계정을 사용하여 SharePoint Server 2016에 로그온하는 경우 SharePoint Server 2016과 Office Online Server 간의 연결을 테스트할 수 없습니다. 그러므로 연결을 테스트하려면 다른 계정을 사용하여 로그온합니다.

  • 메모리 부족 상태로 인해 Office Online에서 Office 문서 미리 보기가 실패할 수 있습니다.

  • SharePoint Server 2013은 Office Online Server Excel Online 외부 데이터 연결 및 데이터 새로 고침 기능을 사용할 수 없습니다. SharePoint Server 2016에서만 사용할 수 있습니다.

  • Office Online Server OAuth 토큰을 사용하여 SharePoint Server와 통신합니다. 이러한 토큰은 잠재적으로 가로채고 재생할 수 있으며, SharePoint Server에서 Office Online Server 요청을 하는 사용자와 동일한 권한을 공격자에게 제공할 수 있습니다. TLS(HTTPS)만 사용하도록 Office Online Server 구성하는 것이 좋습니다.

Office Online Server를 사용하도록 SharePoint Server 구성

HTTP를 사용할지, HTTPS를 사용할지에 따라 다음 섹션 중 하나를 선택합니다. HTTP는 일반적으로 테스트 환경에서만 권장됩니다. 프로덕션 환경에서는 안전성이 향상된 HTTPS 프로토콜을 사용하는 것이 더 바람직합니다.

HTTP를 사용하는 테스트 환경

이 구성의 경우 HTTP를 사용하는 단일 서버 Office Online Server 팜 배포의 단계에 따라 Office Online Server 설정했는지 확인합니다. Office Online Server 팜은 내부 URL 및 HTTP를 사용하도록 구성해야 합니다.

1단계: SharePoint 2016과 Office Web Apps 서버 간에 바인딩 만들기

시작하려면 관리자 권한의 SharePoint 2016 관리 셸을 엽니다. SharePoint 2016 관리 셸을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행을 클릭합니다.

다음 명령을 실행합니다. 여기서 <WacServerName> 은 내부 URL에 대해 설정한 URL의 FQDN(정규화된 도메인 이름)입니다. Office Online Server 트래픽에 대한 진입점입니다. 이 테스트 환경의 경우 SharePoint Server 2016이 HTTP를 사용하여 Office Online Server 팜에서 검색 정보를 받을 수 있도록 -AllowHTTP 매개 변수를 지정해야 합니다. -AllowHTTP를 지정하지 않으면 SharePoint Server 2016에서 HTTPS를 사용하여 Office Online Server 팜과 통신하려고 시도하며 이 명령은 작동하지 않습니다.


New-SPWOPIBinding -ServerName <WacServerName> -AllowHTTP

이 명령을 실행하면 Microsoft PowerShell 명령 프롬프트에 바인딩 목록이 표시됩니다.

2단계: SharePoint 바인딩에 대한 WOPI 영역 확인

Office Online Server에서는 영역을 사용하여 호스트(이 경우 SharePoint Server 2016)와 통신할 때 사용할 URL(내부/외부) 및 프로토콜(HTTP/HTTPS)을 결정합니다. 기본적으로 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"

Get-SPWOPIZone을 다시 실행하여 새 영역이 internal-http인지 확인합니다.

4단계: SharePoint 2016에서 AllowOAuthOverHttp 설정을 True로 변경

테스트 환경에서 HTTP를 통해 SharePoint Server 2016과 함께 Office Online를 사용하려면 AllowOAuthOverHttp를 True로 설정해야 합니다. 그렇지 않으면 Office Online가 작동하지 않습니다. 다음 예제를 실행하여 현재 상태를 확인할 수 있습니다.

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

이 명령이 False를 반환하면 다음 명령을 실행하여 True로 설정합니다.

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

다음 명령을 다시 실행하여 AllowOAuthOverHttp 설정이 현재 True로 설정되어 있는지 확인합니다.

(Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp

5단계: Excel SOAP API 사용

Excel Online을 사용한 예약된 데이터 새로 고침 및 Excel 웹 파트 렌더링을 위해 Excel SOAP API가 필요합니다. Excel SOAP API를 사용하도록 설정하려면 PowerShell을 사용하여 SharePoint Server 팜 속성에 WopiLegacySoapSupport 속성을 추가해야 합니다. 입력 매개 변수는 ExcelServiceInternal.asmx의 URL입니다. 이 URL은 부하 분산을 통해 여러 OOS 서버를 처리할 수 있습니다. 문자열>을 <Office Online Server 경로로 바꾸기만 하면 됩니다.

Excel SOAP API를 사용하도록 설정하려면 URL이 Office Online Server 팜의 URL인 <> 다음 PowerShell을 실행합니다. (예: 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로 문서를 편집하거나 볼 수 없으면 시스템 계정으로 로그온되어 있지는 않은지 확인합니다. Office 문서가 포함된 SharePoint Server 2016 문서 라이브러리로 이동하여 Word, PowerPoint, Excel 또는 OneNote 파일을 확인합니다. 해당 문서가 Office Online를 사용하여 파일을 표시하는 브라우저에서 열려야 합니다.

HTTPS를 사용하는 프로덕션 환경

다음 절차를 시작하기 전에 HTTPS를 사용하는 단일 서버 Office Online Server 팜 배포 또는 HTTPS 사용하는 다중 서버 부하 분산 Office Online Server 팜 배포의 단계에 따라 Office Online Server 설정했는지 확인합니다.

1단계: SharePoint 2016과 Office Online Server 간에 바인딩 만들기

시작하려면 관리자 권한의 SharePoint 2016 관리 셸을 엽니다. SharePoint 2016 관리 셸을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행을 클릭합니다.

다음 명령을 실행합니다. 여기서 <WacServerName> 은 내부 URL에 대해 설정한 URL의 FQDN(정규화된 도메인 이름)입니다. Office Online Server 트래픽에 대한 진입점입니다.


New-SPWOPIBinding -ServerName <WacServerName> 

2단계: SharePoint 2016의 WOPI 영역 확인

Office Online Server에서는 영역을 사용하여 호스트(이 경우 SharePoint Server 2016)와 통신할 때 사용할 URL(내부/외부) 및 프로토콜(HTTP/HTTPS)을 결정합니다. 기본적으로 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단계: Excel SOAP API 사용

Excel Online을 사용한 예약된 데이터 새로 고침 및 Excel 웹 파트 렌더링을 위해 Excel SOAP API가 필요합니다. Excel SOAP API를 사용하도록 설정하려면 PowerShell을 사용하여 SharePoint Server 팜 속성에 WopiLegacySoapSupport 속성을 추가해야 합니다. 입력 매개 변수는 ExcelServiceInternal.asmx의 URL입니다. 이 URL은 부하 분산을 통해 여러 OOS 서버를 처리할 수 있습니다. 문자열>을 <Office Online Server 경로로 바꾸기만 하면 됩니다.

Excel SOAP API를 사용하도록 설정하려면 URL이 Office Online Server 팜의 URL인 <> 다음 PowerShell을 실행합니다. (예: 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로 문서를 편집하거나 볼 수 없으면 시스템 계정으로 로그온되어 있지는 않은지 확인합니다. Office 문서가 포함된 SharePoint Server 2016 문서 라이브러리로 이동하여 Word, PowerPoint, Excel 또는 OneNote 파일을 확인합니다. 해당 문서가 Office Online를 사용하여 파일을 표시하는 브라우저에서 열려야 합니다.

Office Online Server에서 SharePoint Server 2016 연결 끊기

어떤 이유로든 Office Online Server에서 SharePoint Server 2016 연결을 끊으려면 다음 명령 예제를 사용합니다.


Remove-SPWOPIBinding -All:$true