Triệu chứng
Phần Web phụ thuộc vào WPProperty có thể không còn hoạt động đúng cách và tạo thẻ sự kiện a7wm1 trong nhật ký Hệ thống Ghi nhật ký Hợp nhất SharePoint (ULS).
Nguyên nhân
Sự cố này xảy ra vì SharePoint Server hiện yêu cầu các cụm máy chủ phải khai báo các loại .NET được phép truy nhập WPProperty trong tệp web.config mình. Các loại .NET không được liệt kê sẽ không có quyền truy cập vào WPProperty để phòng ngừa bảo mật.
Giải pháp
Để giải quyết sự cố này, hãy cài đặt một trong các bản cập nhật sau:
- Mô tả về bản cập nhật bảo mật SharePoint Server 2019: ngày 14 tháng 9 năm 2021 (KB5002018)
- Mô tả về bản cập nhật bảo mật cho SharePoint Enterprise Server 2016: ngày 8 tháng 6 năm 2021 (KB5001946)
- Mô tả về bản cập nhật bảo mật cho SharePoint Foundation 2013: ngày 14 tháng 9 năm 2021 (KB5002024)
Để Phần Web hoạt động như mong đợi, hãy thực hiện các bước sau để khai báo (các) loại .NET bị ảnh hưởng như được phép truy nhập WPProperty trong tệp web.config động.
Quan trọng
Chỉ cho phép các loại .NET truy cập WPProperty sau khi bạn đã xác nhận rằng nó là an toàn để làm như vậy.
Mở tệp web.config ứng dụng web của bạn trên mỗi máy chủ trong cụm máy chủ SharePoint của bạn.
Tìm phần cấu hình/SharePoint/SafeMode .
Thêm mục AllowedWPProperties nếu nó chưa tồn tại.
Thêm một phần tử AllowedWPProperty mới với thuộc tính type và propertyName để đại diện cho loại được phép truy nhập WPProperty.
<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="15" TotalFileDependencies="250" AllowPageLevelTrace="false">
<AllowedWPProperties>
<AllowedWPProperty type="<allowedWPPropertyTypeName>,<allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" propertyName="<Allow WPProperty property name>"/>
</AllowedWPProperties>
</SafeMode>Lưu thay đổi vào tệp web.config của bạn.
Để xác định các giá trị chính xác cho các thuộc tính loại và propertyName, truy vấn nhật ký ULS cho thẻ sự kiện a7wm1 và lưu ý mục nhật ký. Ví dụ:
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
Để cho phép loại này truy nhập WPProperty, hãy đặt thuộc tính loại AllowedWPPProperty cho giá trị của AssemblyQualifiedName bị chặn và đặt thuộc tính propertyName thành giá trị tên thuộc tính bị chặn.
Lịch sử thay đổi
Bảng sau đây tóm tắt một số thay đổi quan trọng nhất đối với chủ đề này.
| Ngày | Mô tả |
|---|---|
| 14/9/2021 | Đã thêm hai bản cập nhật vào mục "Giải pháp". |