Welche Reflektionsberechtigungen sind in Medium Trust zulässig?

8

Ich möchte fragen, welche Methoden / Klassen in Medium Trust erlaubt sind. Beispielsweise, ob diese Methoden erlaubt sind?

GetProperties, GetMethods, Activator.CreateInstance, Montage.Version, AssemblyName.Name

Bitte sagen Sie mir, welche Methoden erlaubt sind.

    
abcplex 11.01.2011, 10:56
quelle

2 Antworten

3

GetMethods und Activator.CreateInstance sollten IIRC erlaubt sein, AssemblyName und Assembly.Version hingegen nicht. Ich habe die ersten beiden Methoden in Umgebungen mit mittlerem Vertrauen verwendet, und die letzteren beiden haben nicht funktioniert. Der beste Weg ist nur durch Versuch und Irrtum wirklich. Außerdem könnte es hilfreich sein, Reflector zu verwenden, wenn Sie nicht weiterkommen, um herauszufinden, warum stuff nicht erlaubt ist (normalerweise [PrincipalPermission (SecurityAction.Demand, AspNetHostingPermission.High / Full)]) den Aufrufstack).

HTH,

Benjamin

    
Benjamin Howarth 11.01.2011 12:29
quelle
3

Tools wie permview (nur .NET 1.1) oder permcalc (.NET 2.0) kann Ihnen dabei helfen die Sicherheitserlaubnis erfordert Ihre Montage oder Baugruppen erfordern; Es ist ein wenig einfacher als eine Trial-and-Error-Bases-Analyse, da Sie möglicherweise vergessen, einen Codepfad manuell auszuprobieren, der eine sicherheitsrelevante Anforderung erfüllt.

Leider werden in der MSDN-Dokumentation die Sicherheitsanforderungen für jede Methode oder jeden Eigenschaftsaufruf nicht explizit aufgeführt.

    
Josh Petrie 11.01.2011 16:38
quelle

Tags und Links