Ho un .net assembly con un metodo che non è verificabile.C# codice non verificabile senza autorizzazione non gestita
Sto provando a caricare questo assembly in un appdomain sandbox.
Se carico con skip verifica, ma non con Unmanaged ottengo un'eccezione di verifica. In questo modo:
new SecurityPermission(SecurityPermissionFlag.Execution |
SecurityPermissionFlag.SkipVerification);
Se carico con il permesso non gestito funziona, ma poi il dominio applicazione non sarà sufficiente "sandbox".
new SecurityPermission(SecurityPermissionFlag.Execution |
SecurityPermissionFlag.SkipVerification |
SecurityPermissionFlag.UnmanagedCode);
Inoltre - Sono in esecuzione .Net 4, e di fare quanto sopra per lavorare ho dovuto passare a transperancy livello di modello 1, in questo modo:
[assembly:SecurityRules(SecurityRuleSet.Level1)]
Quindi, la mia domanda è:
- C'è un modo per eseguire codice non verificato senza autorizzazione UnamangedCode.
- C'è un modo per far funzionare quanto sopra con il set di regole di sicurezza Level2.
Grazie!
Un'applicazione è in modalità sandbox o no. Cosa significa esattamente "non sarà abbastanza sandboxed"? Sembra che tu abbia bisogno di ottenere un assembly che sia verificabile invece di provare a creare una soluzione alternativa. –
In questa sandbox ho bisogno di proteggere l'utente da se stesso, e non contro qualche potenziale minaccia. Ecco perché non sono preoccupato del codice non verificabile. Ma sono preoccupato per il codice non gestito. Ad ogni modo, non riesco a ottenerlo verificabile a causa di alcuni framework .net che uso. – ravyoli