Procedura: analizzare problemi delle autorizzazioni sugli assembly tramite Caspol.exe
Aggiornamento: novembre 2007
È possibile utilizzare lo strumento Criteri di protezione dall'accesso di codice (Caspol.exe) per risolvere i problemi a causa dei quali un assembly potrebbe non funzionare correttamente oppure accedere a risorse protette o essere eseguito quando non dovrebbe.
Per analizzare i problemi relativi a un assembly che non funziona correttamente
Utilizzare le opzioni –all e –resolveperm per determinare le autorizzazioni che vengono concesse all'assembly dai criteri:
caspol –all –resolveperm assembly-file
Determinare se l'assembly dispone del diritto di esecuzione controllando che il flag di esecuzione sia impostato nella classe SecurityPermission. Se l'assembly dispone dei diritti di esecuzione, il set di autorizzazioni di protezione sarà senza restrizioni oppure l'attributo dei flag includerà il flag di esecuzione.
Se l'assembly deve accedere a una risorsa protetta, ad esempio accedere a un disco, creare finestre, scrivere nel Registro di sistema e così via, verificare che siano impostate le autorizzazioni corrette.
Poiché le autorizzazioni assegnate dai livelli di criteri per l'azienda, per il computer e per l'utente si intersecano, è necessario impostare le autorizzazioni a tutti i livelli, per consentire a un assembly di riceverle. Se l'assembly dispone di autorizzazioni insufficienti, controllare le autorizzazioni assegnate all'assembly a ogni livello di criteri:
caspol –enterprise –resolveperm assembly-file
caspol –machine –resolveperm assembly-file
caspol –user –resolveperm assembly-file
Se l'assembly appartiene a un gruppo di codice la cui condizione di appartenenza è troppo restrittiva o il cui set di autorizzazioni associate non contiene le autorizzazioni necessarie per il funzionamento dell'assembly, tale assembly non potrà essere eseguito correttamente. Se le autorizzazioni concesse al codice sono insufficienti, è possibile creare un nuovo gruppo di codice che conceda all'assembly le autorizzazioni necessarie.
È inoltre possibile modificare il set di autorizzazioni associate o la condizione di appartenenza di uno dei gruppi di codice esistenti, affinché l'assembly possa ricevere le autorizzazioni appropriate. Per ulteriori informazioni, vedere Procedura: modificare gruppi di codice tramite Caspol.exe.
Per analizzare un assembly che accede a risorse protette o che viene eseguito quando non dovrebbe
- Se un assembly viene eseguito quando non dovrebbe, o se accede a risorse a cui non dovrebbe accedere, ad esempio le risorse necessarie per creare le finestre di dialogo, è probabile che a questo assembly siano state concesse troppe autorizzazioni. Utilizzare l'opzione –resolveperm per determinare quali autorizzazioni sono state concesse all'assembly. Utilizzare quindi l'opzione –resolvegroups per determinare a quali gruppi di codice appartiene. Modificare le condizioni di appartenenza o i set di autorizzazioni associati dei gruppi di codice associati per limitare le autorizzazioni concesse all'assembly.
Vedere anche
Concetti
Modello dei criteri di protezione
Riferimenti
Strumento criteri di protezione dall'accesso di codice (Caspol.exe)