wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Windows server 2012 R2 AD域密码过期邮件提醒大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

最近接领导指示,说要做一个域密码提醒的服务,这样会更人性化些,员工也就不必等过期了来找管理员重置。但是但是本人不懂脚本,就干脆从网上找了些链接做为参,这里感谢此链接的作者 https://www.yeboyzq.com/windowsserver/632.html 以下是最终的过程 Import-Module Activedirectory $alladuser=get-aduser -sear
最近接领导指示,说要做一个域密码提醒的服务,这样会更人性化些,员工也就不必等过期了来找管理员重置。但是但是本人不懂脚本,就干脆从网上找了些链接做为参,这里感谢此链接的作者 https://www.yeboyzq.com/windowsserver/632.html

以下是最终的过程

Import-Module Activedirectory

$alladuser=get-aduser -searchbase "ou=,ou=,dc=*,dc=com" -Filter ‘passwordNeverExpires -eq "false" -and enabled -eq "true"‘ |ForEach{$_.SamAccountNamE}

$userlist = @()

$itmag = "@.com"

function sendmail($mailaddr,$body) #定义发送邮件方法
{
$msg=New-Object System.Net.Mail.Mail@R_874_8798@ge
$msg.To.Add($mailaddr)
#$msg.bcc.Add($itmag)
$msg.From = New-Object System.Net.Mail.MailAddress("@.com","@.com",[system.Text.Encoding]::GetEncoding("UTF-8"))
$msg.Subject = "域账户密码即将过期提醒!"
$msg.SubjectEncoding = [system.Text.Encoding]::GetEncoding("UTF-8")
$msg.body =$body
$msg.bodyEncoding = [system.Text.Encoding]::GetEncoding("UTF-8")
$msg.IsBodyHtml = $false
#$msg.Priority = [System.Net.Mail.MailPriority]::High
$client = New-Object System.Net.Mail.SmtpClient("smtp.office365.com")
$client.Port = 587
$client.EnableSsl = $true
$client.UseDefaultCredentials = $false
$client.Credentials=New-Object System.Net.NetworkCredential("@.com","password")

try {$client.Send($msg)}  
catch [Exception]
{$($_.Exception.@R_874_8798@gE)  
$mailaddr  
}@H_607_66@ 

}

foreach ($user in $alladuser)
{
$pwdlastset= Get-ADUser $user -Properties | %{$_.passwordlastset}
$pwdlastday=$pwdlastset.AddDays(90)
$Now=get-date
$expire_days=($pwdlastday - $Now).Days
$chineseusername= Get-ADUser $user -Properties
| %{$_.DisplaynamE}
$pwdset = $pwdlastset.ToString(‘YYYY年MM月dd日 HH:mm:ss‘)
$pwdlast = $pwdlastset.AddDays(90).ToString(‘YYYY年MM月dd日 HH:mm:ss‘)
$tomailaddr = $user + "@huobi.com"
if($expire_days -lt 8 -and $expire_days -ge 0 )
{
#邮件正文
$Emailbody=
"Dear $chineseusername :
您的域账户密码即将在 $expire_days 天后过期 ,请您立即更改。
过期时间段参
上次密码设置时间: $pwdset
本次密码到期时间: $pwdlast

此密码为有线联网、无线联网、×××、加域计算机的使用密码。

    更改密码请遵循以下原则:
    ○密码长度最少 10 位;
    ○强制密码历史 3个(不能使用之前最近使用的 3 个密码);
    ○密码可使用最长时间90天,90天以内可根据链接自行更改,超过90天请联系IT更改;
          北京IT:****   海南IT:****   深圳IT:****

    ○密码符合复杂性需求(大写字母、小写字母、数字和符号四种中必须有三种、且密码口令中不得包括全部或部分用户名)
    ○windows 更改:键盘按  Ctrl+Alt+Del
    ○MACBook更改请访问: 北京: http://
                            海南: http://
                            深圳:http://
    "        
sendmail $tomailaddr $Emailbody   
}
if($expire_days -lt 0){
     $Emailbody=
    "Dear $chineseusername :
    您的域账户密码已过期 ,请联系IT人员进行更改。
                上次密码设置时间: $pwdset
                本次密码到期时间: $pwdlast
   北京IT:****   海南IT:****   深圳IT:****
    "
sendmail $tomailaddr $Emailbody
}@H_607_66@ 

}

最终邮件效果
即将过期

Windows server 2012 R2 AD域密码过期邮件提醒


已过期

Windows server 2012 R2 AD域密码过期邮件提醒

大佬总结

以上是大佬教程为你收集整理的Windows server 2012 R2 AD域密码过期邮件提醒全部内容,希望文章能够帮你解决Windows server 2012 R2 AD域密码过期邮件提醒所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。