Příznaky
Po instalaci některé z následujících aktualizací se některé stránky v Microsoft SharePointu nevykreslují:
-
Popis aktualizace zabezpečení pro SharePoint Server 2019: 8. září 2020 (KB 4484505)
-
21. září 2020, aktualizace pro SharePoint Server 2019 (KB4461512)
-
Popis aktualizace zabezpečení pro SharePoint Enterprise Server 2016: 8. září 2020 (KB 4484506)
-
Popis aktualizace zabezpečení pro SharePoint Foundation 2013: 8. září 2020 (KB 4484525)
-
Popis aktualizace zabezpečení pro SharePoint Foundation 2010: 8. září 2020 (KB 4486667)
Například stránky portálu Microsoft Identity Manager (MIM) a některé přizpůsobené stránky, které jsou nasazené prostřednictvím řešení SharePointu, se nevykreslují.
Kromě toho může docházet k jednomu nebo více z následujících scénářů.
Scénář 1
Na blokované stránce se zobrazí jedna z následujících chybových zpráv:
-
Atribut "autoeventwireup" není na této stránce povolený.
-
Atribut enablesessionstate není na této stránce povolený.
-
V tomto souboru nejsou povolené bloky kódu.
-
Obslužná rutina události OnSelectedIndexChanged není na této stránce povolena.
Poznámka: Událostí v poslední chybové zprávě může být i jiná událost, například "OnClick".
Scénář 2
Blokovaná stránka s duchem zobrazí následující chybovou zprávu:The blocked ghosted page displays the following error message:
UnsafeControlException: Webovou část nebo ovládací prvek webového formuláře na této stránce nelze zobrazit ani importovat. Typ nebyl nalezen nebo není registrovaný jako bezpečný.
Scénář 3
Blokovaná stránka s duchem zobrazí následující chybovou zprávu:The blocked ghosted page displays the following error message:
Odkazovaný soubor '/_layouts/somedirectory/affectedusercontrol.ascx' není na této stránce povolený.
Příčina
Stránky s duchem jsou uložené v systému souborů. Jejich úroveň zabezpečení je vylepšená tím, že zablokuje skripty na straně serveru a nebezpečné ovládací prvky. Pokud platí následující podmínky, může být zobrazování stránky s duchem zablokované:
-
Stránka s duchem obsahuje kód v řádku nebo skript na straně serveru.
-
Typ kódu nebo webové části není registrovaný jako bezpečný.
Řešení pro scénář 1
Chcete-li tento problém vyřešit, přidejte nový element PageParserPath, který má atribut VirtualPath do souboru Web.config pod elementem konfigurace/SharePoint/SafeMode/PageParserPaths.
Zobrazí se například následující chybová zpráva:
Atribut "autoeventwireup" není na této stránce povolený.
V tomto případě můžete přidat element PageParserPath takto:
<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>
Pokud je třeba odblokovat všechny stránky ve stejném virtuálním adresáři, můžete použít element PageParserPath takto:
<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 je cesta blokované stránky.
-
VirtualPath musí odkazovat na stránku, která je zachovaná a nemůže být unghosted uživatelem nebo adresářem, který takovou stránku obsahuje.
-
VirtualPath musí odkazovat na stránku, která nemá odkaz na jinou stránku nebo stránku předlohy, která může být unghosted, nebo na adresář, který takovou stránku nebo stránku předlohy neobsahuje.
-
DirectFileDependencies označuje počet povolených přímých závislostí souborů. Pokud se zobrazí chybová zpráva, například "počet povolených přímých závislostí souborů překračuje limit", změňte tuto hodnotu.
Řešení pro scénář 2
Tento problém vyřešíte přidáním nového elementu SafeControls pro daný typ, obor názvů a silný název sestavení do souboru Web.config pod elementem konfigurace/SharePoint/SafeControls, jak je popsáno v elementu SafeControls (Řešení). Potom nastavte atribut Bezpečný na HODNOTU PRAVDA.
Další informace o formátu hodnot atributů v elementu SafeControls najdete v tabulce v kroku 12 v části Označení bezpečných ovládacích prvků v Návrháři balíčku v části Postupy:Označení ovládacích prvků jako bezpečných ovládacích prvků .
Řešení pro scénář 3
Chcete-li tento problém vyřešit, přidejte nový prvek SafeControls, který používá atribut Src do Web.config souboru pod elementem konfigurace/SharePoint/SafeControls.
Zobrazí se například následující chybová zpráva:
Odkazovaný soubor '/_layouts/somedirectory/affectedusercontrol.ascx' není na této stránce povolený."
V tomto případě můžete přidat prvek SafeControls, jak je vidět v následujících příkladech:
< SafeControls>
<SafeControl Src="~/_layouts/somedirectory/*" IncludeSubFolders="True" Safe="True" AllowRemoteDesigner="True" SafeAgainstScript="True" />
</SafeControls>
< SafeControls> <SafeControl Src="~/_layouts/somedirectory/*" IncludeSubFolders="True" Safe="True" /> </SafeControls>