Sintomi
Quando si usa una soluzione sandbox o una web part, è possibile che vengano visualizzati messaggi di errore simili ai seguenti nei log del sistema di registrazione unificato di SharePoint. Questi messaggi indicano che alcune soluzioni sandbox o web part sono bloccate.
Per SharePoint Foundation 2013 e SharePoint Enterprise Server 2016 con l'aggiornamento della sicurezza di maggio 2022 installato:
| ID evento | Messaggio |
|---|---|
| ajrme |
Nota: Chiamata ExecuteRequestInSandBox non riuscita. System.ArgumentException: Type was not resolvable at Microsoft.SharePoint.UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) at …... |
| ajlz0 |
Nota: Messaggio di errore relativo a Exception System.ArgumentException: Type was not resolvable at Microsoft.SharePoint.UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) at …... |
Per SharePoint Foundation 2013 con l'aggiornamento della sicurezza di giugno 2022 o un aggiornamento della sicurezza successivo installato e per SharePoint Enterprise Server 2016 con l'aggiornamento della sicurezza di luglio 2022 o un aggiornamento della sicurezza successivo installato:
| ID evento | Messaggio |
|---|---|
| 6k389 | Nota: Tipo non valido: type=XXXXX; assembly=YYYYY, in SPUserCodeSerializationBinder. Visitare https://go.microsoft.com/fwlink/?LinkId=2196531 per altre informazioni e per informazioni su come risolvere l'errore. |
| ajrme |
Nota: Chiamata ExecuteRequestInSandBox non riuscita. System.ArgumentException: Type was not resolvable at Microsoft.SharePoint.UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) at …... |
| ajlz0 |
Nota: Messaggio di errore relativo a Exception System.ArgumentException: Type was not resolvable at Microsoft.SharePoint.UserCode.SPUserCodeExecutionManager.SPUserCodeSerializationBinder.BindToType(String assemblyName, String typeName) at …... |
Causa
A partire dall'aggiornamento della sicurezza di maggio 2022, il servizio sandbox di SharePoint limita ulteriormente i tipi e gli assembly che consente di essere eseguiti per impostazione predefinita.
Risoluzione
Per risolvere il problema, è necessario registrare i tipi o gli assembly di terze parti consentiti dal servizio sandbox di SharePoint. A questo scopo, procedere come segue:
Per SharePoint Foundation 2013, installare l'aggiornamento della sicurezza di giugno 2022 o un aggiornamento della sicurezza successivo. Per SharePoint Enterprise Server 2016, installare l'aggiornamento della sicurezza di luglio 2022 o un aggiornamento della sicurezza successivo.
Usare la soluzione sandbox o la web part interessato per attivare il problema.
Aprire il log ULS di SharePoint e cercare l'ID evento "6K389". Verrà visualizzato il messaggio seguente con l'ID evento:
Nota
Tipo non valido: type=XXXXX; assembly=YYYYY in SPUserCodeSerializationBinder. Visitare https://go.microsoft.com/fwlink/?LinkId=2196531 per altre informazioni e per informazioni su come risolvere l'errore.
Si noti i tipi e gli assembly bloccati.
Aprire il file web.config dell'applicazione Web in cui si trovano le soluzioni Sandbox o le web part. Il percorso del web.config sarà in genere simile al seguente:
C:\inetpub\wwwroot\wss\VirtualDirectories\<web application port>
Aggiungere un elemento AllowedListItems nella sezione configuration/SharePoint/SafeMode.
All'interno dell'elemento AllowedListItems aggiungere un elemento AllowedItem con l'attributo Name impostato su AllowedSandboxType nel formato seguente:
Per sbloccare tipi specifici, aggiungere elementi con la proprietà Type come segue:
<AllowedItem Name="AllowedSandboxType" Type="XXXXX"/>
Per sbloccare assembly specifici, aggiungere elementi con la proprietà Assembly nel modo seguente:
<AllowedItem Name="AllowedSandboxType" Assembly="YYYYY"/>
Ecco un esempio:
<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>