• Aucun résultat trouvé

C3 / Powershell - Gestion de l'ad

N/A
N/A
Protected

Academic year: 2022

Partager "C3 / Powershell - Gestion de l'ad"

Copied!
18
0
0

Texte intégral

(1)

C3 / Powershell - Gestion de l'AD

1 Introduction

A partir de la version 3.0 de Powershell, il n’est plus nécessaire d’importer le module Active Directory afin de pouvoir s’en servir.

• Pour vérifier que le module Active Directory est importé : Get-Module ActiveDirectory

• Pour importer le module Active Directory : Import-Module ActiveDirectory

• Lister les commandes du module Active Directory : Get-Command -Module ActiveDirectory

2 La recherche d'objets

La recherche d’objets avec les commandes Active Directory peut s’effectuer de 3 façons :

• Recherche basée sur la réalisation d’un filtre LDAP (paramètre -LDAPFilter).

• Recherche basée sur la réalisation d’un filtre générique (paramètre -Filter).

• Recherche basée sur une identité connue à l’avance (paramètre -Identity).

La plupart des commandes AD possède ces trois paramètres.

2.1 Filtrer avec -LDAPFilter

Les filtres de type LDAP peuvent être créés au moyen de la fonctionnalité « Requête » du module

« Utilisateurs et ordinateurs Active Directory »

2.2 Filtrer avec le filtre générique -Filter

Le paramètre -Filter prend en entrée une chaîne de caractères. La syntaxe de cette chaine de caractères est celle du langage des expressions PowerShell et utilise la notation BNF (Backus-Naur Form). cf. https://technet.microsoft.com/en-us/library/hh531527(v=ws.10).aspx

• Ne pas filtrer : -Filter *

Exemple : Get-ADObject -Filter * → Permet d'obtenir tous les objets de l'AD

• Filtrer en testant une propriété d'un objet -Filter {nompropriété -eq valeur}

• Exemple : Get-ADObject -Filter {objectClass -eq ’computer’} → ermet d'afficher tous les objets de type (objecteClass) ordinateur (computer)

• Filtre partiel sur une chaine de caractères : -like (cf. C1 / Itroduction à Powershell)

• Exemple : Get-ADObject -Filter {(objectClass -eq ’computer’) -and (name -like ’*P409*’)} → Permet d'obtenir la liste des ordinateur dont le nom contient P409

• Filtre sur une valeur booléenne -Filter {nomproprité – eq 'valeur'} valeur pouvant prendre true ou false

(2)

Exemple Get-ADUser -filter {(Enabled -eq 'False')} → Permet de lister tous les utilisateurs désactivés (on aurait pu aussi utiliser la propriété disabled : Get- ADUser -disabled)

On peut aussi utiliser les variables prédéfinies $true et $false ? L'exemple précédent s'écrit alors : Get-ADUser -filter {(Enabled -eq $false)}

• Filtre pour tester si une propriété est null : -Filter {nompropriété -eq $nulll}

Remarque :

• Il est aussi possible de mettre un filtre dans une variable pour pouvoir l'appliquer ultérieurement.

Exemple :

$monFiltre = {(name -like ’Win*’) -and (enabled -eq ’False’)}

Get-ADComputer -Filter $monFiltre

2.3 Filtrer avec -Identity

Les filtres basés sur une identité permettent de s’adresser directement à un objet individuel dont l’identité est déjà connue.

Chaque type d’objet défini dans Active Directory possède des attributs d’identités qui lui sont propres.

Par exemple, un objet de type « compte d’ordinateur (ADComputer) » est caractérisé par les attributs suivants :

Attribut d’identification Description

DistinguishedName Identifiant LDAP, de la forme :

CN=nom,CN=Unité_Organisation,DC=Domaine ObjectGUID Identifiant Active Directory, de la forme :

c829051e-dea9-4245-b373-d381b9181cc9 SID Identifiant de sécurité, de la forme :

S-1-5-21-1005862844-2131066483-1759542542-1137 SAMAccountName Identifiant de compte, de la forme : NomDeCompte$

Mais il possède également d’autres attributs car un objet compte d’ordinateur hérite de la classe ADAccount, qui elle hérite de la classe ADPrincipal, qui à son tour hérite de ADObject, etc.

1. Exemple : test identity sur le DistinguishedName : Get-ADComputer -Identity

’CN=P409-01,CN=Computers,DC=darcvadaure,DC=lan’

2. Exmple : test identity sur le SID : Get-ADComputer -Identity ’S-1-5-21- 1005862844-2131066483-1759542542-1137’

3 Gestion des utilisateurs

3.1 Les commandes de gestion des utilisateurs pour l'AD

Pour la gestion des utilisateurs, on dispose des commandes suivantes :

Commande Description

(3)

Get-ADUser Obtient un ou plusieurs utilisateurs Active Directory.

Set-ADUser Modifie un utilisateur Active Directory.

New-ADUser Crée un utilisateur Active Directory.

Remove-ADUser Supprime un utilisateur Active Directory.

Get-ADUserResultantPasswordPolicy Obtient la stratégie de mot de passe résultante pour un utilisateur Active Directory.

3.2 Lister des utilisateurs : Get-ADUser

• Get-ADUser -Filter * → Liste tous les utilisateurs

• Get-ADUser -Filter * -SearchBase

’OU=EPN,DC=darcvadaure,DC=lan’ → liste des utilisateur de l'UO EPN sur le contrôleur de domaine darcvadaure.lan

• Get-ADUser -Identity hbrouard -Properties * → affiche l'utilisateur hbrouard avec tous ses attributs

• Pour obtenir une liste facilement interprétable d’utilisateurs, il est utile de formater le résultat sous forme de tableau : Get-ADUser -Filter * | Format-Table GivenName,Surname, Name, Sam*

Le résultat sera :

GivenName Surname Name SamAccountName --- --- ---- --- Administrateur Administrateur Invité Invité

krbtgt krbtgt Helene BROUARD Helene BROUARD hbrouard Voici quelques paramètres de la commande Get-ADUser :

Paramètre Description

-Filter { filtre } Spécifie un « filtre générique »

-LDAPFilter { filtreLDAP} Spécifie une condition LDAP utilisée pour filtrer des objets Active Directory.

-Identity identUtilisateur Spécifie un objet Active Directory en fournissant l’un de ses identifiants

-ResultPageSize nbObjets Spécifie le nombre d’objets à inclure dans une page pour une requête. Par défaut, 256 objets par page.

-ResultSetSize nbMaxObjets Spécifie le nombre maximal d’objets à retourner pour une requête. La valeur par défaut est $null, ce qui correspond à la valeur « tous les objets ».

-SearchBase chemindacces Spécifie un chemin d’accès Active Directory dans lequel effectuer les recherches.

-SearchScope Base ou :

-SearchScope OneLevel ou :

Spécifie la portée d’une recherche Active Directory. Une requête Base n’effectue des recherches que dans le chemin d’accès ou l’objet actuel. Une requête OneLevel effectue des recherches dans les enfants directs de ce chemin d’accès ou de

(4)

-SearchScope Subtree cet objet. Une requête Subtree effectue des recherches dans le chemin d’accès ou l’objet actuel et tous les enfants de ce chemin d’accès ou de cet objet. La portée par défaut est Subtree.

-Partition nomPartition Spécifie le nom unique d’une Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-Properties nomsProprietes Spécifie les propriétés de l’objet de sortie à récupérer. Utilisez ce paramètre pour récupérer des propriétés qui ne sont pas incluses dans le jeu par défaut.

Exemple : GetADUser -Identity fparis -Properties OfficePhone,Organization

→ Affiche les propriétés par défaut de la commande Get- ADUser ainsi que le n° de téléphone bureau et l'organisation.

Les propriétés de ce paramètre sont indiquées sous la forme d’une liste de noms séparés par des virgules. Pour afficher tous les attributs définis sur l’objet, spécifiez « * ».

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

Exemple :

GetADUser -Filter * -Server

"yodda.darcvadaure.lan"

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

Exemple :

GetADUser -Filter * -Credential

"darcvadaure.lan\Administrateur"

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate. Une connexion SSL nécessite une méthode d'authentification Basic.

3.3 Créer un utilisateur : New-ADUser

• New-ADUser -Name HBrouard → Crée un utilisateur dans le conteneur Users (car nous n’avons rien précisé) qui apparaîtra sous le nom de « HBrouard ». Il aura également par défaut un attribut SamAccountName qui prendra la valeur « HBrouard ».

• New-ADUser -SamAccountName hbrouard -Name ’Helene BROUARD’

-GivenName Helene -Surname BROUARD -DisplayName ’Hélène BROUARD’ -Description ’Prof !’ -HomeDrive ’H:’ -HomeDirectory

’\\YODDA\chef’ -Path ’OU=uoEPN,DC=darcvadaure,DC=lan’ → Crée l'utilisateur Hélène BROUARD dans l'UO uoEPN...

• New-ADUser -SamAccountName vdurand -Name ’Vincent DURAND’

-AccountPassword(ConvertTo-SecureString "DarcvadaurE1 ;"

(5)

-AsPlainText -Force) → Crée l'utilisateur Vincent DURAND avec le mot de passe crypté « DarcvadaurE1 ; ». On aurait pu aussi passer par du code intermédiaire pour crypter le mot de passe :

$motPasse = ’DarcvadaurE1 ;’

$motPasse = ConvertTo-SecureString $motPasse -AsPlainText -Force

New-ADUser -SamAccountName vdurand -Name ’Vincent DURAND’

-AccountPassword $motPasse

Voici quelques paramètres de la commande New-ADUser :

Paramètre Description

-SamAccountName nomCompteSAM Spécifie le nom du compte de sécurité SAM (nom de groupe antérieur à Windows 2000).

-Name nom Spécifie le nom de l’objet utilisateur -Surname nomFamille Spécifie le nom de famille de l’utilisateur.

-DisplayName nomAffiche Spécifie le nom d’affichage de l'utilisateur.

-GivenName prenom Spécifie le prénom de l’utilisateur.

-Description uneDescription Spécifie une description de l’objet.

-EmailAddress adressemail Spécifie l’adresse de messagerie de l’utilisateur.

-Enabled $true ou :

-Enabled $false

Spécifie si le compte doit être activé. Un compte activé requiert un mot de passe. Peut prendre les valeur

$true ou $false.

Exemple : New-ADUser -SamAccountName vdurand -Name ’Vincent DURAND’

-AccountPassword(ConvertTo-

SecureString "DarcvadaurE1 ;"

-AsPlainText -Force)-Enabled $true AccountPassword

motPasseSecurisé Spécifie une nouvelle valeur de mot de passe pour un compte. Cette valeur est stockée sous forme d’une chaîne sécurisée.

Exemple : cf. -Enabled -CannotChangePassword $true

ou :

-CannotChangePassword $false

Spécifie si le mot de passe du compte peut être modifié. Peut prendre les valeur $true ou $false.

-ChangePasswordAtLogon $true ou :

-ChangePasswordAtLogon $false

Spécifie si un mot de passe doit être modifié lors de la prochaine tentative d’ouverture de session. Peut prendre les valeur $true ou $false.

-PasswordNeverExpires $true ou :

-PasswordNeverExpires $false

Spécifie si le mot de passe du compte peut expirer.

Peut prendre les valeur $true ou $false.

-PasswordNotRequired $true ou :

-PasswordNotRequired $false

Spécifie si le compte requiert un mot de passe. Un mot de passe n’est pas nécessaire pour un nouveau compte.

Peut prendre les valeur $true ou $false.

-HomeDirectory nomRepertoire Spécifie le répertoire de base d’un utilisateur.

(6)

-HomeDrive lettreLecteur Spécifie un lecteur associé au chemin UNC défini par la propriété HomeDirectory.

-ProfilePath nomRepertoire Spécifie un chemin d’accès au profil de l’utilisateur.

-Path nomChemin Spécifie le chemin d’accès X.500 de l’unité d’organisation ou du conteneur où le nouvel objet est créé. Si cette valeur n’est pas précisée, avec AD DS les objets utilisateurs seront rangés dans l’unité d’organisation Users.

Exemple :

New-ADUser -SamAccountName hbrouard -Name ’Helene BROUARD’ -Path

’OU=uoEPN,DC=darcvadaure,DC=lan’ → Crée l'utilisateur Helene BROUARD dans l'UO uoEPN ScriptPath nomRepertoire Spécifie un chemin d’accès au script d’ouverture de

session de l’utilisateur.

Instance identifiantADUser Spécifie une instance d’un objet utilisateur à utiliser comme modèle pour un nouvel objet utilisateur.

Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

3.4 Modifier un ou des attributs d'un utilisateur : Set-ADUser

• Set-ADUser -Identity hbrouard -SamAccountName toto → le nom de compte windows 2000 devient toto

• Set-ADUser -Identity hbrouard -Replace @{

Description = ’Super prof !’ ; TelephoneNumber = ’0247474747’;

OtherTelephone = @(’0660606060’,’0654542313’)}

→ modifie la valeur des attributs Description, TelephoneNumber et OtherTelephone

• Set-ADUser -Identity hbrouard -Clear OtherTelephone → efface l'utilisateur hbrouard

• $utilisateur = Get-ADUser hbrouard -Properties mail,department,description

$utilisateur.mail = "[email protected]"

$utilisateur.department = 'Lycee PLC'

$utilisateur.description = 'super prof !' Set-ADUser -Identity $utilisateur

→ Modifie les attributs mail, department et description de l'utilisateur hbrouard

• Set-ADUser -Identity hbrouard -Remove

@{otherMailbox="helene.b"} -Add @{url="plc.fr"} -Replace

@{title="prof"} -Clear description → Modifie l'utilisateur hbrouard. En supprimant heleneb de la propriété otherMailbox, en ajoutant l'url plc.fr, en remplaçant le titre par prof et en vidant la description.

(7)

3.5 Modifier le mot de passe d'un utilisateur : Set-ADAccountPassword

La commande Set-ADUser ne peut pas être utilisé pour modifier le mot de passe d'un utilisateur, bien que celui-ci soit un attribut de l'objet ADUser. La commande Set-ADAccountPassword permet de définir un mot de passe pour un utilisateur, un ordinateur ou un compte de service.

$motPasse = ’DarcvadaurE1 ;’

$motPasse = ConvertTo-SecureString $motPasse -AsPlainText -Force

Set-ADAccountPassword -Identity hbrouard -NewPassword

$motPasse -Reset → modifie le mot de passe du compte hbrouard (le nouveau mot de passe est contenu dans la variable motPasse, qui devra être affectée au préalable)

Voici quelques paramètres de la commande Set-ADAccountPassword :

Paramètre Description

-Identity identUtilisateur Spécifie un objet Active Directory en fournissant l’une de ses valeurs de propriété permettant de l’identifier.

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate.

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

-NewPassword

motPasseSecurise Spécifie une valeur de nouveau mot de passe. Le mot de passe doit être sécurisé avec ConvertTo-SecureString OldPassword

ancienMotPasseSecurise Spécifie la valeur de mot de passe la plus récente. L'ancien mot de passe doit être sécurisé avec ConvertTo- SecureString

Partition nomPartition Spécifie le nom unique d’une partition Active Directory.

Spécifie le nom unique d’une partition Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-PassThru Retourne l’objet modifié. Par défaut (c’est-à-dire si -PassThru n’est pas spécifié), cette commande ne génère aucune sortie.

-Reset Spécifie la réinitialisation du mot de passe sur un compte.

Lorsque vous utilisez ce paramètre, vous devez définir le paramètre NewPassword. Il n’est pas obligatoire de spécifier le paramètre OldPassword.

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

(8)

3.6 Activer un compte utilisateur

Pour activer un compte existant, il faut affecter un mot de passe au compte (si il n'en n'a pas) puis activer le compte :

• $motPasse = ’DarcvadaurE1 ;’

$motPasse = ConvertTo-SecureString $motPasse -AsPlainText -Force

Set-ADAccountPassword -Identity hbrouard -NewPassword

$motPasse → Affecte un mot de passe

• Set-ADUser -Identity hbrouard -Enabled $true → Active le compte

3.7 Supprimer un utilisateur : Remove-ADUser

La commande Remove-ADUser nécessite qu’on passe à son paramètre Identity un objet de type ADUser.

• Remove-ADUser -Identity hbrouard → supprime l'utilisateur hbrouard

• Remove-ADUser -Identity hbrouard -Confirm:$false → supprime l'utilisateur hbrouard, sans demande de confirmation.

4 Gestion des UO

4.1 Les commandes de gestion des UO de l'AD

Pour la gestion des groupes, on dispose des commandes suivantes :

Commande Description

Get-ADOrganizationalUnit Liste les unités organisationnelles New-ADOrganizationalUnit Crée une unité organisationnelle Remove-ADOrganizationalUnit Supprime une unité organisationnelle Set-ADOrganizationalUnit Modifie une unité organisationnelle.

4.2 Liste des UO : Get-ADOrganizationalUnit

• Get-ADOrganizationalUnit -Filter * → Liste toutes les UO du domaine

• Get-ADOrganizationalUnit -Filter * | Format-Table Name, DistinguishedName → Liste toutes les UO du domaine au format tableau, en n'affichant que le nom et l'identifiant

• Get-ADOrganizationalUnit -Identity

'OU=uoEPN,OU=uoAssociation,DC=darcvadaure,DC=lan' → Affiche la sous UO uoAssociation de l'UO uoEPN.

• Get-ADOrganizationalUnit -Filter {Name -like '*Assoc*'}

-SearchBase 'OU=uoEPN,DC=darcvadaure,DC=lan' -SearchScope OneLevel → Affiche les UO (pur un niveau seulement) dont le nom contient Assoc et qui sont situées dans l'UO uoEPN du domaine darcvadaure.lan

Voici quelques paramètres de la commande Get-ADGroup :

(9)

Paramètre Description

-Filter { filtre } Spécifie un « filtre générique »

-LDAPFilter { filtreLDAP} Spécifie une condition LDAP utilisée pour filtrer des objets Active Directory.

-Identity identUO Spécifie une UO Active Directory en fournissant l’un de ses identifiants (DistinguishedName par exemple)

-ResultPageSize nbObjets Spécifie le nombre d'UO à afficher dans une page pour une requête. Par défaut, 256 objets par page.

-ResultSetSize nbMaxObjets Spécifie le nombre maximal d'UO à retourner pour une requête. La valeur par défaut est $null, ce qui correspond à la valeur « tous les objets ».

-SearchBase chemindacces Spécifie un chemin d’accès Active Directory dans lequel effectuer les recherches.

-SearchScope Base ou :

-SearchScope OneLevel ou :

-SearchScope Subtree

Spécifie la portée d’une recherche Active Directory. Une requête Base n’effectue des recherches que dans le chemin d’accès ou l’objet actuel. Une requête OneLevel effectue des recherches dans les enfants directs de ce chemin d’accès ou de cet objet. Une requête Subtree effectue des recherches dans le chemin d’accès ou l’objet actuel et tous les enfants de ce chemin d’accès ou de cet objet. La portée par défaut est Subtree.

-Partition nomPartition Spécifie le nom unique d’une partition Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-Properties nomsProprietes Spécifie les propriétés de l’objet de sortie à récupérer. Utilisez ce paramètre pour récupérer des propriétés qui ne sont pas incluses dans le jeu par défaut.

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate. Une connexion SSL nécessite une méthode d'authentification Basic.

4.3 Créer une UO : New-ADOrganizationalUnit

• New-ADOrganizationalUnit -Name "uoEPN" -Path

"DC=darcvadaure,DC=lan" → Crée l'UO uoEPN sur le controlaire de domaine darcvadaure.lan

(10)

• New-ADOrganizationalUnit -Name "uoAssociation" -Path

"UO=uoEPN,DC=darcvadure,DC=lan"

-ProtectedFromAccidentalDeletion $False → Crée l'UO uoAssociation dans l'UO uoEPN du contrôleur de domaine darcvadaure.lan. Cette UO peut être supprimée (elle n'est pas protégée contre la suppression)

• New-ADOrganizationalUnit -Name "uoPersonnel" -Path

"DC=darcvadaure,DC=lan" -OtherAttributes

@{managedBy="CN=hbrouard,DC=darcvadaure,DC=lan"} → Crée l'UO uoPersonnel dans le contrôleur de domaine darcvaduare.lan en précisant qu'elle est gérée par l'utilisateur hbrouard.

Voici quelques paramètres de la commande New-ADOrganizationalUnit :

Paramètre Description

-Name nomUO Spécifie le nom de l'UO

-City nomVille Spécifie le nom de la ville où est située l'UO

-Country nomRegion Spécifie le nom de la région / du département où est située l'UO

-Description descriptionGrpe Spécifie une description de l'UO.

-DisplayName nomAffiche Spécifie le nom d’affichage de l'UO

-Instance identifiantUO Spécifie une instance d’un objet UO à utiliser comme modèle pour une nouvelle UO.

-OtherAttributes

@{nomAttribut1=valeur1 ; nomAttribut2=valeur2 ; … }

Spécifie les valeurs d’attribut d’objet pour les attributs qui ne sont pas représentés par des paramètres.

-PassThru Retourne l’objet nouvellement créé. Par défaut (c’est-à- dire si -PassThru n’est pas spécifié), cette commande ne génère aucune sortie.

-Path nomChemin Spécifie le chemin d’accès X.500 de l’unité d’organisation ou du conteneur où le nouvel objet est créé.

-PostalCode libelleCodePostal Spécifie le code postal où est située l'UO -ProtectedFromAccidentalDeletion $true

ou :

-ProtectedFromAccidentalDeletion $false

Spécifie si l'UO est protégée de la suppression ($true) ou non ($faclse)

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-State nomPays Spécifie le nom du pays est située l'UO -StreetAddress libelleRue Spécifie la rue où est située l'UO -Confirm $false

ou : Demande ($true) ou non ($false) une confirmation pour

créer l'UO

(11)

-Confirm $true

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate.

-Credential infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

4.4 Modifier les attributs d'une UO Set-ADOrganizationalUnit

• Set-ADOrganizationalUnit -Identity

"OU=uoEPN,DC=darcvadaure,DC=lan" -Description "UO pour les comptes utilisateurs et les ordinateurs de la salle EPN de la médiathèque" → Modifie l'attribue description de l'UO uoEPN

• Set-ADOrganizationalUnit -Identity

"OU=uoEPN,DC=darcvadaure,DC=lan"

-ProtectedFromAccidentalDeletion $false → Ne protège plus l'UO de la suppression

• Set-ADOrganizationalUnit -Identity

"OU=uoEPN,DC=darcvadaure,DC=lan" -StreetAddress "12 rue du chat noir" -City Darcvadaure -State FRANCE -PostalCode 99991 -Replace @{managedBy="CN=gvelet,DC=darcvadaure,DC=lan"} → Modifie les attributs (qui étaient vides auparavant) rue, ville, pays et code postal. Remplace la valeur de l'attribut « géré par ».

La commande Set-ADOrganizationalUnit dispose quasiment des mêmes propriétés que la commande New-ADOrganizationalUnit :

4.5 Supprimer une UO : Remove-ADOrganizationalUnit

La commande Remove- ADOrganizationalUnit nécessite qu’on passe à son paramètre Identity un objet de type ADOrganizationalUnit.

• Remove-ADOrganizationalUnit -Identity

"OU=uoEPN,DC=darcvadaure,DC=lan" -Recursive → Supprime l'UO uoEPN et ses sous-UO

• Remove-ADOrganizationalUnit -Identity

"OU=uoPersonnel,DC=darcvadaure,DC=lan" -Recursive → Supprime l'UO uoEPN et ses sous-UO -Confirm:$false → Supprime l'UO uoPersonnel sans demander de confirmation

5 Gestion des groupes

5.1 Les commandes de gestion des groupes de l'AD

Pour la gestion des groupes, on dispose des commandes suivantes :

(12)

Commande Description

Add-ADGroupMember Ajoute un ou plusieurs membres à un groupe Active Directory.

Add-ADPrincipalGroupMembership Ajoute un membre à un ou plusieurs groupes Active Directory.

Get-ADAccountAuthorizationGroup Obtient les groupes de sécurité par l’utilisateur, l’ordinateur ou le jeton de comptes de service spécifié.

Get-ADGroup Obtient un ou plusieurs groupes Active Directory.

Get-ADGroupMember Obtient les membres d’un groupe Active Directory.

Get-ADPrincipalGroupMembership Obtient les groupes Active Directory qui possèdent un utilisateur, un ordinateur, un groupe ou un compte de service spécifié.

New-ADGroup Crée un groupe Active Directory.

Remove-ADGroup Supprime un groupe Active Directory.

Remove-ADGroupMember Supprime un ou plusieurs membres d’un groupe Active Directory.

Remove-ADPrincipalGroupMembership Supprime un membre d’un ou plusieurs groupes Active Directory.

Set-ADGroup Modifie un groupe Active Directory.

5.2 Lister des groupes : Get-ADGroup

• Get-ADGroup -Filter * → Liste tous les groupes

• Get-ADGroup -Filter * | Format-Table Name, GroupScope → Liste des groupes et de leur étendue (au domaine...)

• Get-ADGroup -Filter {GroupScope -eq ’DomainLocal’} → Liste des groupes au domaine

• Get-ADGroup -Filter * -SearchBase

’OU=uoEPN,DC=darcvadaure,DC=lan’ → Liste des groupes sur l'UO (chemin d'accès) uoEPN

• Get-ADGroup -Identity Administrateurs → Affichage des attributs par défaut du groupe « Administrateurs »

Voici quelques paramètres de la commande Get-ADGroup :

Paramètre Description

-Filter { filtre } Spécifie un « filtre générique »

-LDAPFilter { filtreLDAP} Spécifie une condition LDAP utilisée pour filtrer des objets Active Directory.

-Identity identUtilisateur Spécifie un objet Active Directory en fournissant l’un de ses identifiants

-ResultPageSize nbObjets Spécifie le nombre d’objets à inclure dans une page pour une

(13)

requête. Par défaut, 256 objets par page.

-ResultSetSize nbMaxObjets Spécifie le nombre maximal d’objets à retourner pour une requête. La valeur par défaut est $null, ce qui correspond à la valeur « tous les objets ».

-SearchBase chemindacces Spécifie un chemin d’accès Active Directory dans lequel effectuer les recherches.

-SearchScope Base ou :

-SearchScope OneLevel ou :

-SearchScope Subtree

Spécifie la portée d’une recherche Active Directory. Une requête Base n’effectue des recherches que dans le chemin d’accès ou l’objet actuel. Une requête OneLevel effectue des recherches dans les enfants directs de ce chemin d’accès ou de cet objet. Une requête Subtree effectue des recherches dans le chemin d’accès ou l’objet actuel et tous les enfants de ce chemin d’accès ou de cet objet. La portée par défaut est Subtree.

-Partition nomPartition Spécifie le nom unique d’une Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-Properties nomsProprietes Spécifie les propriétés de l’objet de sortie à récupérer. Utilisez ce paramètre pour récupérer des propriétés qui ne sont pas incluses dans le jeu par défaut.

Exemple : Get-ADGroup -Identity

Administrateurs -Properties

Name,GroupScope

→ Affiche les propriétés par défaut de la commande Get- ADGroup ainsi que le nom et l'étendue de groupe.

Les propriétés de ce paramètre sont indiquées sous la forme d’une liste de noms séparés par des virgules. Pour afficher tous les attributs définis sur l’objet, spécifiez « * ».

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

Exemple :

Get-ADGroup -Filter * -Server

"yodda.darcvadaure.lan"

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

Exemple :

GetAD-Group -Filter * -Credential

"darcvadaure.lan\Administrateur"

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate. Une connexion SSL nécessite une méthode d'authentification Basic.

(14)

5.3 Créer des groupe : New-ADGroup

Pour créer un groupe, il faut au minimum lui donner un nom (propriété Name) et une étendue (GroupScope). Si aucune catégorie (GroupCategory) n’est spécifiée alors par défaut il sera créé en tant que groupe de sécurité. Si on n'indique pas de SamAccountName alors cette propriété prendra le même nom que la propriété Name du groupe.

• New-ADGroup -Name UtilisateursSec -GroupScope DomainLocal -GroupCategory Security → Crée un groupe local de sécurité

• New-ADGroup -Name UtilisateursDist -GroupScope Global -GroupCategory Distribution → Crée un groupe global de distribution :

• New-ADGroup -Name GrpDelegue -GroupScope Universal -GroupCategory Security -ManagedBy hbrouard -Path ’OU=uoAutre,DC=darcvadaure,DC=lan’ → Création d’un groupe universel de sécurité dans l’unité d’organisation « uoAutre » et délégation de la gestion du groupe à l'utilisateur hbrouard

Voici quelques paramètres de la commande New-ADGroup :

Paramètre Description

-Name nomGroupe Spécifie le nom du groupe.

-Description descriptionGrpe Spécifie une description du groupe.

-DisplayName nomAffiche Spécifie le nom d’affichage du groupe.

-GroupCategory Distribution ou :

-GroupCategory Security

Spécifie la catégorie du groupe.

-GroupScope DomainLocal ou :

-GroupScope Global ou :

-GroupScope Universal

Spécifie l’étendue de groupe du groupe.

-SamAccountName nomGroupeSAM Spécifie le nom du compte de sécurité SAM (nom de groupe antérieur à Windows 2000).

-HomePage url Spécifie l’URL de la page d’accueil de l’objet.

-Instance identifiantGroupe Spécifie une instance d’un objet groupe à utiliser comme modèle pour un nouvel objet groupe.

-ManagedBy identifiantGroupeUser Spécifie l’utilisateur ou le groupe qui gère l’objet.

-OtherAttributes

@{nomAttribut1=valeur1 ; nomAttribut2=valeur2 ; … }

Spécifie les valeurs d’attribut d’objet pour les attributs qui ne sont pas représentés par des paramètres.

-PassThru Retourne l’objet nouvellement créé. Par défaut (c’est-à-dire si -PassThru n’est pas spécifié), cette commande ne génère aucune sortie.

-Path nomChemin Spécifie le chemin d’accès X.500 de l’unité d’organisation ou du conteneur où le nouvel

(15)

objet est créé.

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser.

Le type par défaut est Negotiate.

-Credential infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

5.4 Lister les membres d’un groupe : Get-ADGroupMember

• Get-ADGroupMember -Identity Administrateurs | Format-Table Name,ObjectClass → Récupère le contenu du groupe « Administrateurs » en précisant le type d'objet ( utilisateur, groupe, ordinateur..)

• Get-ADGroupMember -Identity Administrateurs -Recursive → Récupère le contenu du groupe « Administrateurs ». Le contenu de chaque sous groupe est détaillé (paramètre -Recursive)

Voici quelques paramètres de la commande Get-ADGroupMember :

Paramètre Description

-Identity identifiantGroupe Spécifie un groupe en fournissant l’une de ses valeurs de propriété permettant de l’identifier.

-Recursive Obtient tous les membres du groupe spécifié ainsi que les membres de tout groupe enfant.

-Partition nomPartition Spécifie le nom unique d’une Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate.

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

(16)

5.5 Ajouter des membres à un groupe : Add-ADGroupMember

• Add-ADGroupMember -Identity gJeunesse -Members hbrouard,gvelet → Ajoute les utilisateur hbrouard et gvelet au groupe gJeunesse Voici quelques paramètres de la commande Add-ADGroupMember :

Paramètre Description

-Identity identifiantGroupe Spécifie un groupe en fournissant l’une de ses valeurs de propriété permettant de l’identifier.

-Members

identifiant1,identifiant2,i dentifiant3,...

Ajoute les objets ayant pour identifiant identifiant1, identifiant2,, identifiant3, … dans le groupe

-Partition nomPartition Spécifie le nom unique d’une Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-PassThru Retourne l’objet nouvellement créé. Par défaut (c’est-à-dire si -PassThru n’est pas spécifié), cette commande ne génère aucune sortie.

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate.

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

5.6 Ajouter un membre à un ou plusieurs groupes : Add- ADPrincipalGroupMembership

Cette commande porte un nom générique car elle permet d’ajouter à un groupe non seulement un compte d’utilisateur mais aussi un compte d’ordinateur ou un groupe.

• Add-ADPrincipalGroupMembership -Identity hbrouard -MemberOf gAdulte → Affecte l'utilisateur hbrouard au groupe gAdulte

• Add-ADPrincipalGroupMembership -Identity hbrouard -MemberOf gDivers, Administrateurs → Affecte l'utilisateur aux groupes gDivers et Administrateurs

Voici quelques paramètres de la commande Add-ADPrincipalGroupMembership :

Paramètre Description

-Identity identifiantObjet Spécifie l'objet (utilisateur, groupe, ordinateur...) en fournissant l’une de ses valeurs de propriété permettant de

(17)

l’identifier.

-MemberOf

identifiantGrpe1,identifian tGrpe2,identifiantGrpe3,...

Spécifie les groupes Active Directory auxquels ajouter un utilisateur, ordinateur ou groupe comme membre.

-Partition nomPartition Spécifie le nom unique d’une Active Directory où la recherche va s'effectuer.

Exemple de partition :

"CN=P409-01,DC=darcvadaure,DC=lan"

-PassThru Retourne l’objet nouvellement créé. Par défaut (c’est-à-dire si -PassThru n’est pas spécifié), cette commande ne génère aucune sortie.

-Server nomServeur Spécifie l’instance des services Active Directory à laquelle se connecter. Celle-ci peut être de type AD DS, AD LDS ou AD Snapshot. C’est le domaine de l’ordinateur exécutant la requête qui est choisi par défaut.

-AuthType Negotiate ou :

-AuthType Basic

Spécifie la méthode d’authentification à utiliser. Le type par défaut est Negotiate.

-Credential

infosDidentification Spécifie les informations d’identification de compte d’utilisateur à utiliser pour effectuer cette tâche.

5.7 Supprimer un ou plusieurs membres d’un groupe : Remove- ADGroupMember.

Cette commande possède les mêmes paramètres que la commande Add-ADGroupMember.

• Remove-ADGroupMember -Identity gJeunesse -Members hbrouard,gvelet → Retire hbrouard et gvelet du groupe gjeunesse.

• Remove-ADGroupMember -Identity gJeunesse -Members hbrouard, gvelet -Confirm:$false → Retire hbrouard et gvelet du groupe gjeunesse, sans demander de confirmation

5.8 Supprimer un membre d’un ou de plusieurs groupes : Remove- ADPrincipalGroupMembership

Cette commande possède les mêmes paramètres que la commande Add- ADPrincipalGroupMembership.

• Remove-ADPrincipalGroupMembership -Identity hbrouard -MemberOf gAdulte → Retire hbrouard du groupe gAdulte

• Remove-ADPrincipalGroupMembership -Identity hbrouard -MemberOf gAdulte -Confirm:$false → Retire hbrouard du groupe gAdulte sans demande de confirmation

(18)

• Remove-ADPrincipalGroupMembership -Identity hbrouard -MemberOf gDivers,Administrateurs → Retire hbrouard des groupes gDivers et Adminsitrateurs

5.9 Supprimer un groupe : Remove-ADGroup

La commande Remove-ADGroupe nécessite qu’on passe à son paramètre Identity un objet de type ADGroup.

• Remove-ADGroup -Identity gAdulte → Supprime le groupe gAdulte

• Remove-ADGroup -Identity gAdulte -Confirm:$false → Supprime le groupe gAdulte sans demande de confirmation

6 Autres commandes sur l'AD

Il existe bien d'autres commandes pour gérer l'AD. Pour les obtenir, il suffit de taper Get- Command -Module ActiveDirectory. On dispose de commande :

– pour gérer l'ensemble des objets de l'AD de facon générique : X-ADObject, – pour gérer les ordinateurs : X-ADComputer

– pour gérer les sites de réplication de l'AD : X-ReplicationSite – pour gérer les comptes de service : X-ServiceAccount

– …

– cf. https://technet.microsoft.com/en-us/library/hh852274(v=wps.630).aspx Rq : Remplacer X par le verbe adéquat (New, Get, Move, Remove, Set...)

Références

Documents relatifs

Si vous souhaitez vous enregistrer par certificat et n'avez pas inséré votre certificat dans votre lecteur de cartes à puces avant d'accéder au portail Cerbère, nous vous conseillons

- Les quatre fiches suivantes correspondent à d’éventuelles évaluations à un autre moment de l’année pour un élève ou un groupe d’élèves ou l’ensemble de la classe avec

Il peut parfois y avoir plusieurs instructions dans une conditionnelle, et parfois la partie « sinon » n’est pas présente.. Si mon téléphone sonne en classe

"Faire le noir" (sans lame mince) : tourner le polariseur (face au repère) ou jusqu’à l'extinction de la lumière (ainsi le polariseur et l’analyseur sont "croisés"

 Facilite la recherche de vulnérabilité dans un client lourd.  Permet d’instrumenter

Représente par une flèche la translation effectuée de la frise pour obtenir le pavage ci-dessous, puis colorie ce pavage en alternant deux couleurs de ton choix pour chaque motif

A partir du menu Gérer mon compte utilisateur de votre Espace sécurisé, vous avez la possibilité de mettre à jour vos informations de connexion et de contact. ATTENTION, la

(Si vous n’êtes pas là ou vous souhaitez, vous pouvez vous déplacer par le menu « action du pilote » puis « Changer d’emplacement »). • Dans un premier temps, il faut aller