Triệu chứng
Sau khi bạn cài đặt một trong các bản Cập Nhật sau đây, một số trang ghosted trong Microsoft SharePoint không hiển thị:
-
Mô tả về bản Cập Nhật bảo mật cho SharePoint Server 2019:8 tháng 9, 2020 (KB 4484505)
-
21 tháng 9, 2020, Cập Nhật cho SharePoint Server 2019 (KB4461512)
-
Mô tả về bản Cập Nhật bảo mật cho SharePoint Enterprise Server 2016:8 tháng chín, 2020 (KB 4484506)
-
Mô tả về bản Cập Nhật bảo mật cho SharePoint Foundation 2013:8 tháng chín, 2020 (KB 4484525)
-
Mô tả về bản Cập Nhật bảo mật cho SharePoint Foundation 2010:8 tháng chín, 2020 (KB 4486667)
Ví dụ, các trang cổng thông tin Microsoft Identity Manager (MIM) và một số trang tùy chỉnh được triển khai thông qua giải pháp SharePoint không hiển thị.
Ngoài ra, bạn có thể gặp một hoặc nhiều kịch bản sau đây.
Tình huống 1
Trang bị chặn ghosted sẽ hiển thị một trong các thông báo lỗi sau đây:
-
Thuộc tính ' tự động ' reup ' không được phép trong trang này.
-
Thuộc tính ' enablesessionstate ' không được phép trong trang này.
-
Các khối mã không được phép dùng trong tệp này.
-
Trình xử lý sự kiện ' Onselectedindexđã thay đổi ' không được phép trong trang này.
Ghi chú Sự kiện trong thông báo lỗi cuối cùng cũng có thể là một số sự kiện khác, chẳng hạn như "OnClick".
Kịch bản 2
Trang bị chặn ghosted sẽ hiển thị thông báo lỗi sau đây:
Unsafegiải quyết: một phần web hoặc điều khiển biểu mẫu web trên Trang này không thể hiển thị hoặc được nhập vào. Không thể tìm thấy kiểu hoặc không đăng ký là an toàn.
Kịch bản 3
Trang bị chặn ghosted sẽ hiển thị thông báo lỗi sau đây:
Tệp được tham chiếu '/_layouts/somedirectory/affemtedusercontrol.ascx ' không được phép dùng trên Trang này.
Nguyên nhân
Trang ghosted được lưu trữ trong hệ thống tệp. Mức độ bảo mật của họ được nâng cao bởi các kịch bản bên cạnh máy chủ và các điều khiển không an toàn. Trang ghosted có thể bị chặn không cho kết quả là nếu các điều kiện sau đây là đúng:
-
Trang ghosted chứa mã vạch trong dòng hoặc script phía máy chủ.
-
Kiểu mã hoặc phần web không được đăng ký là an toàn.
Giải pháp kịch bản 1
Để giải quyết vấn đề này, hãy thêm một thành phần Pageparserpath mới có thuộc tính virtualpath vào tệp Web.config bên dưới phần cấu hình/SharePoint/safeparserpaths .
Ví dụ, bạn nhận được thông báo lỗi sau đây:
"Thuộc tính ' autoeventwireup ' không được phép vào trang này."
Trong trường hợp này, bạn có thể thêm thành phần Pageparserpath , như sau:
<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="15" TotalFileDependencies="250" AllowPageLevelTrace="false">
<PageParserPaths>
<PageParserPath VirtualPath="/<relativepath>/page.aspx" CompilationMode="Always" AllowServerSideScript="true" AllowUnsafeControls="true"/>
</PageParserPaths>
</SafeMode>
Nếu tất cả các trang trong cùng một thư mục ảo sẽ không bị chặn, bạn có thể sử dụng một thành phần Pageparserpath như sau:
<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="15" TotalFileDependencies="250" AllowPageLevelTrace="false">
<PageParserPaths>
<PageParserPath VirtualPath="/<relativepath>/*" CompilationMode="Always" AllowServerSideScript="true" AllowUnsafeControls="true" IncludeSubFolders="True"/>
</PageParserPaths>
</SafeMode>
-
Virtualpath là đường dẫn của trang bị chặn.
-
Virtualpath phải tham chiếu đến một trang được ghosted và không thể được bỏ lưu trữ bởi người dùng bất kỳ hoặc một thư mục có chứa một trang đó.
-
Virtualpath phải tham chiếu đến một trang không tham chiếu đến một trang khác hoặc một trang chính có thể được rã nhóm hoặc một thư mục không chứa trang hoặc trang chính.
-
Directfilephụ thuộc cho biết số lượng các thuộc quyền tệp trực tiếp. Nếu bạn nhận được một thông báo lỗi, chẳng hạn như "số lượng tệp trực tiếp thuộc tính hợp nhất vượt quá giới hạn", thay đổi giá trị này.
Giải pháp kịch bản 2
Để giải quyết vấn đề này, hãy thêm một thành phần điều khiển bảo mật mới cho kiểu, không gian tên đã cho, và lắp ráp tên mạnh vào tệp Web.config bên dưới phần tử cấu hình/SharePoint/safecontrols , như được mô tả trong phần tử điều khiển Safe(giải pháp). Sau đó, đặt thuộc tính an toàn thành True.
Để biết thêm thông tin về định dạng các giá trị thuộc tính trong thành phần điều khiển bảo vệ, hãy tham khảo bảng trong bước 12 trong điều khiển kiểm tra an toàn trong phần "trình thiết kế gói" cách: đánh dấu điều khiển như điều khiển an toàn.
Giải pháp cho kịch bản 3
Để giải quyết vấn đề này, hãy thêm một thành phần điều khiển safemới sử dụng thuộc tính Src vào tệp Web.config dưới phần cấu hình/SharePoint/safecontrols .
Ví dụ, bạn nhận được thông báo lỗi sau đây:
"Tệp được tham chiếu '/_layouts/somedirectory/affemtedusercontrol.ascx ' không được phép dùng trên Trang này."
Trong trường hợp này, bạn có thể thêm các yếu tố điều khiển không an toàn, như trong các ví dụ sau đây:
< SafeControls>
<SafeControl Src="~/_layouts/somedirectory/*" IncludeSubFolders="True" Safe="True" AllowRemoteDesigner="True" SafeAgainstScript="True" />
</SafeControls>
< SafeControls> <SafeControl src = "~/_layouts/somedirectory/*" IncludeSubFolders = "True" an toàn = "True"/> </safecontrols>