Tenter par la sécurité transparente la méthode X à la sécurité de l'accès méthode critique Y échoué

J'ai un assez stable server version de l'application qui a été déployé depuis près d'un an à des dizaines de clients.

Un nouveau client récemment, le programme d'installation de l'application et d'obtenir l'erreur suivante:

Système.MethodAccessException: Tenter de sécurité transparent
[SomeMethod] pour accéder à la sécurité de la méthode critique [SomeOtherMethod]
a échoué.

Les deux SomeMethod et SomeOtherMethod sont des méthodes dans les assemblées que j'ai écrit, qui sont construites contre .NET 4, et qui sont en cours d'exécution à l'intérieur d'un Service Windows. Si cela fait une différence, SomeOtherMethod fait référence à un type à partir d'un 3ème partie de l'assemblée (EntLib 4.1) construit contre la .NET 2.0. En regardant le code pour EntLib 4.1, je ne vois qu'ils utilisent les deux SecurityTransparent et APTC attributs, mais cela n'a jamais causé de problèmes à d'autres clients.

Ces assemblées ont été mis à niveau à partir de la .NET CLR 2.0, mais il y a longtemps. Ce code exact est en cours d'exécution sur d'autres clients tout bien, et je ne suis pas explicitement à l'aide de l'APTC attribut et je ne suis pas à l'aide de la SecurityCritical attribut n'importe où.

Cela m'amène à la conclusion que c'est un problème de configuration ou peut-être .NET Framework patch question. Il y a eu un patch publié pour .NET qui serait la cause de cette modification de rupture? Est-il un paramètre de configuration de certains où les qui impose ce type de contrôle qui est désactivée par défaut, mais que mon client peut-être permis?

Un dernier point. Mon service utilise SSRS RDLCs pour générer des fichiers Pdf. En raison de certains changements dans .NET 4, je dois forcer le service pour utiliser l'héritage politique de sécurité via la configuration suivante:

  <runtime>
    <NetFx40_LegacySecurityPolicy enabled="true" />
  </runtime>

Pour plus de détails sur pourquoi j'ai besoin de faire cela, voir ce stackoverflow post: Très Forte Utilisation de la Mémoire dans .NET 4.0

Le point important est que je le fais à tous mes autres clients. Uniquement ce client est d'avoir des problèmes.

InformationsquelleAutor RMD | 2012-08-09