Exercice 4 : Créer un Groupe de Sécurité pour un Projet Client Confidentiel
Niveau de Difficulté
đĄ IntermĂ©diaire - TĂąche orientĂ©e objectif
Objectifs Pédagogiques
- Créer et configurer un groupe de sécurité sans instructions détaillées
- Sélectionner le bon type de groupe (Global, Domain Local, Universal)
- Gérer l'appartenance multi-départements
- Appliquer le principe du "besoin d'en connaĂźtre" (need-to-know)
Durée Estimée
20-25 minutes
Prérequis
- Lab CreativeHub déployé avec succÚs
- Compréhension des groupes de sécurité AD
- Capacité à utiliser "Utilisateurs et ordinateurs Active Directory"
Contexte / Scénario
Date: Mercredi matin
Nicolas André, Directeur des Opérations, vous envoie un message prioritaire :
"Bonjour,
Nous venons de signer un contrat avec un client trĂšs important et extrĂȘmement confidentiel : la banque 'SecureBank'. Ce projet nĂ©cessite une sĂ©curitĂ© renforcĂ©e.
Seules certaines personnes de notre agence doivent avoir accĂšs aux fichiers de ce projet :
DĂ©partement Client Services : - Karine Garnier (Chef de Projet Senior) - Nicolas AndrĂ© (Directeur des OpĂ©rations - moi-mĂȘme)
Département Creative : - Gabrielle Simon (Directrice Artistique) - Fabien Moreau (Graphiste Senior)
Département Marketing : - Camille Bernard (Responsable Marketing Digital)
Créez un groupe de sécurité appelé 'GG-Projet-SecureBank' qui contiendra uniquement ces 5 personnes. Plus tard, nous utiliserons ce groupe pour gérer les permissions d'accÚs au dossier du projet.
Important : Ce groupe doit pouvoir ĂȘtre utilisĂ© pour attribuer des permissions sur des ressources locales (partages de fichiers).
Merci, Nicolas"
Tùche à Réaliser
Votre mission est de créer un groupe de sécurité conforme aux besoins exprimés.
Objectif Principal
Créer un groupe de sécurité nommé GG-Projet-SecureBank contenant exactement les 5 utilisateurs spécifiés.
Contraintes
- Nom du groupe : Exactement
GG-Projet-SecureBank - Type de groupe : Groupe de sécurité (pas de distribution)
- Ătendue du groupe : Choisir l'Ă©tendue appropriĂ©e (Global, Domain Local, ou Universal)
- Indice : Le groupe sera utilisé pour gérer des permissions sur des ressources locales du domaine
- Emplacement : Le groupe doit ĂȘtre créé dans une OU appropriĂ©e
- RĂ©flexion : OĂč placer un groupe qui concerne plusieurs dĂ©partements ?
- Description : Ajouter une description claire expliquant le but du groupe
- Membres : Ajouter les 5 utilisateurs spécifiés (et uniquement ceux-là )
Membres Ă Ajouter
| Utilisateur | SAM Account | Département |
|---|---|---|
| Karine Garnier | karine | ClientServices |
| Nicolas André | nicolas | ClientServices |
| Gabrielle Simon | gabrielle | Creative |
| Fabien Moreau | fabien | Creative |
| Camille Bernard | camille | Marketing |
Questions Ă Vous Poser
- Ătendue du groupe :
- Global (pour regrouper des utilisateurs du mĂȘme domaine) ?
- Domain Local (pour gérer des permissions sur des ressources locales) ?
-
Universal (pour les environnements multi-domaines) ?
-
Emplacement :
- Créer une nouvelle OU "Projets" sous CreativeHub ?
- Placer dans un département existant ?
- Utiliser l'OU Groups d'un département ?
Indices (Si Nécessaire)
đĄ Indice 1 : Ătendue du groupe
Dans un environnement Ă domaine unique, la meilleure pratique Microsoft est : - **Groupes Globaux** : Pour regrouper des utilisateurs (ex: tous les utilisateurs d'un dĂ©partement) - **Groupes Domain Local** : Pour attribuer des permissions sur des ressources - **StratĂ©gie AGDLP** : Ajouter les utilisateurs Ă un groupe Global, puis ce groupe Global Ă un groupe Domain Local qui a les permissions Pour cet exercice, comme le groupe contient directement des utilisateurs et sera utilisĂ© pour des permissions locales, **Domain Local** est le choix appropriĂ©.đĄ Indice 2 : Emplacement du groupe
Comme le groupe concerne plusieurs dĂ©partements, crĂ©ez une nouvelle OU "Projets" ou "Groupes_Projets" sous l'OU racine CreativeHub : - `OU=Groupes_Projets,OU=CreativeHub,DC=maxtec,DC=be` Ou utilisez l'OU Groups d'un dĂ©partement (par exemple ClientServices puisque c'est le dĂ©partement qui pilote le projet).đĄ Indice 3 : VĂ©rification des membres
AprÚs avoir ajouté les membres, double-cliquez sur le groupe, allez dans l'onglet "Membres" et comptez : vous devez voir exactement 5 noms. Utilisez aussi PowerShell pour vérifier :Get-ADGroupMember -Identity "GG-Projet-SecureBank" | Select-Object Name, SamAccountName
Vérification de la Réussite
Commandes PowerShell de Vérification
Import-Module ActiveDirectory
# Vérifier le groupe
Get-ADGroup -Identity "GG-Projet-SecureBank" -Properties Description, GroupScope, GroupCategory |
Select-Object Name, Description, GroupScope, GroupCategory, DistinguishedName
# Vérifier les membres
Write-Host "`nMembres du groupe:" -ForegroundColor Cyan
Get-ADGroupMember -Identity "GG-Projet-SecureBank" |
Select-Object Name, SamAccountName, DistinguishedName |
Sort-Object Name
OU exécutez le script de vérification automatique :
.\verif_exercice_04.ps1
CritÚres de Réussite
- Le groupe "GG-Projet-SecureBank" existe
- Type : Groupe de sécurité (Security)
- Ătendue : DomainLocal (recommandĂ©) ou Global (acceptable)
- Le groupe contient exactement 5 membres
- Les 5 membres corrects sont présents : karine, nicolas, gabrielle, fabien, camille
- Une description explicite a été ajoutée
- Le groupe est dans une OU appropriée (pas dans les conteneurs par défaut Users ou Computers)
Solution ComplĂšte (Pour Instructeur)
Méthode GUI
Ătape 1 : CrĂ©er une OU pour les groupes de projets (optionnel mais recommandĂ©)
- Ouvrir
dsa.msc - Clic droit sur
OU=CreativeHubâ Nouveau â UnitĂ© d'organisation - Nom :
Groupes_Projets - Décocher la protection contre la suppression accidentelle (pour le lab)
- Cliquer sur OK
Ătape 2 : CrĂ©er le groupe de sĂ©curitĂ©
- Naviguer vers
OU=Groupes_Projets,OU=CreativeHub(ou l'emplacement choisi) - Clic droit â Nouveau â Groupe
- Remplir :
- Nom du groupe :
GG-Projet-SecureBank - Nom du groupe (pré-Windows 2000) :
GG-Projet-SecureBank - Ătendue du groupe : SĂ©lectionner Domaine local
- Type de groupe : Sélectionner Sécurité
- Cliquer sur OK
Ătape 3 : Ajouter une description
- Double-clic sur le groupe GG-Projet-SecureBank
- Onglet Général
- Description :
AccÚs au projet confidentiel SecureBank - Membres multi-départements - Cliquer sur Appliquer
Ătape 4 : Ajouter les membres
- Onglet Membres
- Cliquer sur Ajouter...
- Taper :
karine; nicolas; gabrielle; fabien; camille - Cliquer sur VĂ©rifier les noms (tous les noms doivent ĂȘtre soulignĂ©s)
- Cliquer sur OK, puis Ă nouveau OK
Méthode PowerShell
Import-Module ActiveDirectory
# Variables
$groupName = "GG-Projet-SecureBank"
$groupDescription = "AccÚs au projet confidentiel SecureBank - Membres multi-départements"
$rootOU = "OU=CreativeHub,DC=maxtec,DC=be"
$projectGroupsOU = "OU=Groupes_Projets,$rootOU"
# 1. Créer l'OU Groupes_Projets si elle n'existe pas
try {
Get-ADOrganizationalUnit -Identity $projectGroupsOU -ErrorAction Stop | Out-Null
Write-Host "L'OU Groupes_Projets existe déjà ." -ForegroundColor Yellow
} catch {
New-ADOrganizationalUnit -Name "Groupes_Projets" -Path $rootOU -ProtectedFromAccidentalDeletion $false
Write-Host "OU Groupes_Projets créée." -ForegroundColor Green
}
# 2. Créer le groupe de sécurité
try {
Get-ADGroup -Identity $groupName -ErrorAction Stop | Out-Null
Write-Host "Le groupe $groupName existe déjà ." -ForegroundColor Yellow
} catch {
New-ADGroup -Name $groupName `
-GroupScope DomainLocal `
-GroupCategory Security `
-Path $projectGroupsOU `
-Description $groupDescription
Write-Host "Groupe $groupName créé avec succÚs." -ForegroundColor Green
}
# 3. Ajouter les membres
$members = @("karine", "nicolas", "gabrielle", "fabien", "camille")
foreach ($member in $members) {
try {
Add-ADGroupMember -Identity $groupName -Members $member -ErrorAction Stop
Write-Host " $member ajouté au groupe" -ForegroundColor Green
} catch {
if ($_.Exception.Message -like "*already a member*") {
Write-Host " $member est déjà membre du groupe" -ForegroundColor Yellow
} else {
Write-Host " ERREUR lors de l'ajout de $member : $($_.Exception.Message)" -ForegroundColor Red
}
}
}
Write-Host "`nGroupe de sécurité SecureBank créé avec succÚs !" -ForegroundColor Green
# Vérification
Write-Host "`nMembres du groupe:" -ForegroundColor Cyan
Get-ADGroupMember -Identity $groupName | Select-Object Name, SamAccountName | Format-Table
Points Clés à Retenir
Types d'Ătendue de Groupe (Group Scope)
| Ătendue | Usage Principal | Peut Contenir | Peut Recevoir Permissions |
|---|---|---|---|
| Global | Regrouper des utilisateurs d'un mĂȘme domaine | Utilisateurs et groupes globaux du mĂȘme domaine | Partout dans la forĂȘt |
| Domain Local | GĂ©rer des permissions sur des ressources locales | N'importe quel utilisateur ou groupe de la forĂȘt | Uniquement dans le domaine local |
| Universal | Environnements multi-domaines | Utilisateurs et groupes de n'importe quel domaine | Partout dans la forĂȘt |
Stratégie AGDLP (Bonnes Pratiques Microsoft)
Accounts â Global Groups â Domain Local Groups â Permissions
- Ajouter les comptes utilisateurs (Accounts) Ă des groupes globaux
- Ajouter les groupes globaux Ă des groupes domain local
- Attribuer les permissions aux groupes domain local
Pour cet exercice simplifié, nous avons utilisé directement un groupe Domain Local avec des utilisateurs, ce qui est acceptable pour de petites structures.
Convention de Nommage
- GG- : Groupe Global
- DL- : Domain Local
- UG- : Universal Group
Le nom "GG-Projet-SecureBank" suggĂšre un groupe Global, mais techniquement un groupe Domain Local aurait dĂ» ĂȘtre nommĂ© "DL-Projet-SecureBank". En entreprise, respectez la convention de nommage !
Dépannage (Erreurs Courantes)
| Erreur Possible | Cause | Solution |
|---|---|---|
| "Le groupe existe déjà " | Nom de groupe déjà utilisé | Vérifiez l'existence avec Get-ADGroup -Filter {Name -eq "GG-Projet-SecureBank"} |
| "Impossible de trouver l'utilisateur" | SAM Account incorrect | Vérifiez le nom exact avec Get-ADUser -Filter {Name -like "*Garnier*"} |
| Le groupe apparaßt vide | Les membres n'ont pas été ajoutés correctement | Utilisez l'onglet "Membres" pour ajouter à nouveau |
| "Impossible d'ajouter au groupe" | L'utilisateur est peut-ĂȘtre dĂ©jĂ membre | VĂ©rifiez d'abord avec Get-ADGroupMember |
Pour Aller Plus Loin
Scénario Réaliste
En production, vous créeriez probablement :
- Groupe Global :
GG-Projet-SecureBank-Equipecontenant les 5 utilisateurs - Groupe Domain Local :
DL-SecureBank-Lecturepour les permissions en lecture - Groupe Domain Local :
DL-SecureBank-Modificationpour les permissions en écriture - Ajouter le groupe Global aux groupes Domain Local selon les besoins
- Attribuer les permissions NTFS aux groupes Domain Local
Commande Utile : Trouver Tous les Groupes d'un Utilisateur
Get-ADPrincipalGroupMembership -Identity karine | Select-Object Name, GroupScope
Exercice Suivant Suggéré
Exercice 5 : Réinitialiser le mot de passe d'un utilisateur et forcer le changement à la prochaine connexion