java 判断域密码到期提醒,Exchange Server 2010下,检测用户密码到期通知提醒脚本...

############################################

#Author:wangtingdong

#For:检测AD密码过期时间并邮件通知

#Version:1.0

##############################################

Import-Module Activedirectory

#@1和@2选择一个执行

#@1检索出指定OU里不包含设置了永不过期及禁用的账户

#$alladuser=get-aduser -searchbase "DC=doubioa,DC=ren" -Filter 'PasswordNeverExpires -eq "false" -and enabled -eq "true"'  |ForEach{$_.SamAccountName}

#@2检索出所有OU里不包含设置了永不过期及禁用的账户

$alladuser=Get-ADUser -Filter 'PasswordNeverExpires -eq "false" -and enabled -eq "true"' |ForEach{$_.SamAccountName}

$userlist = @()

#################################################

#检测AD密码过期时间并邮件通知相应账户

##################################################

foreach ($user in $alladuser){

#密码最后一次更改时间

$pwdlastset=Get-ADUser $user -Properties * |ForEach{$_.passwordlastset}

#密码的过期时间

$pwdlastday=($pwdlastset).adddays(90)

#当前时间

$now=get-date

#距离密码过期的时间

$expire_days=($pwdlastday - $now).Days

#判断过期时间天小于7天的账户

if($expire_days -lt 7 ){

$chineseusername= Get-ADUser $user  -Properties * |ForEach{$_.Displayname}

#邮件正文

$Emailbody=

@"

您好, $chineseusername

lang="EN-US"> :

    您的邮箱账户密码即将在

color="#ff0000">$expire_days

天后过期,

$pwdlastday 之后您将无法使用该账户登陆相关系统,请您尽快登录 http://mail.doubi.ren 更改帐号密码。

    重置密码过程请遵循以下原则:

    1、密码长度最少

lang="EN-US">8

位,密码中不能包含帐号信息;

    2、密码可使用最长时间

lang="EN-US">90

天,过期需要更改密码;

    3、密码设置中必须包含:英文大写字母(A-Z),英文小字字母(a-z),10个基本数字(0-9),特殊字符(如!$ % ^ *等)。

    4、强制密码历史

lang="EN-US">24

个(不能使用之前最近使用的 24个密码);

    密码修改方法请登录:http://wiki.doubioa.ren.com/changepassword

************************************************************************************************************************************************************************

系统自动提醒请不要回复

lang="EN-US">!

如有任何疑问,请联系help.list@doubi.ren,IT支持电话:010-8888888

"@

#SMTP发信验证

$anonUser = pwd@doubioa.ren

$anonPass = ConvertTo-SecureString "89OP:./}+" -AsPlainText -Force

#发送邮件

Send-MailMessage -To "$user@doubi.ren" -Subject "您的域账户密码即将过期,请尽快更改!" -Bodyashtml $Emailbody -From "pwd@doubi.ren"  -SmtpServer "mail.doubi.ren" -Encoding ([System.Text.Encoding]::UTF8)

#############################################

#查找账户的密码过期时间并发送至管理员账户

#############################################

$username=Get-ADUser $user  -Properties *

$userobject=New-object psobject

$userobject | Add-Member -membertype noteproperty -Name 用户名            -value $username.displayname

$userobject | Add-Member -membertype noteproperty -Name 邮箱              -Value $username.mail

$userobject | Add-Member -membertype noteproperty -Name 最后一次密码设置  -Value $username.Passwordlastset

$userobject | Add-Member -membertype noteproperty -Name 密码过期时间      -Value $pwdlastday

$userobject | Add-Member -membertype noteproperty -Name 距离密码过期天数  -Value $expire_days

$userlist+=$userobject

}

}

$EmailbodyHTML=$userlist|

sort-object 距离密码过期天数 |

ConvertTo-Html |

Out-String

Send-MailMessage -To "help.list@doubi.ren" -Subject "域账户密码即将过期人员汇总通知" -Bodyashtml $EmailbodyHTML -From "pwd@doubi.ren"  -SmtpServer "mail.doubi.ren"  -Encoding ([System.Text.Encoding]::UTF8)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值