Script PSO complexité des mots de passe

Script PSO complexité des mots de passe - Sécurité - Systèmes & Réseaux Pro

Marsh Posté le 19-07-2013 à 18:52:18    

Bonjour,
 
Je cherche à faire un script PSO qui créé deux objets PSO :
 
   -un pour les utilisateurs standards avec la complexité des mots de passe désactivée (et si on pouvait m'expliquer pour les autres paramètres)
   -un pour les administrateurs avec complexité des mots de passe activé
 
Le script permettra d’affecter les utilisateurs standards au PSO correspondant et les administrateurs au PSO correspondant.
 
Le serveur sur lequel s’exécutera le script est un Windows server 2008 R2 et le niveau fonctionnel du domaine est Windows Server 2008.
 
Je vous remercie.

Reply

Marsh Posté le 19-07-2013 à 18:52:18   

Reply

Marsh Posté le 19-07-2013 à 19:02:00    

Mauvaise Cat', changer Cat'.


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 19-07-2013 à 19:10:21    

Fork Bomb a écrit :

Mauvaise Cat', changer Cat'.


Bonjour,
Comment je change la catégorie?
Je vois bien la sous catégorie mais c'est tout.
Je peux mettre ma question dans quelle catégorie?
Merci

Reply

Marsh Posté le 19-07-2013 à 19:12:58    

tototimes a écrit :


Bonjour,
Comment je change la catégorie?
Je vois bien la sous catégorie mais c'est tout.
Je peux mettre ma question dans quelle catégorie?
Merci


Un modo va déplacer ton topic sous peu. Patientes.


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 19-07-2013 à 19:30:03    

Ce sujet a été déplacé de la catégorie OS Alternatifs vers la categorie Systèmes & Réseaux Pro par O'gure


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-07-2013 à 19:49:23    

Reply

Marsh Posté le 19-07-2013 à 20:04:24    


Merci pour votre réponse, mais après je l'utilise comment, ça s'enregistre comment?
Désolé si la question est bête...
 
Merci

Reply

Marsh Posté le 20-07-2013 à 06:05:47    

C'est une commande Powershell avec le module AD...enfin si tu connais pas Powershell tu vas pas aller bien loin...

Reply

Marsh Posté le 20-07-2013 à 11:57:33    

nebulios a écrit :

C'est une commande Powershell avec le module AD...enfin si tu connais pas Powershell tu vas pas aller bien loin...


Et ce n'est pas possible justement d'avoir une petite explication sur comment le faire (quelque explication exemple précis) avec la commande pour le lancer, ça doit pas être bien sorcier à expliquer, si?
Et non je n'ai pas de connaissance particulière en Powershell, mais d'un autre côté si j'avais su le faire j'aurai pas poster pour avoir de l'aide.
Merci encore pour vos réponses

Reply

Marsh Posté le 20-07-2013 à 12:31:57    

c'est pour ça que pour les trucs de base une simple recherche suffit, des bouquins existent.
C'est comme si tu demandais comment on allume un ordinateur là :/
 
http://lmgtfy.com/?q=lancer+un+script+powershell

Reply

Marsh Posté le 20-07-2013 à 12:31:57   

Reply

Marsh Posté le 20-07-2013 à 12:46:52    

Je@nb a écrit :

c'est pour ça que pour les trucs de base une simple recherche suffit, des bouquins existent.
C'est comme si tu demandais comment on allume un ordinateur là :/
 
http://lmgtfy.com/?q=lancer+un+script+powershell


Donc pour toi la solution pour quelqu'un qui ne sait pas faire quelque chose c'est RTFM, google et achète des bouquins?
Bel esprit d'entraide je trouve.
 
Sinon merci tout de même pour les réponses apportées.

Reply

Marsh Posté le 20-07-2013 à 13:29:44    

Non mais on vient poser des questions quand on est bloqué et qu'on trouve pas. Quand la réponse se trouve en 5sec sur google ou sur le premier bouquin sur powershell oui j'estime que c'est du foutage de gueule et de l'assistanat.

Reply

Marsh Posté le 20-07-2013 à 13:57:18    

Je@nb a écrit :

Non mais on vient poser des questions quand on est bloqué et qu'on trouve pas. Quand la réponse se trouve en 5sec sur google ou sur le premier bouquin sur powershell oui j'estime que c'est du foutage de gueule et de l'assistanat.


 
Ok dans ce cas, je vais tenter autre chose :
 
Mes groupes sont dans mon AD
Nom de domaine INFOTECH.LOCAL
OU Groupe
Groupe : Utilisateurs_Simple et Utilisateurs_Avances
 
J'ai ça dans un fichier .ps1

Code :
  1. cls
  2. $templatePSO = New-Object Microsoft.ActiveDirectory.Management.Commands.ADFineGrainedPasswordPolicy
  3. $templatePSO.MinPasswordAge = [TimeSpan]::Parse("0.00:10:00" )
  4. $templatePSO.PasswordHistoryCount = 24
  5. $templatePSO.ReversibleEncryptionEnabled = $false
  6. New-ADFineGrainedPasswordPolicy -Instance $templatePSO -Name "UserPSO" -Precedence 100 -Description "Regle mot de passe utilsateurs simple" -DisplayName "Service Accounts PSO" -MaxPasswordAge "100.00:00:00" -MinPasswordLength 6 -LockoutThreshold = 0 -ComplexityEnabled = $false -PSOAppliesTo = CN=Utilisateurs_Simple,OU=Groupe,DC=INFOTECH,DC=LOCAL
  7. New-ADFineGrainedPasswordPolicy -Instance $templatePSO -Name "AdminPSO" -Precedence 200 -Description "Regle mot de passe administrateurs" -DisplayName "Domain Administrators PSO" -MaxPasswordAge "31.00:00:00" -MinPasswordLength 10 -LockoutThreshold = 3 ComplexityEnabled = $true -LockoutDuration = [TimeSpan]::Parse("1.00:00:00" ) -LockoutObservationWindow = [TimeSpan]::Parse("0.00:30:00" ) -PSOAppliesTo = CN=Utilisateurs_Avances,OU=Groupe,DC=INFOTECH,DC=LOCAL


 
Je met mon script dans c:\ par exemple
Et je tape dans une fenêtre powershell pour exécuter mon script :  

Code :
  1. powershell c:\monscript.ps1


Message édité par tototimes le 20-07-2013 à 14:14:28
Reply

Marsh Posté le 20-07-2013 à 14:07:42    

En powershell j'ai tapé ça avant
#Voir si l'exécution de script est autorisé
Get-ExecutionPolicy
 
#Autoriser l'exécution de script
Set-ExecutionPolicy RemoteSigned
 
Et quand je tape j'exécute mon script cité plus haut j'ai ce message :

Code :
  1. New-Object : Le type [Microsoft.ActiveDirectory.Management.Commands.ADFineGrainedPasswordPolicy] est introuvable : vérifiez que l'assembly dans lequel il se trouve est chargé.
  2. Au niveau de C:\script1.ps1 : 2 Caractère : 26
  3. + $templatePSO = New-Object <<<<  Microsoft.ActiveDirectory.Management.Commands.ADFineGrainedPasswordPolicy
  4.     + CategoryInfo          : InvalidType: (:) [New-Object], PSArgumentException
  5.     + FullyQualifiedErrorId : TypeNotFound,Microsoft.PowerShell.Commands.NewObjectCommand
  6. La propriété « MinPasswordAge » est introuvable sur cet objet ; assurez-vous qu'elle existe et qu'elle peut être définie.
  7. Au niveau de C:\script1.ps1 : 3 Caractère : 14
  8. + $templatePSO. <<<< MinPasswordAge = [TimeSpan]::Parse("0.00:10:00" )
  9.     + CategoryInfo          : InvalidOperation: (MinPasswordAge:String) [], RuntimeException
  10.     + FullyQualifiedErrorId : PropertyNotFound
  11. La propriété « PasswordHistoryCount » est introuvable sur cet objet ; assurez-vous qu'elle existe et qu'elle peut être définie.
  12. Au niveau de C:\script1.ps1 : 4 Caractère : 14
  13. + $templatePSO. <<<< PasswordHistoryCount = 24
  14.     + CategoryInfo          : InvalidOperation: (PasswordHistoryCount:String) [], RuntimeException
  15.     + FullyQualifiedErrorId : PropertyNotFound
  16. La propriété « ReversibleEncryptionEnabled » est introuvable sur cet objet ; assurez-vous qu'elle existe et qu'elle peut être définie.
  17. Au niveau de C:\script1.ps1 : 5 Caractère : 14
  18. + $templatePSO. <<<< ReversibleEncryptionEnabled = $false
  19.     + CategoryInfo          : InvalidOperation: (ReversibleEncryptionEnabled:String) [], RuntimeException
  20.     + FullyQualifiedErrorId : PropertyNotFound
  21. Le terme « New-ADFineGrainedPasswordPolicy » n'est pas reconnu comme nom d'applet de commande, fonction, fichier de script ou programme exécutable. Vérifiez l'orthographe du nom, ou si un chemin d'accès existe, vérifiez que le chemin d'accès est correct et réessayez.
  22. Au niveau de C:\script1.ps1 : 7 Caractère : 32
  23. + New-ADFineGrainedPasswordPolicy <<<<  -Instance $templatePSO -Name "UserPSO" -Precedence 100 -Description "Regle mot de passe utilsateurs simple" -DisplayName "Service Accounts PSO" -MaxPasswordAge "100.00:00:00" -MinPasswordLength 6 -LockoutThreshold = 0 -ComplexityEnabled = $false -PSOAppliesTo = CN=Utilisateurs_Simple,OU=Groupe,DC=INFOTECH,DC=LOCAL
  24.     + CategoryInfo          : ObjectNotFound: (New-ADFineGrainedPasswordPolicy:String) [], CommandNotFoundException
  25.     + FullyQualifiedErrorId : CommandNotFoundException
  26. Le terme « New-ADFineGrainedPasswordPolicy » n'est pas reconnu comme nom d'applet de commande, fonction, fichier de script ou programme exécutable. Vérifiez l'orthographe du nom, ou si un chemin d'accès existe, vérifiez que le chemin d'accès est correct et réessayez.
  27. Au niveau de C:\script1.ps1 : 8 Caractère : 32
  28. + New-ADFineGrainedPasswordPolicy <<<<  -Instance $templatePSO -Name "AdminPSO" -Precedence 200 -Description "Regle mot de passe administrateurs" -DisplayName "Domain Administrators PSO" -MaxPasswordAge "31.00:00:00" -MinPasswordLength 10 -LockoutThreshold = 3 ComplexityEnabled = $true -LockoutDuration = [TimeSpan]::Parse("1.00:00:00" ) -LockoutObservationWindow = [TimeSpan]::Parse("0.00:30:00" ) -PSOAppliesTo = CN=Utilisateurs_Avances,OU=Groupe,DC=INFOTECH,DC=LOCAL
  29.     + CategoryInfo          : ObjectNotFound: (New-ADFineGrainedPasswordPolicy:String) [], CommandNotFoundException
  30.     + FullyQualifiedErrorId : CommandNotFoundException


 
Est ce que la on peut me donner un petit coup de main voir ou je me suis trompé?
Merci d'avance.


Message édité par tototimes le 20-07-2013 à 14:15:14
Reply

Marsh Posté le 20-07-2013 à 14:32:46    

J'ai essayé de faire ceci dans un script2.ps1

Code :
  1. cls
  2. Import-Module activedirectory -ErrorAction SilentlyContinue
  3. New-ADFineGrainedPasswordPolicy -Name "UserPSO" -Precedence 10 -PasswordHistoryLength = 1 -Description "Regle mot de passe utilsateurs simple" -DisplayName "Service Accounts PSO" -ReversibleEncryptionEnabled = $false -MinimumPasswordAge = "0.00:10:00" -MaximumPasswordAge "100.00:00:00" -MinimumPasswordLength 6 -LockoutThreshold = 0 -ComplexityEnabled = $false -PSOAppliesTo = CN=Utilisateurs_Simple,OU=Groupe,DC=INFOTECH,DC=LOCAL
  4. New-ADFineGrainedPasswordPolicy -Name "AdminPSO" -Precedence 20 -PasswordHistoryLength = 24 -Description "Regle mot de passe administrateurs" -DisplayName "Domain Administrators PSO" -ReversibleEncryptionEnabled = $false -MinimumPasswordAge = "0.00:10:00" -MaximumPasswordAge "31.00:00:00" -MinimumPasswordLength 10 -LockoutThreshold = 3 ComplexityEnabled = $true -LockoutDuration = "1.00:00:00" -LockoutObservationWindow = "0.00:30:00" -PSOAppliesTo = CN=Utilisateurs_Avances,OU=Groupe,DC=INFOTECH,DC=LOCAL


 
Mais j'ai toujours un message d'erreur

Code :
  1. New-ADFineGrainedPasswordPolicy : Impossible de convertir « System.String » en type « System.Nullable`1[System.Boolean] », requis par le paramètre « ReversibleEncryptionEnabled ».
  2. Au niveau de C:\script2.ps1 : 4 Caractère : 208
  3. + New-ADFineGrainedPasswordPolicy -Name "UserPSO" -Precedence 10 -PasswordHistoryLength = 1 -Description "Regle mot de passe utilsateurs simple" -DisplayName "Service Accounts PSO" -ReversibleEncryptionEnabled <<<<  = $false -MinimumPasswordAge = "0.00:10:00" -MaximumPasswordAge "100.00:00:00" -MinimumPasswordLength 6 -LockoutThreshold = 0 -ComplexityEnabled = $false -PSOAppliesTo = CN=Utilisateurs_Simple,OU=Groupe,DC=INFOTECH,DC=LOCAL
  4.     + CategoryInfo          : InvalidArgument: (:) [New-ADFineGrainedPasswordPolicy], ParameterBindingException
  5.     + FullyQualifiedErrorId : CannotConvertArgument,Microsoft.ActiveDirectory.Management.Commands.NewADFineGrainedPasswordPolicy
  6. New-ADFineGrainedPasswordPolicy : Impossible de convertir « System.String » en type « System.Nullable`1[System.Boolean] », requis par le paramètre « ReversibleEncryptionEnabled ».
  7. Au niveau de C:\script2.ps1 : 5 Caractère : 212
  8. + New-ADFineGrainedPasswordPolicy -Name "AdminPSO" -Precedence 20 -PasswordHistoryLength = 24 -Description "Regle mot de passe administrateurs" -DisplayName "Domain Administrators PSO" -ReversibleEncryptionEnabled <<<<  = $false -MinimumPasswordAge = "0.00:10:00" -MaximumPasswordAge "31.00:00:00" -MinimumPasswordLength 10 -LockoutThreshold = 3 ComplexityEnabled = $true -LockoutDuration = "1.00:00:00" -LockoutObservationWindow = "0.00:30:00" -PSOAppliesTo = CN=Utilisateurs_Avances,OU=Groupe,DC=INFOTECH,DC=LOCAL
  9.     + CategoryInfo          : InvalidArgument: (:) [New-ADFineGrainedPasswordPolicy], ParameterBindingException
  10.     + FullyQualifiedErrorId : CannotConvertArgument,Microsoft.ActiveDirectory.Management.Commands.NewADFineGrainedPasswordPolicy


 
Est ce qu'on peut voir ou je me suis trompé?  
Merci d'avance.


Message édité par tototimes le 20-07-2013 à 14:37:30
Reply

Marsh Posté le 20-07-2013 à 16:14:25    

Apparemment certaines commandes ne fonctionnent pas sauf si je me trompe.

Reply

Marsh Posté le 20-07-2013 à 16:28:07    

enlève les = il y en a pas sur mon lien

Reply

Marsh Posté le 20-07-2013 à 17:23:36    

Sans les "=" ça me faisait des erreurs aussi du coup j'ai retiré au fur et a mesure ceux qui faisaient des erreurs et finalement ça passe, et j'ajoute mes objets PSO à des groupes.
Certaines options des objets PSO sont créés avec des paramètres par défaut mais ce n'est pas gênant.

Reply

Marsh Posté le 20-07-2013 à 21:02:51    

Donc en gros tu mets en prod des scripts auquel tu ne comprends rien :/ C'est juste magnifique :/

Reply

Marsh Posté le 21-07-2013 à 10:45:56    

nebulios a écrit :

Donc en gros tu mets en prod des scripts auquel tu ne comprends rien :/ C'est juste magnifique :/


Non c'est pas pour de la production, mais ça m'a quand même permis de comprendre comment ça marche (du moins pour ça)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed