Visualizzazione post con etichetta Windows. Mostra tutti i post
Visualizzazione post con etichetta Windows. Mostra tutti i post

lunedì 19 settembre 2022

PowerShell: Nessuna scadenza password per un account locale

Utilizzando il cmdlet Set-LocalUser possiamo rimuovere la scadenza della password per un account locale. Le seguenti istruzioni, che è possibile salvare in un file .PS1, consentono di specificare un account locale e impostare Nessuna scadenza password.
 $User = (Read-Host -Prompt "Username")  
 Set-LocalUser -Name $User -PasswordNeverExpires $true  

Set-LocalUser -PasswordNeverExpires
FIG 1 - Set-LocalUser -PasswordNeverExpires


Per verificare se il comando è andato a buon fine possiamo procedere nel seguente modo:
  • Aprire una finestra di Esplora file, cliccare con il tasto destro del mouse su Questo PC e selezionare Gestione. In alternativa premere la combinazione di tasti Win+R e nella finestra Esegui digitare compmgmt.msc seguito da invio.
    Gestione
    FIG 2 - Gestione

  • Espandere la voce Utenti e gruppi locali e selezionare Utenti.
    Gestione computer, Utenti
    FIG 3 - Gestione computer, Utenti

  • Doppio click con il tasto sinistro del mouse sull'account modificato e verificare che l'opzione Nessuna scadenza password sia attiva.

    Nessuna scadenza password
    FIG 4 - Nessuna scadenza password






mercoledì 31 agosto 2022

PowerShell: Cambiare la password di un account locale

Per modificare la password di un utente locale, è necessario utilizzare i comandi Get-LocalUser e Set-LocalUser. Il codice seguente richiede di specificare un nome utente e una password. Il nome utente viene ricercato tra gli account locali del sistema e, se presente, gli viene attribuita la password specificata.
  $User = (Read-Host -Prompt "Username")   
  $Password = (Read-Host -Prompt "Nuova password" -AsSecureString)   
  $UserAccount = Get-LocalUser -Name $User   
  $UserAccount | Set-LocalUser -Password $Password  

PowerShell, Modifica password account locale
FIG 1 - PowerShell, Modifica password account locale

lunedì 29 agosto 2022

PowerShell: Modificare un account utente locale

Il cmdlet Set-LocalUser consente di modificare un account utente locale. Questo cmdlet può essere utilizzato per reimpostare la password di un account utente locale.

Sintassi

Set-LocalUser
   [-AccountExpires <DateTime>]
   [-AccountNeverExpires]
   [-Description <String>]
   [-FullName <String>]
   [-Name] <String>
   [-Password <SecureString>]
   [-PasswordNeverExpires <Boolean>]
   [-UserMayChangePassword <Boolean>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Set-LocalUser
   [-AccountExpires <DateTime>]
   [-AccountNeverExpires]
   [-Description <String>]
   [-FullName <String>]
   [-InputObject] <LocalUser>
   [-Password <SecureString>]
   [-PasswordNeverExpires <Boolean>]
   [-UserMayChangePassword <Boolean>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Set-LocalUser
   [-AccountExpires <DateTime>]
   [-AccountNeverExpires]
   [-Description <String>]
   [-FullName <String>]
   [-Password <SecureString>]
   [-PasswordNeverExpires <Boolean>]
   [-SID] <SecurityIdentifier>
   [-UserMayChangePassword <Boolean>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
   

Parametri

-AccountExpires
Specifica la data di scadenza dell'account utente locale. Per ottenere un oggetto DateTime, utilizzare il cmdlet Get-Date.

-AccountNeverExpires
L'account locale specificato non avrà scadenza.

-Confirm
Richiede una conferma prima di eseguire il cmdlet.

-Description
Specifica un commento per l'account utente locale indicato. La lunghezza massima è di 48 caratteri.

-FullName
Specifica il nome completo dell'account utente. Il nome completo differisce dal nome dell'account utente.

-InputObject
Specifica l'account utente che questo cmdlet deve modificare. Per ottenere un account utente è possibile utilizzare il cmdlet Get-LocalUser.

-Name
Specifica il nome dell'account utente che il cmdlet dovrà modificare.

-Password
Specifica una password per l'account utente locale. Se l'account utente è collegato a un account Microsoft, non è necessario impostare una password.
È possibile utilizzare Read-Host -AsSecureString, Get-Credential o ConvertTo-SecureString per creare un oggetto SecureString per la password.
Se si omettono i parametri Password e NoPassword, Set-LocalUser richiederà la password dell'utente.

-PasswordNeverExpires
Permette di specificare se la password dell'account utente locale indicato ha una scadenza.

-SID
Specifica l'ID di sicurezza (SID) dell'account utente che questo cmdlet dovrà modificare.

-UserMayChangePassword
Indica che l'utente può modificare la password.

-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.
   
   

Esempi

Esempio 1
Set-LocalUser -Name "Virtual" -Description "Account utente locale per test."   
Questo comando modifica la descrizione di un account utente locale chiamato Virtual.
Set-LocalUser
FIG 1- Set-LocalUser






domenica 21 agosto 2022

PowerShell: Elencare gli account utenti locali

Il cmdlet Get-LocalUser visualizza gli account utente locali che includono gli account utente predefiniti integrati, gli account utente locali creati dall'utente e gli account locali collegati agli account Microsoft.

Sintassi

Get-LocalUser
   [[-Name] <String[]>]
   [<CommonParameters>]
   
Get-LocalUser
   [[-SID] <SecurityIdentifier[]>]
   [<CommonParameters>]

Parametri

-Name
Permette di specifica un array di nomi di account utente che il cmdlet dovrà verificare. È possibile utilizzare il carattere jolly.   

-SID
Permette di specificare un array di ID di sicurezza (SID) degli account utente che questo cmdlet dovrà verificare. Anche con tale parametro è possibile utilizzare il carattere jolly.

Esempi

Esempio 1
Get-LocalUser
Visualizza l'elenco degli account locali.
Get-LocalUser
FIG 1 - Get-LocalUser

Esempio 2
Get-LocalUser -Name "Virtual"
In questo esempio vengono visualizzate informazioni sull'account locale Virtual, se presente.
Get-LocalUser -Name
FIG 2 - Get-LocalUser -Name

Esempio 3
Get-LocalUser -SID S-1-5-21-3709759149-2871342979-3498957072-1002
Visualizza informazioni sull'account locale avente il SID specificato.

Esempio 4
Get-LocalUser -Name "MicrosoftAccount\username@Outlook.com"
Visualizza informazioni sull'account utente specificato collegato a un account Microsoft. 





lunedì 18 luglio 2022

Windows: Aggiungere/rimuovere dispositivi Bluetooth in maniera rapida

Un modo rapido per accoppiare/disaccoppiare dispositivi Bluetooth al sistema e attraverso il seguente comando:
explorer.exe ms-settings-connectabledevices:devicediscovery  

Per velocizzare l'avvio del comando è possibile creare un collegamento sul desktop.

Dispositivi Bluetooth
FIG 1 - Dispositivi Bluetooth




domenica 17 luglio 2022

PowerShell: Visualizzare informazioni sui dispositivi Bluetooth

Per visualizzare i dispositivi/periferiche Bluetooth connessi al computer si può utilizzare il cmdlet PowerShell Get-PnpDevice come il seguente comando
Get-PnpDevice -Class Bluetooth
Get-PnpDevice
FIG 1 - Get-PnpDevice
Per visualizzare ulteriori informazioni sui dispositivi Bluetooth si può modificare il comando precedente come mostrato di seguito
Get-PnpDevice -Class Bluetooth |FL

Tramite l'utilizzo del parametro FriendlyName è possibile ricercare un dispositivo Bluetooth indicando il suo nome o parte di esso. Ad esempio, per ricercare un dispositivo Bluetooth il cui nome contiene la stringa Intel si utilizza il comando
 -Class Bluetooth -FriendlyName *Intel*
Get-PnpDevice, parametro FriendlyName
FIG 2 - Get-PnpDevice, parametro FriendlyName 

Utilizzando Select-Object è possibile visualizzare solo le proprietà di nostro interesse come il nome, il produttore e il servizio corrispondente:
Get-PnpDevice -Class Bluetooth  | Select-Object -Property Caption, Manufacturer, Service
Get-PnpDevice, Select-Object
FIG 3 - Get-PnpDevice, Select-Object






venerdì 24 giugno 2022

Windows: Visualizzare la versione di Windows e altre informazioni sul desktop

In alcuni contesti può essere utile visualizzare sul desktop le informazioni relative al sistema in particolare quando ci si connette ad una macchina remota con Connessione desktop Remoto (mstsc).
Per visualizzare sul desktop le informazioni sulla versione del sistema operativo è possibile agire tramite il registro di sistema:
  • Premere la combinazione di tasti WIN+per aprire la finestra di dialogo Esegui e digitare regedit seguito da invio per avviare l'editor del registro di sistema;
  • Posizionarsi su
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
  • Creare se non presente, un nuovo valore DWORD e rinominarlo in DisplayVersion;
  • Assegnare a DisplayVersion il valore 1;
    DisplayVersion
    FIG 1 - DisplayVersion

  • Disconnettersi/riconnettersi dal sistema o terminare/avviare il processo explorer.exe per visualizzare la versione del sistema operativo su desktop.
    Informazioni Sistema Operativo
    FIG 2 - Informazioni Sistema Operativo

Tool di terze parti consentono di visualizzare un numero maggiore di informazioni permettendo di personalizzare sia i dati da visualizzare che il loro aspetto (posizione, tipo e dimensione dei caratteri, sfondo, ecc). Uno dei tool più apprezzati in questo campo è BgInfo di Sysinternals. Il tool può essere scaricato dal sito ufficiale https://docs.microsoft.com/en-us/sysinternals/downloads/bginfo e non richiede alcuna installazione. Una volta avviata la versione a 32 o a 64 bit a seconda del sistema operativo e accettate la condizioni di licenza, viene mostrato l'elenco delle informazioni che verranno visualizzate sul desktop. L'elenco può essere personalizzato rimuovendo o aggiungendo nuovi campi, creando un campo personalizzato, modificando la posizione in cui verranno visualizzate le informazioni, impostando lo sfondo e specificando come aggiornare il wallpaper. 
BGInfo
FIG 3 - BGInfo

Le impostazioni possono essere salvate all'interno di un file .bgi (dal menu File->Save as) che può essere richiamato successivamente all'avvio del tool. Ad esempio, supponendo di aver salvato le personalizzazioni all'interno del file SystemInfo.bgi, il comando per avviare il tool con le personalizzazioni sarà  
Bginfo64.exe SystemInfo.bgi /timer:0 /silent /accepteula

Avere sottocchio le informazioni relative al sistema, in particolare quando ci si connette a postazioni remote, può far risparmiare tempo prezioso.
Informazioni BGInfo
FIG 4 - Informazioni visualizzate da BGInfo






mercoledì 22 giugno 2022

Windows 10: File manager Modern

Il file manager predefinito di Windows è, l'ormai storico, Esplora file. Il file manager risulta semplice da utilizzare ma gli anni sulle spalle si fanno sentire: le funzionalità avanzate sono ridotte all'osso e le novità estetiche introdotte nel corso degli anni sono poche e poco significative. Microsoft ha sviluppato una variante Modern del suo file manager che viene distribuita insieme al sistema operativo e che può essere richiamata digitando il seguente comando:
C:\Windows\explorer.exe shell:AppsFolder\c5e2524a-ea46-4f67-841f-6a9465d9d515_cw5n1h2txyewy!App

Il nuovo file manager non sembra ancora maturo per mandare in pensione Esplora file ma può risultare più comodo da utilizzare su dispositivi dotati di touch screen.
Esplora file Modern
FIG 1 - Esplora file Modern







martedì 21 giugno 2022

PowerShell: Verificare le impostazioni del criterio password di Active Directory

Per visualizzare le impostazioni password policy di Active Directory (come la durata massima, la lunghezza minima, la cronologia, ecc) è possibile utilizzare il cmdlet Get-ADDefaultDomainPasswordPolicy.


Sintassi

Get-ADDefaultDomainPasswordPolicy
   [-AuthType <ADAuthType>]
   [-Credential <PSCredential>]
   [[-Current] <ADCurrentDomainType>]
   [-Server <String>]
   [<CommonParameters>]

Get-ADDefaultDomainPasswordPolicy
   [-AuthType <ADAuthType>]
   [-Credential <PSCredential>]
   [-Identity] <ADDefaultDomainPasswordPolicy>
   [-Server <String>]
   [<CommonParameters>]
   

Parametri

-AuthType 
Specifica il metodo di autenticazione. I valori accettati dal parametro sono:
  • Negotiate oppure 0 (default)
  • Basic oppure 1
-Credential
Specifica le credenziali dell'account utente con cui eseguire il comando. Se omesso viene considerato l'utente corrente che sta eseguendo il comando. Al parametro può essere passato il nome dell'account, come ad es. "utente01" o "Dominio\utente01" oppure può essere passato un'oggetto PSCredential generato dal cmdlet Get-Credential. Se viene specificato un'account utente verrà richiesto di inserire la password all'esecuzione del comando.

-Current
Specifica se restituire il dominio del computer locale o dell'utente correntemente connesso. I valori accettati per questo parametro sono:
  • LocalComputer oppure 0
  • LoggedOnUser oppure 1

-Identity
Specifica un oggetto di dominio Active Directory fornendo uno dei seguenti valori 
  • Distinguished name
  • GUID (objectGUID)
  • Security identifier (objectSid)
  • Security Account Manager account name (SAMAccountName

-Server
Specifica l'istanza di Active Directory Domain Services a cui connettersi:
  • Fully qualified domain name
  • NetBIOS name
  • Fully qualified directory server name
  • NetBIOS name
  • Fully qualified directory server name e la porta

Esempi

Esempio 1
Get-ADDefaultDomainPasswordPolicy
Questo comando ottiene il criterio della password di dominio predefinita dal dominio dell'utente attualmente connesso.
Get-ADDefaultDomainPasswordPolicy
FIG 1 - Get-ADDefaultDomainPasswordPolicy


Esempio 2
Get-ADDefaultDomainPasswordPolicy -Current LocalComputer
Visualizza il criterio della password di dominio predefinita dal computer locale corrente.

Esempio 3
Get-ADDefaultDomainPasswordPolicy -Current LoggedOnUser
Questo comando ottiene il criterio della password di dominio predefinita dal dominio dell'utente attualmente connesso. 

Esempio 4
Get-ADDefaultDomainPasswordPolicy -Identity contoso.com
Questo comando ottiene il criterio di password del dominio predefinito dal dominio specificato.

Esempio 5
(Get-ADForest -Current LoggedOnUser).Domains | %{ Get-ADDefaultDomainPasswordPolicy -Identity $_ }
Visualizza gli oggetti dei criteri delle password di dominio predefinite di tutti i domini della foresta.


In alternativa e possibile usare il seguente comando dal prompt dei comandi
net accounts
Net accounts
FIG 2 - Net accounts






martedì 31 maggio 2022

PowerShell: Disabilita la BitLocker Drive Encryption per un volume

Il cmdlet Disable-BitLocker disattiva la BitLocker Drive Encryption per un volume BitLocker. Il cmdlet, una volta eseguito, rimuove tutte le chiavi di protezione e inizia a decriptare il contenuto del volume specificato.

Se il volume che ospita il sistema operativo contiene qualche chiave di sblocco automatico, il cmdlet non eseguirà alcuna operazione. In questi casi sarà prima necessario usare il cmdlet Clear-BitLockerAutoUnlock per rimuovere tutte le chiavi di sblocco automatico e poi sarà possibile disabilitare BitLocker sul volume.

Sintassi

Disable-BitLocker
       [-MountPoint] <String[]>
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Parametri

-Confirm
Chiede conferma prima di eseguire il cmdlet.

-MountPoint
Specifica un array di lettere di unità o di oggetti volume BitLocker. Il cmdlet disabilita BitLocker sui volumi specificati. Per ottenere un oggetto volume BitLocker si può utilizzare il cmdlet Get-BitLockerVolume.
 
-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.

Esempi

Esempio 1
Disable-BitLocker -MountPoint "E:"  
Disabilita BitLocker sul volume specificato e inizia a decriptare i dati.
Disable-BitLocker
FIG 1 - Disable-BitLocker

Esempio 2
$VL = Get-BitLockerVolume
Disable-BitLocker -MountPoint $VL
Disabilita BitLocker su tutti i volumi.
Il primo comando usa Get-BitLockerVolume per ottenere tutti i volumi BitLocker per il computer corrente e li memorizza nella variabile $VL.
Il secondo comando disabilita la crittografia BitLocker per tutti i volumi BitLocker memorizzati nella variabile $VL. BitLocker inizia a decifrare i dati sui volumi.




sabato 28 maggio 2022

PowerShell: Disabilitare lo sblocco automatico per un volume BitLocker

Nell'articolo PowerShell: Rimuovere tutte le chiavi di sblocco automatico di BitLocker è stato mostrato come rimuovere tutte le chiavi di sblocco automatico utilizzate da BitLocker Drive Encryption mediante il cmdlet Clear-BitLockerAutoUnlock. Per rimuovere le chiavi di sblocco automatico di BitLocker di specifici volumi si utilizza il cmdlet Disable-BitLockerAutoUnlock

BitLocker può essere configurato per sbloccare automaticamente i volumi che non ospitano un sistema operativo. Dopo che un utente sblocca il volume del sistema operativo, BitLocker utilizza informazioni crittografate memorizzate nel registro e nei metadati del volume per accedere ai volumi di dati che utilizzano lo sblocco automatico.

Prima di poter disabilitare BitLocker utilizzando il cmdlet Disable-BitLocker, è necessario rimuovere le chiavi di sblocco automatico. Il volume va specificato indicando la lettera di unità o un oggetto volume BitLocker.

Sintassi

Disable-BitLockerAutoUnlock
       [-MountPoint] <String[]>
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
   

Parametri

-Confirm
Chiede conferma prima di eseguire il cmdlet.

-MountPoint
Specifica un array di lettere di unità o di oggetti volume BitLocker. Il cmdlet disabilita lo sblocco automatico per i volumi specificati. Per ottenere un oggetto volume BitLocker si può utilizzare il cmdlet Get-BitLockerVolume.  

-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.

Esempi

Esempio 1
Disable-BitLockerAutoUnlock -MountPoint "E:"
Questo comando disabilita lo sblocco automatico per il volume BitLocker specificato.
Disable-BitLockerAutoUnlock
FIG 1 - Disable-BitLockerAutoUnlock






venerdì 27 maggio 2022

PowerShell: Rimuovere tutte le chiavi di sblocco automatico di BitLocker

Il cmdlet Clear-BitLockerAutoUnlock rimuove tutte le chiavi di sblocco automatico utilizzate da BitLocker Drive Encryption. BitLocker memorizza queste chiavi per le unità dati fisse di un sistema su un volume che ospita un volume del sistema operativo abilitato a BitLocker, in modo tale da poter sbloccare automaticamente i volumi delle unità fisse e removibili del sistema. Questo rende più facile per gli utenti l'accesso ai volumi di dati.

BitLocker può essere configurato per sbloccare automaticamente i volumi che non ospitano un sistema operativo. Dopo che un utente sblocca il volume del sistema operativo, BitLocker usa informazioni criptate memorizzate nel registro e nei metadati del volume per sbloccare qualsiasi volume di dati che usa lo sblocco automatico.

Prima di poter disabilitare BitLocker utilizzando il cmdlet Disable-BitLocker, è necessario rimuovere le chiavi di sblocco automatico. È possibile usare il cmdlet Disable-BitLockerAutoUnlock per rimuovere le chiavi per volumi specifici che usano lo sblocco automatico invece di tutti i volumi.

Sintassi

Clear-BitLockerAutoUnlock []

Esempi

Esempio 1
Clear-BitLockerAutoUnlock
Questo comando cancella tutte le chiavi di sblocco automatico memorizzate nel computer corrente.




giovedì 19 maggio 2022

PowerShell: Ripristinare l'accesso ai dati su un volume BitLocker

Il cmdlet Unlock-BitLocker ripristina l'accesso ai dati crittografati su un volume che utilizza BitLocker Drive Encryption. Per impedire l'accesso si può utilizzare il cmdlet Lock-BitLocker.

Per ripristinare l'accesso è necessario specificare il protettore della chiave per il volume che può essere uno de seguenti:
  • Account Active Directory Domain Services (AD DS);
  • Password;
  • Chiave di recupero;
  • Password di recupero.

Sintassi

Unlock-BitLocker
      [-MountPoint] <String[]>
      -Password <SecureString>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Unlock-BitLocker
      [-MountPoint] <String[]>
      -RecoveryPassword <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Unlock-BitLocker
      [-MountPoint] <String[]>
      -RecoveryKeyPath <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Unlock-BitLocker
      [-MountPoint] <String[]>
      [-AdAccountOrGroup]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
  

Parametri

-AdAccountOrGroup
Indica che BitLocker richiede le credenziali dell'account per sbloccare il volume. Per utilizzare questo parametro, l'account dell'utente corrente deve essere un protettore di chiavi per il volume.

-Confirm
Chiede conferma prima di eseguire il cmdlet.  

-MountPoint
Specifica un array di lettere di unità o di oggetti volume BitLocker. Il cmdlet sblocca i volumi specificati. Per ottenere un oggetto volume BitLocker si può utilizzare il cmdlet Get-BitLockerVolume.

-Password
Specifica una stringa sicura che contiene una password. La password specificata funge da protezione per la chiave di crittografia del volume.

-RecoveryKeyPath
Specifica il percorso di una cartella in cui sono memorizzate le chiavi di recupero. La chiave memorizzata nel percorso specificato, se trovata, funge da protezione per la crittografia del volume.

-RecoveryPassword
Specifica una password di recupero. La password specificata funge da protezione per la chiave di crittografia del volume.

-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.

Esempi

Esempio 1
$SecureString = ConvertTo-SecureString "123456" -AsPlainText -Force
Unlock-BitLocker -MountPoint "E:" -Password $SecureString
Questo esempio sblocca un volume BitLocker specificato usando una password.
Il primo comando usa il cmdlet ConvertTo-SecureString per creare una stringa sicura che contiene una password e la salva nella variabile $SecureString.
Il secondo comando sblocca il volume BitLocker specificato utilizzando la password salvata nella variabile $SecureString.


Esempio 2
Unlock-BitLocker -MountPoint "E:" -RecoveryKeyPath "C:\temp\2CEC9CE8-7638-4123-A976-3FD7359E675F.BEK
Sblocca il volume BitLocker specificato utilizzando la chiave di recupero indicata dal parametro -RecoveryKeyPath
Unlock-BitLocker
FIG 1 - Unlock-BitLocker






martedì 17 maggio 2022

PowerShell: Impedire l'accesso ai dati crittografati su un volume BitLocker

Il cmdlet Lock-BitLocker impedisce l'accesso a tutti i dati crittografati su un volume che utilizza BitLocker Drive Encryption. Per ripristinare l'accesso si utilizza il cmdlet Unlock-BitLocker.
Il cmdlet richiede di specifcare il volume da bloccare indicando la lettera dell'unità o un'oggetto volume BitLocker. Con Lock-BitLocker non è possibile bloccare un volume che ospita il sistema operativo. Se si tenta di bloccare un volume già bloccato non viene eseguita alcuna operazione.


Sintassi

Lock-BitLocker
    [-MountPoint] <String[]>
    [-ForceDismount]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Parametri

-Confirm
Chiede conferma prima di eseguire il cmdlet.

-ForceDismount
Specificando tale parametro, il cmdlet tenta di bloccare l'unità anche se è in uso.

-MountPoint
Specifica un array di lettere di unità o di oggetti volume BitLocker. Il cmdlet tenta di bloccare i volumi specificati. 

-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.


Esempi

Esempio 1
Lock-BitLocker -MountPoint "E:" -ForceDismount
Questo comando blocca il volume BitLocker specificato con il parametro MountPoint. Il comando utilizza il parametro ForceDismount per bloccare il volume anche se è in uso.

Lock-BitLocker
FIG 1 - Lock-BitLocker





venerdì 13 maggio 2022

PowerShell: Abilitare BitLocker tramite il cmdlet Enable-BitLocker

Il cmdlet Enable-BitLocker permette l'abilitazione di BitLocker Drive Encryption per uno specifico volume.
Per abilitare la crittografia tramite BitLocker, è necessario indicare un volume, l'eventuale metodo di crittografia desiderato e la protezione della chiave. Il volume può essere specificato tramite la lettera dell'unità o specificando un oggetto volume BitLocker. Per quanto riguarda il metodo di crittografia, è possibile scegliere tra gli algoritmi Advanced Encryption Standard (AES) AES-128 o AES-256, oppure utilizzare la crittografia hardware se supportata dall'hardware del disco. BitLocker usa un protettore di chiavi per cifrare la chiave di crittografia del volume. Quando un utente accede a un'unità crittografata con BitLocker, come all'avvio del computer, BitLocker richiede il relativo protettore di chiave che può essere, per esempio, un PIN richiesto all'utente oppure un'unità USB contenente la chiave. BitLocker decifra la chiave di crittografia e la usa per leggere i dati dall'unità. Per la protezione della chiave può essere utilizzato uno dei seguenti metodi o una loro combinazione:
  • Trusted Platform Module (TPM). BitLocker usa il TPM del computer per proteggere la chiave di crittografia. Gli utenti potranno accedere all'unità crittografata finché è collegata alla scheda di sistema che ospita il TPM e l'integrità dell'avvio del sistema è intatta. In generale, le protezioni basate sul TPM possono essere associate solo a un volume del sistema operativo.
  • TPM e numero di identificazione personale (PIN). BitLocker usa una combinazione di TPM e un PIN fornito dall'utente. Un PIN è composto da quattro a venti caratteri (numeri, simboli, lettere, spazi).
  • TPM, PIN e chiave di avvio. BitLocker utilizza una combinazione di TPM, un PIN fornito dall'utente e un input da un dispositivo di memoria USB che contiene una chiave esterna.
  • TPM e chiave d'avvio. BitLocker usa una combinazione di TPM e input da un dispositivo di memoria USB.
  • Chiave d'avvio. BitLocker usa l'input da un dispositivo di memoria USB che contiene la chiave esterna.
  • Password. BitLocker usa una password.
  • Chiave di recupero. BitLocker usa una chiave di recupero memorizzata come file specificato.
  • Password di recupero. BitLocker usa una password di recupero.
  • Account Active Directory Domain Services (AD DS). BitLocker usa l'autenticazione del dominio.

Per aggiungere un nuovo protettore dopo aver abilitato la crittografia del volume è possibile utilizzare il cmdlet Add-BitLockerKeyProtector.

Per un protettore di password o chiave pin si può creare un stringa sicura tramite l'utilizzo del cmdlet ConvertTo-SecureString. Le stringhe sicure possono essere utilizzate all'interno di script mantenendo la riservatezza delle password.

Il cmdlet Enable-BitLocker restituisce un oggetto volume BitLocker. Se viene impostata la password di recupero come protezione della chiave ma non viene esplicitamente specificata, questo cmdlet provvederà a generarne una in maniera casuale di 48 cifre. Il cmdlet memorizza la password come campo RecoveryPassword dell'attributo KeyProtector dell'oggetto volume BitLocker.

Se viene utilizzata la chiave di avvio o la chiave di recupero come parte del protettore di chiavi, è opportuno fornire un percorso in cui memorizzare la chiave. In questo caso il cmdlet memorizzerà il nome del file che contiene la chiave nel campo KeyFileName del campo KeyProtector nell'oggetto volume BitLocker.

Se si usa il cmdlet Enable-BitLocker su un volume crittografato o su un volume con crittografia in corso, esso non compie alcuna azione. Se il cmdlet viene utilizzato su un'unità che ha la crittografia in pausa, riprende la crittografia sul volume.

Per impostazione predefinita, questo cmdlet cripta l'intera unità. Per crittografare solo lo spazio usato nel disco è necessario specificare il parametro UsedSpaceOnly. Questa opzione può ridurre significativamente il tempo di crittografia.

È una pratica comune aggiungere una password di recupero a un volume del sistema operativo utilizzando il cmdlet Add-BitLockerKeyProtector, salvare la password di recupero utilizzando il cmdlet Backup-BitLockerKeyProtector, e infine abilitare BitLocker per l'unità. Questa procedura assicura un'opzione di recupero.



Sintassi

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-PasswordProtector]
      [[-Password] <SecureString>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-RecoveryPasswordProtector]
      [[-RecoveryPassword] <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-StartupKeyProtector]
      [-StartupKeyPath] <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-StartupKeyPath] <String>
      [-TpmAndStartupKeyProtector]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-StartupKeyPath] <String>
      [-TpmAndPinAndStartupKeyProtector]
      [[-Pin] <SecureString>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-AdAccountOrGroupProtector]
      [-Service]
      [-AdAccountOrGroup] <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [[-Pin] <SecureString>]
      [-TpmAndPinProtector]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-TpmProtector]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Enable-BitLocker
      [-MountPoint] <String[]>
      [-EncryptionMethod <BitLockerVolumeEncryptionMethodOnEnable>]
      [-HardwareEncryption]
      [-SkipHardwareTest]
      [-UsedSpaceOnly]
      [-RecoveryKeyProtector]
      [-RecoveryKeyPath] <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]   



Parametri

-AdAccountOrGroup
Specifica un account usando il formato Domain\User. Questo cmdlet aggiunge l'account specificato come key protector per la chiave di crittografia del volume.

-AdAccountOrGroupProtector
Indica che BitLocker usa un account AD DS come protezione per la chiave di crittografia del volume.

-Confirm
Chiede conferma prima di eseguire il cmdlet.

-EncryptionMethod
Permette di specificare un metodo di crittografia da utilizzare. I valori accettabili per questo parametro sono:
  • Aes128
  • Aes256
  • Hardware

-HardwareEncryption
Indica che il volume utilizza la crittografia hardware.

-MountPoint
Specifica un array di lettere di unità o di oggetti volume BitLocker. Questo cmdlet abilita la protezione per i volumi specificati. Per ottenere un oggetto volume BitLocker viene utilizzato il cmdlet Get-BitLockerVolume.

-Password
Specifica un oggetto secure string che contiene una password. La password specificata funge da protezione per la chiave di crittografia del volume.

-PasswordProtector
Indica che BitLocker usa una password come protezione per la chiave di crittografia del volume.

-Pin
Specifica un oggetto stringa sicura che contiene un PIN. BitLocker usa il PIN specificato, con altri dati, come protezione per la chiave di crittografia del volume.

-RecoveryKeyPath
Specifica il percorso di una cartella. Questo parametro aggiunge una chiave di recupero generata casualmente come protezione per la chiave di crittografia del volume e la memorizza nel percorso specificato.

-RecoveryKeyProtector
Indica che BitLocker usa una chiave di recupero come protezione per la chiave di crittografia del volume.

-RecoveryPassword
Specifica una password di recupero. Se tale parametro non viene specificato ma viene incluso il parametro RecoveryPasswordProtector, il cmdlet crea una password casuale. É possibile inserire una password di 48 cifre. La password specificata o creata funge da protezione per la chiave di crittografia del volume.

-RecoveryPasswordProtector
Indica che BitLocker utilizza una password di recupero come protezione per la chiave di crittografia del volume.

-Service
Indica che l'account di sistema di questo computer sblocca il volume cifrato.

-SkipHardwareTest
Indica che BitLocker non esegue un test dell'hardware prima di iniziare la crittografia. BitLocker usa un test dell'hardware come una prova generale per assicurarsi che tutti i protettori di chiavi siano impostati correttamente e che il computer possa partire senza problemi.

-StartupKeyPath
Specifica un percorso per una chiave di avvio. La chiave memorizzata nel percorso specificato funge da protezione per la chiave di crittografia del volume.

-StartupKeyProtector
Indica che BitLocker usa una chiave di avvio come protezione per la chiave di crittografia del volume.

-TpmAndPinAndStartupKeyProtector
Indica che BitLocker usa una combinazione di TPM, un PIN e una chiave di avvio come protezione per la chiave di crittografia del volume.

-TpmAndPinProtector
Indica che BitLocker usa una combinazione di TPM e un PIN come protezione per la chiave di crittografia del volume.

-TpmAndStartupKeyProtector
Indica che BitLocker usa una combinazione di TPM e una chiave di avvio come protezione per la chiave di crittografia del volume

-TpmProtector
Indica che BitLocker usa il TPM come protezione per la chiave di crittografia del volume.

-UsedSpaceOnly
Indica che BitLocker cripta esclusivamente lo spazio utilizzato del volume.

-WhatIf
Mostra cosa accadrebbe se il cmdlet venisse eseguito. Il cmdlet non viene eseguito.


Esempi

Esempio 1
Enable-BitLocker -MountPoint "E:" -EncryptionMethod Aes128 -RecoveryKeyPath "C:\Temp\" -RecoveryKeyProtector
Questo cmdlet abilita la crittografia sul volume E: utilizzando l'algoritmo AES128. Con il parametro -RecoveryKeyPath viene specificato un percorso per una cartella in cui la chiave di recupero generata casualmente sarà memorizzata. Il parametro -RecoveryKeyProtector indica che questi volumi utilizzano una chiave di recupero come protezione della chiave.

Enable-BitLocker
FIG 1 - Enable-BitLocker



Esempio 2
$SecureString = ConvertTo-SecureString "12345" -AsPlainText -Force
Enable-BitLocker -MountPoint "C:" -EncryptionMethod Aes256 -UsedSpaceOnly -Pin $SecureString -TPMandPinProtector
Questo esempio abilita BitLocker per un'unità specificata usando il TPM e un PIN per la protezione della chiave.
Il primo comando usa il cmdlet ConvertTo-SecureString per creare una stringa sicura contenente un PIN e la memorizza nella variabile $SecureString
Il secondo comando abilita la crittografia BitLocker per il volume identificato dalla lettera C:. Viene specificato l'algoritmo Aes256 per la crittografia e il PIN salvato nella variabile $SecureString. Il parametro -UsedSpaceOnly consente di criptare solo i dati dello spazio utilizzato sul disco, invece che l'intero volume, mentre -TPMandPinProtector specifica che il volume utilizza una combinazione di TPM e PIN come protezione della chiave.