徵兆

依存於 WPProperty 的 Web 組件可能無法正常運作,並在 SharePoint 統一登入系統 (ULS) 記錄中產生 a7wm1 事件標記。

原因

發生此問題的原因是 SharePoint Server 現在要求伺服器陣列宣告允許在 web.config 檔案中存取 WPProperty 的 .NET 類型。 作為安全性防範措施,未列出的 .NET 類型無法存取 WPProperty

解決方案

若要解決這個問題,請安裝下列更新之一:

若要使 Web 組件按預期正常運作,請執行下列步驟,宣告允許受影響的 .NET 類型存取 web.config 檔案中的 WPProperty

重要: 只有在確認 NET 類型安全之後,才可允許其存取 WPProperty

  1. 在 SharePoint 伺服器陣列中的各個伺服器中,打開您網頁應用程式的 web.config 檔案。

  2. 尋找 configuration/SharePoint/SafeMode 區段。

  3. 如果不存在 AllowedWPProperties 區段,請新增該區段。

  4. 新增具有 type propertyName 屬性的新 AllowedWPProperty 元素,以代表應允許存取 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>

  5. 將此變更儲存到 web.config 檔案。

若要識別 type propertyName 屬性的正確數值,請查詢 a7wm1 事件標記的 ULS 記錄,並記下記錄項目。 例如:
 
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
 
若要允許此類型可存取 WPProperty,請將 AllowedWPPProperty 的 type 屬性設定為封鎖的 AssemblyQualifiedName 值,然後將 propertyName 屬性設定為封鎖的屬性名稱值。

變更歷程記錄

 下表摘要說明本主題的一些最重要變更。

日期

描述

2021 年 9 月 14 日

在「方案」部分新增了兩個更新。

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×