Come ottimizzare i tempi di test/sviluppo di un portale, semplificando alcune operazioni.
Mi sono sempre trovato a lavorare con portali basati su Dotnetnuke che fanno largo uso dei ruoli per abilitare/disabilitare funzionalità, o intere parti del portale, in funzione dell'appartenenza dell'utente a questo o a quel gruppo di sicurezza.
Per verificare che tutto funzioni a dovere, è quindi necessario effettuare i dovuti test impersonando, di volta in volta, un utente appartenente a ruoli diversi.
Questa operazione, benchè semplice, ripetuta per molto volte, porta via un sacco di tempo e richiede di ricordarsi il nome dell'utente, la sua password, e il ruolo di appartenenza.
Nel fine settimana quindi, partendo dall'idea di IdentitySwitcher, mi sono sviluppato un modulino che permette di passare da un utente ad un altro con un semplice click di mouse, senza dover digitare le credenziali di accesso o ricordarsi a quale gruppo appartenga l'utente.
Questo è uno screewshot:

Per comodità, oltre a visualizzare l'utente (nei settings, è possibile definire quali dati tra Displayname/UserID/UserName visualizzare), vengono anche mostrati i ruoli di appartenenza (esclusi 'Registered users' e 'Subscribers') di ogni singolo utente.
L'utente host e gli appartenenti al gruppo Administrators vengono rappresentati in modo enfattizzato rispetto al resto degli utenti, in modo da indentificarli più velocemente.
Il modulo, battezzato FastUserSwitcher, è scaricabile dall'area moduli.
Ovviamente, essendo disponibili i sorgenti, potrete personalizzarlo a vostro piacere.
NOTA BENE: Il modulo è stato pensato solo per l'uso in ambienti di sviluppo/test. Dato che permette di accedere ad un portale senza la necessità di conoscere le credenziali di accesso è un modulo estremamente delicato dal punto di vista della sicurezza... non vi azzardate ad utilizzarlo su un sito web pubblico 