SerializationException En raison de restrictions de sécurité, le type System.Runtime.Remoting.ObjRef n'est pas accessible.

StackOverflow https://stackoverflow.com/questions/826929

  •  05-07-2019
  •  | 
  •  

Question

J'ai un serveur distant hébergé sous IIS qui lève l'exception suivante lorsque j'essaie de lui parler. Exception SerializationException En raison de restrictions de sécurité, le type System.Runtime.Remoting.ObjRef n'est pas accessible. Si j'héberge le serveur dans mon propre exe, je n'ai aucun problème.
En recherchant Google, la solution pour la plupart des gens consiste à définir typeFilterLevel = " Full "

<clientProviders>
    <formatter ref="binary" typeFilterLevel="Full"/>
</clientProviders>    
<serverProviders>
     <formatter ref="binary" typeFilterLevel="Full"/>
</serverProviders> 

Ce que je fais.

Je suis également en train de définir le niveau de confiance sur le niveau maximum, ce qui devrait de toute façon être la valeur par défaut.

<system.web>
    <authentication mode="None" />
    <customErrors mode="Off" />
    <compilation defaultLanguage="c#" />
    <trust level="Full"/>
</system.web>

J'utilise IIS 6.0 sous Windows 2003. Le code compilé pour .NET 2.0. Le pool d'applications s'exécute sous un compte doté d'autorisations administratives.

Était-ce utile?

La solution

Le problème a fini par être une mauvaise définition de canal. La balise serverProviders n'était pas dans un canal, l'indentation du code xml donnait l'impression que c'était le cas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top