2011-01-11 15 views

risposta

3

GetMethods e Activator.CreateInstance devono essere consentiti IIRC, mentre AssemblyName e Assembly.Version non lo sono. Ho usato i primi due metodi negli ambienti Medium-Trust e gli ultimi due non hanno funzionato. Il modo migliore è proprio attraverso il trial-and-error. Potrebbe anche essere utile usare Reflector quando rimani bloccato, per scoprire perché la roba non è consentita (normalmente [PrincipalPermission (SecurityAction.Demand, AspNetHostingPermission.High/Full)] in una classe da qualche parte più in alto nello stack di chiamate) .

HTH,

Benjamin

+0

Penso che sia molto frustrante non essere in grado di sapere quali metodi sono disponibili e quali no? – abcplex

3

strumenti come permview (NET 1.1) o permcalc (NET 2.0) può aiutare a raccontare l'autorizzazione di protezione richiede la vostra montaggio o assemblee richiede; è un po 'più semplice dell'analisi basata su prove ed errori, perché potresti dimenticare di esercitare manualmente un percorso di codice che cerca di fare una richiesta relativa alla sicurezza.

Sfortunatamente la documentazione MSDN non elenca esplicitamente i requisiti di sicurezza di ogni metodo o chiamata di proprietà.

Problemi correlati