ייתכן שרכיבי Web Part התלויים ב- WPProperty לא יפעלו עוד כראוי ב- SharePoint Server (KB5003528)

חל על
SharePoint Server 2016 SharePoint Server 2019 SharePoint Foundation 2013 SP1

סימפטומים

ייתכן ש- Web Part שת תלוי ב- WPProperty לא יפעל עוד כראוי ויפיק תגי אירוע a7wm1 ביומני מערכת הרישום המאוחדת (ULS) של SharePoint.

גורם

בעיה זו מתרחשת מאחר ש- SharePoint Server דורש כעת מחוות להצהיר על סוגי .NET המורשים לגשת ל- WPProperty בקובץ ה- web.config. לסוגי .NET שאינם מופיעים לא תהיה גישה ל- WPProperty כאמצעי אבטחה.

פתרון

כדי לפתור בעיה זו, התקן אחד מהעדכונים הבאים:

כדי לגרום ל- Web Part לפעול כצפוי, בצע את השלבים הבאים כדי להצהיר על סוגי .NET המושפעים כפי שהם מורשים לגשת ל- WPProperty בקובץ ה- web.config.

חשוב

אפשר לסוגי .NET לגשת ל- WPProperty רק לאחר שתאשר כי ניתן לעשות זאת בצורה בטוחה.

  1. פתח את web.config של יישום האינטרנט שלך בכל שרת בחוות SharePoint שלך.

  2. חפש את המקטע configuration/SharePoint/SafeMode .

  3. הוסף מקטע AllowedWPProperties אם הוא לא קיים כבר.

  4. הוסף רכיב AllowedWPProperty חדש עם תכונות type ו- propertyName כדי לייצג את הסוג שיש להשתמש בו כדי לגשת ל- 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 , בצע שאילתה ביומן הרישום של ULS עבור תג האירוע a7wm1 ורשום את ערך יומן הרישום. לדוגמה:
 
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
 
כדי לאפשר לסוג זה לגשת ל- WPProperty, הגדר את התכונה AllowedWPPProperty לערך של AssemblyQualifiedName החסומים והגדר את התכונה propertyName לערך שם המאפיין החסומים.

שינוי ההיסטוריה

הטבלה הבאה מסכמת חלק מהשינויים החשובים ביותר בנושא זה.

תאריך תיאור
14 בספטמבר 2021 נוספו שני עדכונים במקטע "פתרון".