Question
Move compte AD et suppression des groupes
- Galadan
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 75
- Remerciements reçus 0
il y a 5 ans 4 jours #28795
par Galadan
Réponse de Galadan sur le sujet Re:Move compte AD et suppression des groupes
Hello,
Je suis de retour, mon script ne fonctionne pas correctement j'ai l'impression...
Déjà, à quoi sert [code:1] Where-Object { ($_.distinguishedname -notlike '*Désactivé*') }[/code:1] ?
Après j'ai l'impression que la partie [code:1] where{$_.Members -like \"*$Name*\"}[/code:1] ne fonctionne pas...
Merci de ton aide.
Je suis de retour, mon script ne fonctionne pas correctement j'ai l'impression...
Déjà, à quoi sert [code:1] Where-Object { ($_.distinguishedname -notlike '*Désactivé*') }[/code:1] ?
Après j'ai l'impression que la partie [code:1] where{$_.Members -like \"*$Name*\"}[/code:1] ne fonctionne pas...
Merci de ton aide.
Connexion ou Créer un compte pour participer à la conversation.
- Galadan
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 75
- Remerciements reçus 0
il y a 4 ans 11 mois #28816
par Galadan
Réponse de Galadan sur le sujet Re:Move compte AD et suppression des groupes
Personne n'as une idée?
Connexion ou Créer un compte pour participer à la conversation.
- Guillaume
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 116
- Remerciements reçus 0
il y a 4 ans 11 mois #28823
par Guillaume
Réponse de Guillaume sur le sujet Re:Move compte AD et suppression des groupes
Bonjour Galadan,
Galadan écrit:
C'est pour vérifier que le paramètre \"distinguishedname\" contient le terme \"Désactivé\". Ceci dit, si ta variable \"$OUsearch\" ne contient pas ce terme, ça ne sert à rien j'ai l'impression.
Galadan écrit:
Tu as un message d'erreur ? Quel est le résultat final qui t'indique que ça ne se passe pas bien ?
Galadan écrit:
Déjà, à quoi sert [code:1] Where-Object { ($_.distinguishedname -notlike '*Désactivé*') }[/code:1] ?
C'est pour vérifier que le paramètre \"distinguishedname\" contient le terme \"Désactivé\". Ceci dit, si ta variable \"$OUsearch\" ne contient pas ce terme, ça ne sert à rien j'ai l'impression.
Galadan écrit:
Après j'ai l'impression que la partie [code:1] where{$_.Members -like \"*$Name*\"}[/code:1] ne fonctionne pas...
Tu as un message d'erreur ? Quel est le résultat final qui t'indique que ça ne se passe pas bien ?
Connexion ou Créer un compte pour participer à la conversation.
- Galadan
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 75
- Remerciements reçus 0
il y a 4 ans 11 mois #28824
par Galadan
Réponse de Galadan sur le sujet Re:Move compte AD et suppression des groupes
Merci de ton retour.
En faite le script ne supprime pas les groupes du compte.
Et quand je test le variable $groups avec le \"where\" elle remonte vide...
En faite le script ne supprime pas les groupes du compte.
Et quand je test le variable $groups avec le \"where\" elle remonte vide...
Connexion ou Créer un compte pour participer à la conversation.
- Galadan
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 75
- Remerciements reçus 0
il y a 4 ans 6 mois #29318
par Galadan
Réponse de Galadan sur le sujet Re:Move compte AD et suppression des groupes
Bonjour,
Je reviens sur le sujet avec un script modifié.
J'ai un soucis, mon script fonctionne sauf pour le move du compte...
Je n'arrive pas à trouver mon erreur..
[code:1]$DisabledUsers = Search-ADAccount -AccountInactive -DateTime $InactiveDate -UsersOnly -SearchBase $OUsearch | Where-Object { $_.Enabled -eq $false } | Get-Aduser -Properties memberof,msExchExtensionAttribute43,enabled,AccountExpirationDate
$DisabledResults = ForEach ($DisabledUser in $DisabledUsers) {
$UserGroups = $DisabledUser.MemberOf | Where-Object {$_ -Like $ADGroup1 -Or $_ -Like $ADGroup2 -Or $_ -Like $ADGroupLIC}
$sam=$DisabledUser.samaccountname
$dn=$DisabledUser.distinguishedName
ForEach($UserGroup in $UserGroups) {
Remove-ADGroupMember -Identity $UserGroup -Members $sam -Confirm:$false
}
If ($dn.Substring($dn.IndexOf(\"OU=\"«»)) -ne $TargetOU) {
Set-ADUser $sam -Description (\"Moved and disabled by $Admin on $DateDesc\"«»)
Move-ADObject -Identity $DisabledUser.distinguishedName -TargetPath $TargetOU
}
$New = Get-ADUser $sam -Properties Enabled,AccountExpirationDate
$New_Status = $New.Enabled
$New_OU = $New.DistinguishedName
$Exp = $DisabledUser.AccountExpirationDate -as [datetime]
[pscustomobject]@{
Name = $sam
Status = $DisabledUser.enabled
AccountExpirationDate = $Exp
msExchExtensionAttribute43 = $DisabledUser.msExchExtensionAttribute43
OU = $dn
New_Status = $New_Status
New_OU = $New_OU
}
}
Pause
$EnabledUsers = Search-ADAccount -AccountInactive -DateTime $InactiveDate -UsersOnly -SearchBase $OUsearch | Where-Object { $_.Enabled -eq $true } | Get-Aduser -Properties memberof,msExchExtensionAttribute43,enabled,AccountExpirationDate
$EnabledResults = ForEach ($EnabledUser in $EnabledUsers) {
If (($EnabledUser.msExchExtensionAttribute43 -eq \"WD_Termination\"«») -or ($EnabledUser.enabled -eq \"True\" -and $EnabledUser.AccountExpirationDate -lt $TodayTime)) {
$UserGroups = $EnabledUser.MemberOf | Where-Object {$_ -Like $ADGroup1 -Or $_ -Like $ADGroup2 -Or $_ -Like $ADGroupLIC}
$sam=$EnabledUser.samaccountname
$dn=$EnabledUser.distinguishedName
ForEach($UserGroup in $UserGroups) {
Remove-ADGroupMember -Identity $UserGroup -Members $sam -Confirm:$false
}
Disable-ADAccount -Identity $dn
If ($dn.Substring($dn.IndexOf(\"OU=\"«»)) -ne $TargetOU) {
Set-ADUser $sam -Description (\"Moved and disabled by $Admin on $DateDesc\"«»)
Move-ADObject -Identity $DisabledUser.distinguishedName -TargetPath $TargetOU
}
}
$New = Get-ADUser $sam -Properties Enabled,AccountExpirationDate
$New_Status = $New.Enabled
$New_OU = $New.DistinguishedName
$Exp = $EnabledUser.AccountExpirationDate -as [datetime]
[pscustomobject]@{
Name = $sam
Status = $EnabledUser.enabled
AccountExpirationDate = $Exp
msExchExtensionAttribute43 = $EnabledUser.msExchExtensionAttribute43
OU = $dn
New_Status = $New_Status
New_OU = $New_OU
}
}[/code:1]
J'ai le message suivant:
[code:1]Move-ADObject : L’opération n’a pas pu être effectuée car le parent de l’objet n’est pas instancié ou a été supprimé[/code:1]
Si quelqu'un à une idée, je suis preneur!<br><br>Message édité par: Galadan, à: 16/10/19 12:23
Je reviens sur le sujet avec un script modifié.
J'ai un soucis, mon script fonctionne sauf pour le move du compte...
Je n'arrive pas à trouver mon erreur..
[code:1]$DisabledUsers = Search-ADAccount -AccountInactive -DateTime $InactiveDate -UsersOnly -SearchBase $OUsearch | Where-Object { $_.Enabled -eq $false } | Get-Aduser -Properties memberof,msExchExtensionAttribute43,enabled,AccountExpirationDate
$DisabledResults = ForEach ($DisabledUser in $DisabledUsers) {
$UserGroups = $DisabledUser.MemberOf | Where-Object {$_ -Like $ADGroup1 -Or $_ -Like $ADGroup2 -Or $_ -Like $ADGroupLIC}
$sam=$DisabledUser.samaccountname
$dn=$DisabledUser.distinguishedName
ForEach($UserGroup in $UserGroups) {
Remove-ADGroupMember -Identity $UserGroup -Members $sam -Confirm:$false
}
If ($dn.Substring($dn.IndexOf(\"OU=\"«»)) -ne $TargetOU) {
Set-ADUser $sam -Description (\"Moved and disabled by $Admin on $DateDesc\"«»)
Move-ADObject -Identity $DisabledUser.distinguishedName -TargetPath $TargetOU
}
$New = Get-ADUser $sam -Properties Enabled,AccountExpirationDate
$New_Status = $New.Enabled
$New_OU = $New.DistinguishedName
$Exp = $DisabledUser.AccountExpirationDate -as [datetime]
[pscustomobject]@{
Name = $sam
Status = $DisabledUser.enabled
AccountExpirationDate = $Exp
msExchExtensionAttribute43 = $DisabledUser.msExchExtensionAttribute43
OU = $dn
New_Status = $New_Status
New_OU = $New_OU
}
}
Pause
$EnabledUsers = Search-ADAccount -AccountInactive -DateTime $InactiveDate -UsersOnly -SearchBase $OUsearch | Where-Object { $_.Enabled -eq $true } | Get-Aduser -Properties memberof,msExchExtensionAttribute43,enabled,AccountExpirationDate
$EnabledResults = ForEach ($EnabledUser in $EnabledUsers) {
If (($EnabledUser.msExchExtensionAttribute43 -eq \"WD_Termination\"«») -or ($EnabledUser.enabled -eq \"True\" -and $EnabledUser.AccountExpirationDate -lt $TodayTime)) {
$UserGroups = $EnabledUser.MemberOf | Where-Object {$_ -Like $ADGroup1 -Or $_ -Like $ADGroup2 -Or $_ -Like $ADGroupLIC}
$sam=$EnabledUser.samaccountname
$dn=$EnabledUser.distinguishedName
ForEach($UserGroup in $UserGroups) {
Remove-ADGroupMember -Identity $UserGroup -Members $sam -Confirm:$false
}
Disable-ADAccount -Identity $dn
If ($dn.Substring($dn.IndexOf(\"OU=\"«»)) -ne $TargetOU) {
Set-ADUser $sam -Description (\"Moved and disabled by $Admin on $DateDesc\"«»)
Move-ADObject -Identity $DisabledUser.distinguishedName -TargetPath $TargetOU
}
}
$New = Get-ADUser $sam -Properties Enabled,AccountExpirationDate
$New_Status = $New.Enabled
$New_OU = $New.DistinguishedName
$Exp = $EnabledUser.AccountExpirationDate -as [datetime]
[pscustomobject]@{
Name = $sam
Status = $EnabledUser.enabled
AccountExpirationDate = $Exp
msExchExtensionAttribute43 = $EnabledUser.msExchExtensionAttribute43
OU = $dn
New_Status = $New_Status
New_OU = $New_OU
}
}[/code:1]
J'ai le message suivant:
[code:1]Move-ADObject : L’opération n’a pas pu être effectuée car le parent de l’objet n’est pas instancié ou a été supprimé[/code:1]
Si quelqu'un à une idée, je suis preneur!<br><br>Message édité par: Galadan, à: 16/10/19 12:23
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.084 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Move compte AD et suppression des groupes