현상
다음의 업데이트 중 하나를 설치한 후, 몇몇 SharePoint 페이지가 렌더링하지 않고, 다음과 같은 오류 메시지를 생성합니다.
웹 파트 오류: 이 페이지의 웹 파트 또는 웹 양식 컨트롤은 표시하거나 가져올 수 없습니다. 해당 종류를 찾을 수 없거나 안전하다고 등록되지 않았습니다.
원인
업데이트 설치 후 ASP.NET 컨트롤의 허용 목록이 SharePoint 2010 및 SharePoint 2013에서 적용됩니다. SharePoint 페이지의 웹 파트 또는 컨트롤이 이 허용 목록에 추가되어 있지 않다면, 그 페이지는 렌더링하지 않습니다.
해결 방법
SafeControls 목록에 없는 컨트롤을 사용해서 그 페이지가 더 이상 렌더링하지 않는다면, 다음의 단계를 따르세요.
-
다음 SharePoint ULS(통합 로깅 서비스) 로그를 검토하여 컨트롤이 차단되었음을 나타내는 "속성으로 컨트롤 차단 중"을 포함하는 9s9ay 태그 또는 메시지를 찾습니다.
-
오류 메시지에서 형식, 네임스페이스, 어셈블리의 강력한 이름을 식별합니다.
-
예제 1
다음과 같은 오류 메시지가 나타납니다.
"Contoso.Customizations.WebPartControl, Contoso.WebParts, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = b03f5f8f11d50a3a 형식을 찾을 수 없거나 안전한 것으로 등록되지 않았습니다.”
형식 = "WebPartControl”
네임스페이스 = "Contoso.Customizations”
어셈블리 강력 이름 = "Contoso.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f8f11d50a3a”-
예제 2
다음과 같은 오류 메시지가 나타납니다.
“속성 통과 마크업으로 컨트롤 차단 중. [tagName: SharePoint:WebPartControl][propName: propName1][type: typeName1]"
형식 = "WebPartControl” ("typeName1” 아님)
네임스페이스 및 어셈블리 데이터는 Microsoft Docs에서 형식 이름을 쿼리함으로써 찾을 수 있습니다. -
-
지정된 형식, 네임스페이스 및 어셈블리 강력한 이름에 대한 새 SafeControls 요소를 SafeControls 요소 (솔루션)에 설명된대로 configuration/SharePoint/SafeControls 요소 아래의 Web.config 파일에 추가한 다음 안전 특성을 TRUE로 설정합니다.
SafeControls 요소의 속성 값의 형식에 관한 더 자세한 정보는 Package Designer에서 Safe Controls 만들기 12단계의 표를 참조하세요.
해결 방법
안전하지 않은 컨트롤을 많이 갖고 있다면 다음 단계를 통해 이 문제를 해결할 수 있습니다.
-
configuration/SharePoint 요소 아래의 Web.config 파일에서 SafeMode 요소를 편집합니다.
-
True 값을 가진 ControlCompatMode 속성을 추가합니다.
주의
안전하지 않은 ASP.net 컨트롤 실행을 허용하기 때문에 당사는 이 해결 방법을 추천하지 않습니다.
Content Idea Request: CONTENT IDEA REQUEST 120896
Author: secure
Writer: v-weizhu
Tech Reviewer: qingliu; gli; mswann
Editor: v-jesits