Příznaky
Při použití řešení sandboxu nebo webové části se mohou zobrazit chybové zprávy podobné následujícímu v protokolech SharePoint Sjednocený protokolovací systém (ULS). Tyto zprávy značí, že některá řešení sandboxu nebo webové části jsou blokované.
Pro SharePoint Foundation 2013 a SharePoint Enterprise Server 2016 s nainstalovanou aktualizací zabezpečení z května 2022:
ID události |
Zprávu |
ajrme |
Volání ExecuteRequestInSandBox se nezdařilo. System.ArgumentException: Typ nebyl v Microsoftu přeložitelný. SharePoint. UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) |
ajlz0 |
Zobrazuje se chybová zpráva výjimky System.ArgumentException: Typ nebyl v Microsoftu přeložitelný. SharePoint. UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) |
Pro SharePoint Foundation 2013 s nainstalovanou aktualizací zabezpečení z června 2022 nebo novější aktualizací zabezpečení a pro SharePoint Enterprise Server 2016 s nainstalovanou aktualizací zabezpečení z července 2022 nebo novější:
ID události |
Zprávu |
6k389 |
Neplatný typ: type=XXXXX; assembly=YYYYY, in SPUserCodeSerializationBinder. Další informace najdete v https://go.microsoft.com/fwlink/?LinkId=2196531 a dozvíte se, jak tuto chybu vyřešit. |
ajrme |
Volání ExecuteRequestInSandBox se nezdařilo. System.ArgumentException: Typ nebyl v Microsoftu přeložitelný. SharePoint. UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) |
ajlz0 |
Zobrazuje se chybová zpráva výjimky System.ArgumentException: Typ nebyl v Microsoftu přeložitelný. SharePoint. UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) |
Příčina
Počínaje aktualizací zabezpečení z května 2022 SharePoint služba sandboxu dále omezuje typy a sestavení, které umožňuje spustit ve výchozím nastavení.
Řešení
Pokud chcete tento problém vyřešit, musíte zaregistrovat typy nebo sestavení třetích stran, které služba SharePoint sandboxu povolí spuštění. Postupujte takto:
-
Pro SharePoint Foundation 2013 nainstalujte aktualizaci zabezpečení z června 2022 nebo novější aktualizaci zabezpečení. Pro SharePoint Enterprise Server 2016 nainstalujte aktualizaci zabezpečení z července 2022 nebo novější aktualizaci zabezpečení.
-
K aktivaci problému použijte ovlivněné řešení sandboxu nebo webovou část.
-
Otevřete protokol SharePoint ULS a vyhledejte ID události 6K389. S TÍMTO ID události najdete následující zprávu:
Neplatný typ: type=XXXXX; assembly=RRRR v SPUserCodeSerializationBinder. Další informace najdete v https://go.microsoft.com/fwlink/?LinkId=2196531 a dozvíte se, jak tuto chybu vyřešit.
-
Všimněte si typů a sestavení, které jsou blokovány.
-
Otevřete soubor web.config webové aplikace, ve které jsou umístěna řešení sandboxu nebo webové části. Cesta k web.config by obvykle vypadala takto:
C:\inetpub\wwwroot\wss\VirtualDirectories\<port webové aplikace> -
Přidejte prvek AllowedListItems v oddílu configuration/SharePoint/SafeMode.
-
Uvnitř AllowedListItems elementu, přidejte AllowedItem element s Name atribut nastaven na AllowedSandboxType v následujícím formátu:
-
Pokud chcete odblokovat konkrétní typy, přidejte prvky s vlastností Type následujícím způsobem:
<AllowedItem Name="AllowedSandboxType" Type="XXXXX"/> -
Pokud chcete odblokovat konkrétní sestavení, přidejte prvky s vlastností Assembly následujícím způsobem:
<AllowedItem Name="AllowedSandboxType" Assembly="YYYYY"/>
Tady je příklad:
<SafeMode
MaxControls = "200"
CallStack = "false"
DirectFileDependencies ="10"
TotalFileDependencies = "250"
AllowPageLevelTrace = "false"
ControlCompatMode="false"
>
<PageParserPaths>
</PageParserPaths>
<AllowedListItems>
<AllowedItem Name="AllowedSandboxType" Type="Microsoft.SharePoint.Portal.WebControls.RSSAggregatorWebPart, Microsoft.SharePoint.Portal, Version=15.0.0.0, Culture=neutral, PublicKeyToken=xxxxxx"/>
<AllowedItem Name="AllowedSandboxType" Assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxxx"/>
</AllowedListItems>
</SafeMode>