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

giovedì 13 febbraio 2020

Windows Server 2019: Creazione gruppi in Active Directory

Lo scopo principale della creazione di gruppi in Active Directory è quello raccogliere e organizzare account utenti, account computer e altri gruppi in unità gestibili. Lavorare con i gruppi invece che con i singoli account semplifica notevolmente la manutenzione e la gestione della rete: gli amministratori devono assegnare le autorizzazioni/permessi una sola volta al gruppo anziché più volte a ogni singolo utente. Ogni account aggiunto a un gruppo riceverà automaticamente i diritti/autorizzazioni assegnati al gruppo in Active Directory.



Tipi di gruppo

In Active Directory esistono due tipi di gruppi: Distribuzione e Sicurezza.

Gruppi di Distribuzione
I gruppi di Distribuzione vengono usati per la creazione di liste di distribuzione di posta elettronica. Possono essere utilizzati solo con le applicazioni di posta elettronica, come ad es. MS Exchange Server, per inviare email ad un gruppo di utenti. I gruppi di Distribuzione, non essendo abilitati per la sicurezza, non possono essere elencati all'interno delle liste di controllo di accesso discrezionale (discretionary access control list o DACL).


Gruppi di Sicurezza
I gruppi di Sicurezza vengono utilizzati per assegnare permessi agli utenti e/o per assegnare autorizzazioni sulle risorse condivise. I gruppi di Sicurezza sono elencati negli elenchi DACL che definiscono le autorizzazioni per risorse e oggetti.
Come per i gruppi di Distribuzione, anche i gruppi di Sicurezza possono essere usati come entità di posta elettronica. Inviando un messaggio di posta elettronica al gruppo questo verrà inviato a tutti i membri del gruppo.
In Active Directory sono già presenti dei gruppi di Sicurezza, ad es.  il gruppo Backup Operators. Un account utente aggiunto al gruppo Backup Operators sarà in grado di eseguire il backup e il ripristino di file/directory presenti sui Domain Controller.



Ambito di gruppo

I gruppi sono caratterizzati da un ambito che determina dove il gruppo può essere applicato all'interno della foresta o dominio. L'ambito di applicazione determina anche chi può essere membro di un gruppo. Microsoft non ha inserito molte limitazioni in Active Directory riguardo a come i gruppi possono essere annidati (nesting) tuttavia bisogna prestare molta attenzione nell'eseguire tale operazione. L'unico aiuto offerto in Active Drirectory per evitare potenziali rischi dovuti al nesting di gruppi di sicurezza è quello dell'ambito di gruppo.
All'interno di Active Directory è possibile trovare tre ambiti di gruppo: Globale, Locale al Dominio, Universale.

Globale
I gruppi con ambito globale vengono utilizzati per gestire gli account utente e gli account computer e possono includere altri gruppi con ambito globale appartenenti allo stesso dominio. Dato che non vengono replicati all'esterno del dominio di appartenenza, gli account di un gruppo con ambito globale possono essere modificati senza che questo crei traffico di replica verso il catalogo globale (global catalog). 
Possiamo pensare ai gruppi con ambito globale come a "gruppi di account" che includono utenti con uno o più punti in comune. Ad esempio, consideriamo il reparto Marketing di una società. Tutti gli utenti di tale reparto potranno essere inseriti all'interno di un gruppo globale chiamato "GRP_Marketing"

Locale al dominio (Domain Local)
Grazie alla loro flessibilità relativa alle restrizioni, i gruppi Locali al dominio sono ideali per definire e gestire l'accesso alle risorse all'interno del singolo dominio. In particolare, questi gruppi vengono utilizzati perché ad essi possono essere aggiunti gruppi del dominio principale, nonché gruppi di altri domini e foreste trusted. Generalmente vengono utilizzati per l'accesso diretto a specifiche risorse non archiviate in Active Directory come condivisioni su file server, code di stampa, ecc. E' sconsigliato utilizzare tale ambito per l'assegnazione di autorizzazioni sugli oggetti di Active Directory.
Se i gruppi di ambito globale possono essere considerati come "gruppi di account" allora possiamo considerare i gruppi di ambito locale come "gruppi di risorse". 
Supponiamo che agli utenti del gruppo GRP_Marketing dobbiamo concedere l'accesso ad una condivisione di file chiamata DocumentiMarketing (gruppo GRP_DocumentiMarketing). Annidando il gruppo globale "GRP_Marketing" all'interno del gruppo locale al dominio "GRP_DocumentiMarketing", abbiamo appena dato a tutti gli utenti del dipartimento di marketing l'accesso ai contenuti della condivisione. 


Universale
I gruppi universali sono utilizzati solo in ambienti multi-dominio. I gruppi con ambito universale sono disponibili solo in domini con modalità nativa e le appartenenze vengono memorizzate all'interno del catalogo globale. Proprio per questo motivo è sconsigliabile modificare frequentemente l'appartenenza di un gruppo con ambito universale in quanto ogni modifica apportata verrà replicata sull'intera foresta
Supponiamo di avere una rete con 2 domini USA e EUROPE e un global group GRP_Marketing in ciascun dominio; è possibile creare un universal group UGRP_MArketing che racchiuda i gruppi USA\GRP_Marketing e EUROPE\GRP_Marketing. Il gruppo universale UGRP_MArketing potrà essere utilizzato ovunque all'interno dell'infrastruttura.  


Nella seguente tabella, prelevata dalla documentazione Microsoft, vengono riportati gli ambiti di raggruppamento


Ambito Membri possibili Conversione ambiti Può concedere autorizzazioni Possibile membro di
Universale
Account da qualsiasi dominio della stessa foresta

Gruppi globali di qualsiasi dominio della stessa foresta

Altri gruppi universali di qualsiasi dominio della stessa foresta

Può essere convertito nell'ambito locale di dominio

Può essere convertito in ambito globale se il gruppo non è un membro di altri gruppi universali
In qualsiasi dominio della stessa foresta o delle foreste trusting
Altri gruppi universali della stessa foresta

Gruppi locali di dominio nella stessa foresta o nelle foreste trusting

Gruppi locali nei computer della stessa foresta o delle foreste trusting

Globale
Account dello stesso dominio

Altri gruppi globali dello stesso dominio
Può essere convertito in ambito universale se il gruppo non è membro di un altro gruppo globale
In qualsiasi dominio della stessa foresta o Trusted Domains o forests
Gruppi universali da qualsiasi dominio della stessa foresta

Altri gruppi globali dello stesso dominio

Gruppi locali di dominio da qualsiasi dominio della stessa foresta o da qualsiasi dominio di trusting
Dominio Locale
Account da qualsiasi dominio o da qualsiasi dominio attendibile

Gruppi globali da qualsiasi dominio o da qualsiasi dominio attendibile

Gruppi universali da qualsiasi dominio della stessa foresta

Altri gruppi locali di dominio dello stesso dominio

Account, gruppi globali e gruppi universali da altri insiemi di foreste e da domini esterni
Può essere convertito in ambito universale se il gruppo non contiene altri gruppi locali di dominio
All'interno dello stesso dominio
Altri gruppi locali di dominio dello stesso dominio

Gruppi locali nei computer dello stesso dominio, esclusi i gruppi incorporati con SID noti

Una struttura AD ben progettata prevede che agli utenti vengano forniti solo i permessi/abilitazioni strettamente necessari per l'accesso alle informazioni e alle risorse essenziali per lo svolgimento del proprio lavoro. I modelli di sicurezza basati su ruoli, attributi e risorse sono tutti modi diversi che le organizzazioni utilizzano per raggiungere tale obiettivo in tutta l'infrastruttura IT e i tipi e l'ambito dei gruppi ricoprono un ruolo fondamentale. I modelli strutturali di best practice suggeriti da Microsoft per l'architettura Active Directory sono due: AGDLP e AGUDLP.
  • AGDLP (Accounts, Global, Domain Local, Permissions) fornisce una guida su come aggiungere i gruppi all'interno degli altri senza compromettere la sicurezza o sacrificare l'efficienza operativa. Il modello prevede quanto segue: Gli account utente e computer dovrebbero essere membri di gruppi globali, che a loro volta possono essere membri di gruppi locali di dominio che descrivono i permessi delle risorse.
  • AGUDLP (Accounts, Global, Universal, Domain Local, Permissions), come intuibile dal nome, è molto simile a AGDLP ma la "U" introduce i gruppi in ambito Universale. Le appartenenze di tali gruppi sono memorizzate nel catalogo globale, che è più che altro una necessità in ambienti multi-dominio. L'uso di questo modello dipende in realtà da quanto si fa affidamento sul catalogo globale nell'organizzazione. Se c'è un interesse personale ad avere il catalogo globale il più completo possibile (ad es. nel caso in cui bisogna gestire molti dipendenti mobile e permettere loro di ricercarsi l'un l'altro facilmente tramite Outlook), allora il modello AGUDLP aiuterà a raggiungere lo scopo. Tuttavia, per gli ambienti più piccoli che hanno solo un singolo dominio questo modello può aggiungere un inutile livello di complessità.


La ragione per cui i modelli strutturali AGDLP e AGUDLP suggeriti da Microsoft sono la migliore soluzione da adottare, almeno nella gran parte dei casi, è duplice. Dal punto di vista della sicurezza, utilizzando gruppi locali di domini per concedere permessi a risorse specifiche, un amministratore può dare ai membri di altri domini e foreste l'accesso alla risorsa senza dover dare loro accesso diretto al resto del dominio in cui risiede la risorsa. In questo modo si evita di aggiungere utenti di altri domini e foreste al dominio in cui risiede la risorsa. Dal punto di vista operativo, i modelli AGDLP e AGUDLP facilitano anche la gestione dei membri del gruppo consentendo di gestire i permessi e l'organizzazione degli utenti separatamente.
I modelli strutturali suggeriti da Microsoft non sempre rappresentano la migliore soluzione. In infrastrutture molto grandi l'uso dei gruppi locali al dominio per la gestione dei permessi delle risorse può portare alla generazione di un numero molto elevato di gruppi e, di conseguenza, ciò potrebbe portare un utente a diventare membro di migliaia di gruppi.




Creare un gruppo tramite il Centro di amministrazione di Active Directory

  • Da Server Manager cliccare sul menu Strumenti e selezionare Centro di amministrazione di Active Directory. In alternativa premere la combinazione di tasti WIN+R, digitare dsac.exe e premere invio.
    Windows Server 2019, Centro di amministrazione di Active Directory
    FIG 1 - Windows Server 2019, Centro di amministrazione di Active Directory
  • Espandere il dominio mycompany.local quindi cliccare con il tasto destro sull'unità organizzativa Marketing e selezionare Nuovo->Raggruppa.
    Centro di amministrazione di Active Directory, nuovo gruppo
    FIG 2 - Centro di amministrazione di Active Directory, nuovo gruppo
  • Nella casella Nome gruppo inserire il nome da assegnare al gruppo (ad es. GRP_Marketing).
  • Come Tipo gruppo lasciare selezionato Sicurezza e come Ambito del gruppo lasciare attiva l'opzione Globale.
    Centro di amministrazione di Active Directory, Crea Raggruppa
    FIG 3 - Centro di amministrazione di Active Directory, Crea Raggruppa
  • Cliccare su OK per completare la creazione del gruppo.
    Centro di amministrazione di Active Directory, Gruppo GRP_Marketing
    FIG 4 - Centro di amministrazione di Active Directory, Gruppo GRP_Marketing



Creare un gruppo tramite Utenti e computer di Active Directory

  • Da Server Manager cliccare sul menu Strumenti e selezionare Utenti e Computer di Active Directory (Active Directory Users and Computers). In alternativa premere la combinazione di tasti WIN+R digitare dsa.msc e premere invio.
    Server Manager, Strumenti, Utenti e computer di Active Directory
    FIG 5 - Server Manager, Strumenti, Utenti e computer di Active Directory
  • Espandere il dominio mycompany.local quindi cliccare con il tasto destro sull'unità organizzativa Marketing e selezionare Nuovo->Gruppo.
    Utenti e computer di Active Directory, nuovo gruppo
    FIG 6 - Utenti e computer di Active Directory, nuovo gruppo
  • Nella casella Nome gruppo inserire il nome da assegnare al gruppo (ad es. GRP_Marketing), come Tipo gruppo lasciare selezionato Sicurezza e come Ambito del gruppo lasciare attiva l'opzione Globale.
    Utenti e computer di Active Directory, Nuovo oggetto gruppo
    FIG 7 - Utenti e computer di Active Directory, Nuovo oggetto gruppo
  • Cliccare su OK per la creazione del gruppo.
    Utenti e computer di Active Directory, Gruppo GRP_Marketing
    FIG 8 - Utenti e computer di Active Directory, Gruppo GRP_Marketing





Creare un gruppo tramite PowerShell

Per creare un gruppo in Active Directory tramite PowerShell è necessario utilizzare il cmdlet New-ADGroup

Sintassi
La sintassi del comando è la seguente
New-ADGroup
   [-WhatIf]
   [-Confirm]
   [-AuthType <ADAuthType>]
   [-Credential <PSCredential>]
   [-Description <String>]
   [-DisplayName <String>]
   [-GroupCategory <ADGroupCategory>]
   [-GroupScope] <ADGroupScope>
   [-HomePage <String>]
   [-Instance <ADGroup>]
   [-ManagedBy <ADPrincipal>]
   [-Name] <String>
   [-OtherAttributes <Hashtable>]
   [-PassThru]
   [-Path <String>]
   [-SamAccountName <String>]
   [-Server <String>]

   [<CommonParameters>]

Parametri

-AuthType 
Specifica il metodo di autenticazione. I valori accettati dal parametro sono:
  • Negotiate oppure 0 (default)
  • Basic oppure 1

-Confirm
Se specificato, tale parametro mostra la richiesta di conferma prima di eseguire il cmdlet.

-Credential
Specifica un'account utente che ha i permessi necessari per eseguire l'operazione. 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.

-Description
Permette di specificare la descrizione dell'oggetto. 

-DisplayName
Specifica il display name dell'oggetto.

-GroupCategory
Con questo parametro si va a specificare il tipo di gruppo. I valori accettati sono:
  • Distribution oppure 0
  • Security oppure 1

-GroupScope
Il parametro specifica l'ambito del gruppo. I valori accettati sono:
  • DomainLocal o 0
  • Global o 1
  • Universal o 2

-HomePage
Permette di specificare l'URL della home page dell'oggetto.

-Instance
Specifica l'istanza di un oggetto di tipo gruppo da usare come template per la creazione di un nuovo gruppo.
E' possibile utilizzare un gruppo già esistente o costruirne uno nuovo utilizzando PowerShell.

Metodo 1: Utilizzare il cmdlet Get-ADGroup per recuperare un oggetto gruppo esistente per poi passarlo al parametro Instance del cmdlet New-ADGroup per creare un nuovo oggetto gruppo. È possibile sovrascrivere i valori delle proprietà del nuovo oggetto impostando i parametri appropriati.

Metodo 2: Creare un nuovo oggetto ADGroup e impostare i valori delle proprietà utilizzando l'interfaccia a riga di comando di PowerShell. Quindi passare questo oggetto al parametro Instance del cmdlet New-ADGroup per creare il nuovo oggetto gruppo.

-ManagedBy
Permette di specificare l'utente o il gruppo che gestisce l'oggetto. L'utente o il gruppo può essere indicato passando al parametro:
  • Distinguished name;
  • GUID (objectGUID)
  • Security identifier (objectSid)
  • SAM account name (sAMAccountName)

-Name
Il parametro permette di impostare il nome dell'oggetto.

-OtherAttributes
Specifica i valori degli attributi degli oggetti per gli attributi che non sono rappresentati dai parametri del cmdlet. 
Per specificare un singolo valore per un attributo
-OtherAttributes @{'AttributeLDAPDisplayName'=value}
Per specificare valori multipli per un attributo
-OtherAttributes @{'AttributeLDAPDisplayName'=value1,value2,...}
Per specificare valori per più attributi è necessario separare gli attributi da un punto e virgola
-OtherAttributes @{'Attribute1LDAPDisplayName'=value; 'Attribute2LDAPDisplayName'=value1,value2;...}

-PassThru
Restituisce un oggetto che rappresenta l'item su cui si sta lavorando. Per impostazione predefinita, il cmdlet non genera alcun output.

-Path
Specifica il path X.500 dell'unità organizzativa o del container dove verrà creato il nuovo oggetto.

-Server
Permette di specificare l'istanza di Active Directory Domain Services a cui connettersi per la creazione di un nuovo gruppo.

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


Creare un gruppo in Active Directory tramite New-ADGroup
Per creare il gruppo GRP_Marketing all'interno della OU Marketing, avviare Windows PowerShell (amministratore) ed eseguire il comando
New-ADGroup -GroupCategory:"Security" -GroupScope:"Global" -Name:"GRP_Marketing" -Path:"OU=Marketing,DC=mycompany,DC=local" -SamAccountName:"GRP_Marketing" -Server:"Server1DC.mycompany.local"

Windows Server 2019, Creare un gruppo in Active Directory tramite PowerShell
FIG 9 - Windows Server 2019, Creare un gruppo in Active Directory tramite PowerShell



Come già visto per gli account utente nell'articolo Windows Server 2019: Aggiungere un account utente al dominio, per velocizzare la creazione di numerosi gruppi è possibile creare un file CSV con i valori dei parametri (FIG 10).
File CSV contenente l'elenco dei gruppi da creare
FIG 10 - File CSV contenente l'elenco dei gruppi da creare

Una volta creato il file sul server (nell'esempio al file è stato assegnato il nome GroupAD.csv e copiato in C:\) andremo ad eseguire il seguente comando in Windows PowerShell (amministratore) che aggiunge i gruppi elencati all'interno del file al dominio.
Import-Csv -Path C:\GroupAD.csv | ForEach-Object {New-ADGroup -GroupCategory:$_.GroupCategory -GroupScope:$_.GroupScope -Name:$_.Name -Path:$_.Path -SamAccountName:$_.SamAccountName -Server:$_.Server}
PowerShell, import del file CSV e creazione dei gruppi in AD
FIG 11 - PowerShell, import del file CSV e creazione dei gruppi in AD

Il file CSV e il file di testo contenente il comando in PowerShell possono essere scaricati dal seguente link
DOWNLOAD