SharePoint 검색 결과 웹 파트 속성에서 더 이상 로드 동작을 사용할 수 없음
원본 KB 번호: 4052414
요약
SharePoint Server에서 검색 결과 웹 파트의 속성을 설정할 때 로드 동작을 동기 또는 비동기로 설정하여 반환된 검색 결과가 웹 페이지에 표시되는 시기를 지정할 수 있습니다. 동기 로드를 사용하는 경우 사이트는 교차 사이트 검색 공격에 취약해집니다. 웹 페이지가 로드된 후 비동기 로드를 사용하여 브라우저에서 쿼리를 실행하는 것이 좋습니다.
SharePoint Enterprise Server 2016 보안 업데이트에 대한 설명: 2018년 12월 11일, SharePoint Enterprise Server 2013의 보안 업데이트 설명: 2018년 12월 11 일 및 SharePoint Foundation 2010 보안 업데이트 설명: 2018년 12월 11 일 다음과 같은 변경 내용으로 이 취약성을 수정합니다.
- 모든 기존 검색 결과 웹 파트는 비동기 로드를 사용하도록 자동으로 전환됩니다.
- 새로 만든 검색 결과 웹 파트는 모두 비동기 로드를 사용합니다.
- 로딩 동작은 검색 결과 웹 파트 속성 UI(사용자 인터페이스)에서 더 이상 옵션이 아닙니다.
업데이트를 설치한 후에도 로드 동작 옵션을 각 개별 사이트의 UI에 다시 추가할 수 있습니다. 여기서 로드 동작에 대한 기본 설정은 비동기입니다. 이 작업을 수행하려면 이 취약성을 사용자 환경에서 악용할 수 있는지 신중하게 고려하고 웹 파트 소유자에게 이 취약성에 대한 지침을 제공하는 것이 좋습니다.
로드 동작 옵션 추가
SharePoint 사이트의 검색 결과 웹 파트 UI에 로드 동작 옵션을 추가하려면 다음 단계를 수행합니다.
역할이 있는 사용자 계정을 사용하여 로그온합니다
SharePoint_Shell_Access
.SharePoint 팜의 서버 중 하나에서 SharePoint 관리 셸을 시작합니다.
Windows PowerShell 명령 프롬프트에서 다음 명령을 실행합니다.
$sites = Get-SPSite $s = $sites[n] $s.RootWeb.AllowUnsafeUpdates = $true $s.RootWeb.AllProperties.Add("SyncSearchAllowed", 1) $s.RootWeb.Update() $s.RootWeb.AllowUnsafeUpdates = $false
참고
sites[n] 은 지정된 사이트의 자리 표시자입니다.
로드 동작 설정
SharePoint Server 2013 또는 2016에서 로드 동작을 설정하려면 SharePoint Server에서 검색 결과 웹 파트의 속성 구성을 참조하세요. SharePoint Server 2010 Search Core 결과 웹 파트에서 로드 동작을 설정하려면 다음 단계를 수행합니다.
이 절차를 수행하는 사용자 계정이 Designers 그룹의 구성원인지 확인합니다.
검색 결과 페이지에서 사이트 작업 메뉴를 클릭한 다음 페이지 편집을 클릭합니다. 검색 결과 페이지가 편집 모드로 열립니다.
핵심 결과 검색 웹 파트에서 화살표를 클릭한 다음 메뉴에서 웹 파트 편집 을 선택합니다.
AJAX 옵션에서 옵션을 선택하여 웹 파트에서 반환된 검색 결과가 웹 페이지에 표시되는 시기를 확인합니다.
기본적으로 비동기 로드 사용 확인란이 선택되어 있으며 전체 페이지를 받은 후 최종 사용자의 브라우저에서 쿼리가 실행됩니다. 비동기 로드 사용 상자를 선택 취소하면 서버에서 쿼리가 실행되고 검색 결과가 SharePoint에서 다시 전송되는 페이지 응답에 포함됩니다.
로드 동작 옵션 제거
SharePoint 사이트의 검색 결과 웹 파트 UI에서 로드 동작 옵션을 제거하려면 다음 단계를 수행합니다.
역할이 있는 사용자 계정을 사용하여 로그온합니다
SharePoint_Shell_Access
.SharePoint 팜의 서버 중 하나에서 SharePoint 관리 셸을 시작합니다.
Windows PowerShell 명령 프롬프트에서 다음 명령을 실행합니다.
$sites = Get-SPSite $s = $sites[n] $s.RootWeb.AllowUnsafeUpdates = $true $s.RootWeb.AllProperties.Remove("SyncSearchAllowed") $s.RootWeb.Update() $s.RootWeb.AllowUnsafeUpdates = $false
참고
sites[n] 은 지정된 사이트의 자리 표시자입니다.