none
Powershell Script pwdLastSet RRS feed

  • Question

  • Bonjour,

    Je dois automatiser un envoi de mail concernant l'expiration des mots de passe dans mon entreprise. Cependant j'ai un problème concernant la récupération d'un donné me permettant de choisir à qui envoyer ces mails.

    L'objectif de mon script est de récupérer l'attribut pwdlastset d'un utilisateur, de lui ajouter 90 jours, de prendre le résultat de ce calcul et de le mettre dans une variable, ensuite ce calcul sera comparé à la date du jour et s'il reste 10 jours par exemple ça enverra un mail à l'utilisateur lui disant qu'il lui reste 10 jours. Vous allez me dire "pourquoi tu n'utilises pas une GPO c'est beaucoup plus simple" 


    • Modifié Nightingal vendredi 5 juillet 2019 07:35
    vendredi 5 juillet 2019 07:34

Réponses

  • J'ai trouvé, et pour ceux qui s'intéresse à la réponse voici ce que j'ai trouvé.

    Get-ADUser -filter {Enabled -eq $True } -Properties pwdLastSet | select Name, @{name ="pwdLastSet";expression={$([datetime]::FromFileTime($_.pwdLastSet)).AddDays(90)}} | foreach{
    
    $days_left_for_pwd_to_expire = ($_.pwdLastSet - (Get-Date)).days
    Write-Output "$days_left_for_pwd_to_expire are left for the password to get expire for $($_.Name)" 

    Il faut remercier DumbleD0re car c'est de lui que viens ce script.

    • Marqué comme réponse Nightingal vendredi 5 juillet 2019 12:09
    vendredi 5 juillet 2019 12:09

Toutes les réponses

  • Et vous aurez raison, sauf que je ne peux pas utiliser de GPO puisque mon parc informatique n'est composé uniquement que de mac et la GPO demandant l'expiration du mot de passe tous les 90 jours ne fonctionne pas, ce n'est que 42 jours qui sont prit en compte et je n'ai jamais réussi à trouver comment faire.

    voila déjà comment je récupère le pwdLastSet de mes utilisateurs et que j'ajoute des jours à cette date.

    Get-ADUser -filter {Enabled -eq $True"} -Properties pwdLastSet
    select @{name ="pwdLastSet";`
    expression={$([datetime]::FromFileTime($_.pwdLastSet)).AddDays()}}


    vendredi 5 juillet 2019 07:39
  • J'ai trouvé, et pour ceux qui s'intéresse à la réponse voici ce que j'ai trouvé.

    Get-ADUser -filter {Enabled -eq $True } -Properties pwdLastSet | select Name, @{name ="pwdLastSet";expression={$([datetime]::FromFileTime($_.pwdLastSet)).AddDays(90)}} | foreach{
    
    $days_left_for_pwd_to_expire = ($_.pwdLastSet - (Get-Date)).days
    Write-Output "$days_left_for_pwd_to_expire are left for the password to get expire for $($_.Name)" 

    Il faut remercier DumbleD0re car c'est de lui que viens ce script.

    • Marqué comme réponse Nightingal vendredi 5 juillet 2019 12:09
    vendredi 5 juillet 2019 12:09