Symptomer
Når du har installeret en af følgende opdateringer, gengives nogle af de udspegende sider i Microsoft SharePoint ikke:
-
Opdatering for 21. september 2020 til SharePoint Server 2019 (KB4461512)
-
SharePoint Enterprise Server 2016: 8. september 2020 (KB 4484506)
Eksempelvis gengives sider på Microsoft Identity Manager-portalen (MIM) og nogle brugerdefinerede sider, der er installeret via SharePoint-løsning, ikke.
Desuden kan du opleve et eller flere af følgende scenarier.
Scenarie 1
Den blokerede udvisede side viser en af følgende fejlmeddelelser:
-
Attributten "autoeventrup" er ikke tilladt på denne side.
-
Attributten 'enablesessionstate' er ikke tilladt på denne side.
-
Kodeblokke er ikke tilladt i denne fil.
-
Hændelseshandleren 'OnSelectedIndexChanged' er ikke tilladt på denne side.
Bemærk! Hændelsen i den sidste fejlmeddelelse kan også være en anden hændelse, f.eks. "OnClick".
Scenarie 2
Den blokerede udbyttet side viser følgende fejlmeddelelse:
UnsafeControlException: En webdel eller et webformularkontrolelement på denne side kan ikke vises eller importeres. Typen blev ikke fundet, eller den er ikke registreret som sikker.
Scenarie 3
Den blokerede udbyttet side viser følgende fejlmeddelelse:
Den refererede fil '/_layouts/somedirectory/affectedusercontrol.ascx' er ikke tilladt på denne side.
Årsag
Udsøgede sider gemmes i filsystemet. Deres sikkerhedsniveau forbedres ved at forbyde scripts på serversiden og usikre kontrolelementer. En udvisset side kan være blokeret fra gengivelse, hvis følgende betingelser er opfyldt:
-
Den udsøgede side indeholder in-line-kode eller serversidescript.
-
Den type kode, der ligger bag, eller webdelstypen er ikke registreret som sikker.
Løsning til scenarie 1
Du kan løse dette problem ved at tilføje et nyt PageParserPath-element, der har en VirtualPath-attribut, til Web.config-filen under konfigurations-/SharePoint/SafeMode/PageParserPaths-elementet.
Du modtager f.eks. følgende fejlmeddelelse:
"Attributten 'autoeventup' er ikke tilladt på denne side."
I dette tilfælde kan du tilføje et PageParserPath-element på følgende måde:
<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>
Hvis blokeringen af alle sider i den samme virtuelle mappe skal fjernes, kan du bruge et PageParserPath-element på følgende måde:
<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 er stien til den blokerede side.
-
VirtualPath skal referere til en side, der er udvisset og ikke kan ophæve ghosting af en bruger eller en mappe, der indeholder en sådan side.
-
VirtualPath skal referere til en side, der ikke refererer til en anden side eller en masterside, der kan være ikke-vært, eller en mappe, der ikke indeholder en sådan side eller masterside.
-
DirectFileDependencies angiver antallet af tilladte direkte filafhængigheder. Hvis du modtager en fejlmeddelelse som f.eks. "antallet af tilladte direkte filafhængigheder overskrider grænsen", skal du ændre denne værdi.
Løsning til scenarie 2
Du kan løse dette problem ved at føje et nyt SafeControls-element for den pågældende type, navneområde og samlingsst stærke navn til Web.config-filen under konfigurations-/SharePoint/SafeControls-elementet, som beskrevet i safecontrols-elementet (Løsning). Angiv derefter attributten Safe til SAND.
Du kan finde flere oplysninger om formatet af attributværdierne i elementet SafeControls i tabellen i trin 12 i afsnittet "Markering af sikre kontrolelementer i Pakkedesigner" under Sådan gør du:Markér kontrolelementer som sikre kontrolelementer.
Løsning til scenarie 3
Du kan løse dette problem ved at tilføje et nyt SafeControls-element, der bruger Src-attributten til Web.config-filen under konfigurationselementet/SharePoint/SafeControls.
Du modtager f.eks. følgende fejlmeddelelse:
"Den refererede fil '/_layouts/somedirectory/affectedusercontrol.ascx' er ikke tilladt på denne side."
I dette tilfælde kan du tilføje elementet SafeControls, som i følgende eksempler:
< SafeControls>
<SafeControl Src="~/_layouts/somedirectory/*" IncludeSubFolders="True" Safe="True" AllowRemoteDesigner="True" SafeAgainstScript="True" />
</SafeControls>
< SafeControls> <SafeControl Src="~/_layouts/somedirectory/*" IncludeSubFolders="True" Safe="True" /> </SafeControls>