Per creare un'istanza di un oggetto PSCredential può essere utilizzato il cmdlet Get-Credential.
Ad es. eseguendo da PowerShell il comando
$credenziali=Get-Credential
verrà aperta una finestra di richiesta credenziali (FIG 1). Inserendo utenza e password queste verranno memorizzate all'interno dell'oggetto PSCredential $credenziali.
FIG 1 - Richiesta credenziali di Windows PowerShell |
Per visualizzare i membri (metodi e proprietà) dell'oggetto viene utilizzato il cmdlet Get-Member
$credenziali | Get-Member
FIG 2 - Visualizzare i membri di un oggetto PSCredential |
Analizzando le proprietà di un oggetto PSCredential (FIG 2), salta subito all'occhio che l'utenza viene memorizzata in chiaro all'interno di una comune stringa mentre la password viene memorizzata come securestring e pertanto non visibile (almeno non direttamente).
Per visualizzare il nome utente memorizzato all'interno dell'oggetto PSCredential basta utilizzare il comando
$credenziali.UserName
Eseguendo il comando
$credenziali.Password | Get-Member
verranno mostrati i metodi e le proprietà disponibili per la password (FIG 3). Tale informazioni sono d'aiuto per conoscere quali operazioni è possibile effettuare sulla password.
Ad es. per conoscere la lunghezza della password bisogna interrogare la proprietà Length
$credenziali.Password.Length
mentre per cancellarla va utilizzato il metodo Clear()
$credenziali.Password.Clear()
FIG 3 - Recuperare informazioni sulla password da un oggetto PSCredential |
Per "scoprire" la password memorizzata all'interno dell'oggetto PSCredential è possibile lanciare il seguente comando
$credenziali.GetNetworkCredential().Password
FIG 4 - Visualizzare la password memorizzata all'interno di un oggetto PSCredential |