Quando si configura un Active Directory, una delle prime cose da fare è mappare automaticamente una o più unità di rete quando gli utenti accedono.
Come promemoria, un’unità di rete è una condivisione presentata a una workstation/utente sotto forma di lettera come un disco rigido/chiave USB….
In questo tutorial, ti mostrerò due modi per mappare un’unità di rete, tramite GPO e utilizzando uno script che deve essere eseguito all’accesso, quindi utilizzando anche i criteri di gruppo.
Attraverso questo tutorial, vedremo che il risultato è lo stesso.
La mappatura delle unità di rete in base ai criteri di gruppo ha diversi vantaggi per me:
- Vengono aggiornati regolarmente dalle workstation client ed è possibile forzare l’aggiornamento tramite il comando
gpupdate
. - Utilizzo di una console grafica
- Molte opzioni di filtro (anche senza script puoi fare la stessa cosa).
- Registrazione degli eventi in Windows Observer che consente un rapido debug.
Lo script di accesso è sicuramente configurato in un criterio di gruppo, ma il comando gpupdate non consente di riprodurre lo script, è indispensabile chiudere e quindi riaprire la sessione per applicare nuovamente lo script e avere quello nuovo.unità di rete o modifica di esso.
Prerequisiti :
- Essere in un ambiente Active Directory.
- Avere una cartella condivisa accessibile agli utenti a cui verrà mappata.
Oggetto Criteri di gruppo – Criteri di gruppo
1. Apri l’Editor criteri di gruppo su un controller di dominio.
2. Crea un nuovo criterio, fai clic con il pulsante destro del mouse sul nome di dominio 1 o su un’unità organizzativa e fai clic su Crea un oggetto GPO in questo dominio e collega qui 2.
3. Date un nome con strategia e cliccate su OK 1.
4. Fare clic con il tasto destro sulla strategia 1 e
5. Vai su Configurazione utente / Preferenze / Impostazioni di Windows e fai doppio clic su Mappature unità 1.
6. Fare clic con il pulsante destro del mouse su Nuovo 1/Unità mappata 2.
7. Compila il modulo :
- 1 Inserisci la posizione della condivisione di rete
- 2 Indica la lettera utilizzata
- 3 Applicare
- 4 OK
- A e B per etichettare l’unità di rete
8. Drive 1 dovrebbe essere visibile in Drive Mappings.
9. Riepilogo oggetto Criteri di gruppo, per impostazione predefinita l’unità è mappata a tutti gli utenti.
Limita la mappatura a un gruppo
In questa parte vedremo come limitare la mappatura a un gruppo di utenti utilizzando il Targeting a livello di elemento.
È anche possibile limitare l’esecuzione della politica a livello di filtro di sicurezza, che implica la creazione di una politica per lettore.
Il targeting a livello di elemento non limita i diritti sulla condivisione, devi comunque configurare i diritti NTFS sulla cartella.
1. Modifica la tua unità, fai clic con il pulsante destro del mouse su 1 e Proprietà.
2. Vai alla scheda Comune 1, seleziona “Targeting a livello di elemento” 2 e fai clic su Targeting 3.
3. Fare clic su Nuovo elemento 1 e selezionare Gruppo di sicurezza 2.
4. Aggiungi il tuo gruppo 1 e fai clic su OK 2.
5. Al termine, l’unità P verrà mappata solo agli utenti che si trovano nel gruppo Grp_Partage_RW. Se torni alla panoramica delle impostazioni dei criteri, puoi vedere gli elementi del targeting 1.
sceneggiatura
1. Creare un nuovo file che deve avere l’estensione vbs.
2. Modifica il file (Notepad ++, notepad…) e aggiungi i codici seguenti:
' En cas d erreur le script continue
On error resume next
' Declaration des variables
Dim WshNetwork
' Declaration des objets
Set WshNetwork = WScript.CreateObject("WScript.Network")
' Mappage du lecteur P
WshNetwork.MapNetworkDrive "P:", "\\LAB-AD1\partage", true
3. Aggiungi script all’accesso ai Criteri di gruppo per eseguire il mapping dell’unità di rete.
Limita la mappatura a un gruppo per script
Come con l’oggetto Criteri di gruppo, ora modificheremo lo script per limitare la mappatura dell’unità di rete al gruppo Grp_partage_RW.
1. Modifica file:
'En cas d erreur le script continue
On error resume next
' Declaration des variables
Dim WshNetwork,oShell
' Declaration des objets
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set oShell = CreateObject("WScript.Shell")
' Mappage du lecteur P
If isMember("Grp_Partage_RW") Then
WshNetwork.MapNetworkDrive "P:", "\\LAB-AD1\partage", true
End If
'#####################################################
' Functions secondaires
'#####################################################
Function IsMember(groupName)
If IsEmpty(groupListD) then
Set groupListD = CreateObject("Scripting.Dictionary")
groupListD.CompareMode = 1
ADSPath = EnvString("userdomain") & "/" & EnvString("username")
Set userPath = GetObject("WinNT://" & ADSPath & ",user")
For Each listGroup in userPath.Groups
groupListD.Add listGroup.Name, "-"
Next
End if
IsMember = CBool(groupListD.Exists(groupName))
End Function
Function EnvString(variable)
variable = "%" & variable & "%"
EnvString = oShell.ExpandEnvironmentStrings(variable)
End Function
Come puoi vedere, sono state aggiunte due funzioni alla fine del codice, che consentono la verifica dell’appartenenza al gruppo dell’utente loggato. La mappatura dell’unità è ora condizionale (if).
Conclusione
Oggetto Criteri di gruppo o script, entrambe le soluzioni funzionano, tutto dipende da cosa preferisci. Se opti per lo script, commenta bene il tuo codice.