Nei precedenti post ho parlato degli oggetti IIDentity e IPrincipal. Quello di cui non abbiamo parlato sono i loro attributi e come utilizzarli per evitare di eseguire codice nel caso in cui l'utente non sia correttamente autorizzato. Nel caso si voglia proprio realizzare una struttura di questo tipo è necessario andare a lavorare sulla permission PrincipalPermission insieme ad alcuni suoi attribiti (PrincipalPermissionAttribute).
PrincipalPermission ha tre proprietà da valorizzare.
Il loro funzionamento è presto illustrato dallo snippet di codice che segue.
Il metodo RunTrustedUsersCode può essere eseguito unicamente nel caso in cui l'utente appartiene al gruppo TrustedUsers. Non solo, volendo, si può permettere l'esecuzione del codice solo ed unicamente nel caso in, a "girare" il codice è l'utente amarziali del gruppo TrustedUsers.
Nel caso in cui si abbia la necessità di permettere l'esecuzione del codice ai gruppi TrustedUsers e AlmostTrustedUsers è possibile operare come segue.