Utilisation "import-module activedirectory"
pbh974
Messages postés
2
Statut
Membre
-
choubaka Messages postés 39984 Statut Modérateur -
choubaka Messages postés 39984 Statut Modérateur -
Bonjour,
Dans un domaine AD, je souhaite exécuter un script à l'ouverture de session des utilisateurs en Powershell (via GPO) afin de leur envoyer un message si la date de changement de leur mot de passe dépasse un certain nombre de jour (60 jours).
En local sur un DC pas de problème le script fonctionne correctement, mais quand le script est exécuté sur le poste de l'utilisateur (à l'ouverture de session via la GPO) cela ne fonctionne pas car il n'y a pas d'accès au module "ActiveDirectory" (la fonctionnalité RSAT n'est pas installée sur les postes des utilisateurs et je ne souhaites pas l'installer naturellement) . Du coup j'ai invariablement le message :
import-module : Le module "ActiveDirectory" spécifié n'a pas été chargé, car aucun fichier de module valide n'a été trouvé dans un répertoire de module.
Voici le code de mon script :
Pour info le script a été positionné dans le netlogon du domaine et tous les utilisateurs peuvent l'exécuter naturellement.
Quelqu'un aurait-il une solution pour importer le module "ActiveDirectory" qui me permettrait d'utiliser la fonction "Get-ADUser "? Ou éventuellement une autre façon de faire...
Merci d'avance
EDIT: Discussion déplacée dans le forum PowerShell
EDIT² : Ajout des BALISES DE CODE
Dans un domaine AD, je souhaite exécuter un script à l'ouverture de session des utilisateurs en Powershell (via GPO) afin de leur envoyer un message si la date de changement de leur mot de passe dépasse un certain nombre de jour (60 jours).
En local sur un DC pas de problème le script fonctionne correctement, mais quand le script est exécuté sur le poste de l'utilisateur (à l'ouverture de session via la GPO) cela ne fonctionne pas car il n'y a pas d'accès au module "ActiveDirectory" (la fonctionnalité RSAT n'est pas installée sur les postes des utilisateurs et je ne souhaites pas l'installer naturellement) . Du coup j'ai invariablement le message :
import-module : Le module "ActiveDirectory" spécifié n'a pas été chargé, car aucun fichier de module valide n'a été trouvé dans un répertoire de module.
Voici le code de mon script :
import-module ActiveDirectory $Seuil_maxi = 60 $name_user = $env:USERNAME $user_current = Get-ADUser -filter {SamAccountName -eq $name_user } -properties SamAccountName, passwordlastset, passwordneverexpires | select-object Name, passwordlastset, SamAccountName if (-not ([string]::IsNullOrEmpty($user_current.passwordlastset))) { $last_change_pwd = Get-Date $user_current.passwordlastset -Format "dd/MM/yyyy" $Date_du_jour = (Get-Date).ToString("dd/MM/yyyy") $ts = New-TimeSpan -Start $last_change_pwd -End $Date_du_jour # Affichage du message d'information if ($ts.Days -gt $Seuil_maxi) { powershell -WindowStyle hidden -Command "& {Add-Type -AssemblyName System.Windows.Forms; [System.Windows.Forms.MessageBox]::Show('Bonjour, veuillez changer votre mot de passe', 'Info Users', 'Ok', [System.Windows.Forms.MessageBoxIcon]::Information);}" } }
Pour info le script a été positionné dans le netlogon du domaine et tous les utilisateurs peuvent l'exécuter naturellement.
Quelqu'un aurait-il une solution pour importer le module "ActiveDirectory" qui me permettrait d'utiliser la fonction "Get-ADUser "? Ou éventuellement une autre façon de faire...
Merci d'avance
EDIT: Discussion déplacée dans le forum PowerShell
EDIT² : Ajout des BALISES DE CODE
A voir également:
- Utilisation "import-module activedirectory"
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Pas de module ci - Forum TV & Vidéo
- Manque cam module - Forum TNT / Satellite / Réception
- Persistence module - Forum logiciel systeme
3 réponses
Bonjour Choubaka,
Merci pour ta réponse, mais mon problème ne vient pas d'une impossibilité de définir une stratégie d'expiration de mot de passe (la GPO par défaut du domaine fait ça très bien). Nous avons constaté que plusieurs utilisateur on l'option "le mot de passe n'expire jamais" et la la GPO n'y peux rien (ce paramètre prime sur la GPO). Il s'agit de pouvoir vérifier à l'ouverture de session des utilisateurs depuis combien de temps ils n'ont pas changés leur mot de passe via la commande "Get-aduser", sauf que cela ne fonctionne pas sur les postes des utilisateurs car ils n'ont pas le module RSAT d'installé sur leur poste et je ne souhaites pas l'installer sur tous les postes (donc pas accès au module activedirectory).
Merci pour ta réponse, mais mon problème ne vient pas d'une impossibilité de définir une stratégie d'expiration de mot de passe (la GPO par défaut du domaine fait ça très bien). Nous avons constaté que plusieurs utilisateur on l'option "le mot de passe n'expire jamais" et la la GPO n'y peux rien (ce paramètre prime sur la GPO). Il s'agit de pouvoir vérifier à l'ouverture de session des utilisateurs depuis combien de temps ils n'ont pas changés leur mot de passe via la commande "Get-aduser", sauf que cela ne fonctionne pas sur les postes des utilisateurs car ils n'ont pas le module RSAT d'installé sur leur poste et je ne souhaites pas l'installer sur tous les postes (donc pas accès au module activedirectory).
Bonjour
En effet, mais malheureusement RSAT doit absolument être installé .. Plus d'infos ci-dessous.
https://www.it-connect.fr/chapitres/installer-le-module-active-directory-sur-windows-10-et-windows-server/
En effet, mais malheureusement RSAT doit absolument être installé .. Plus d'infos ci-dessous.
https://www.it-connect.fr/chapitres/installer-le-module-active-directory-sur-windows-10-et-windows-server/