2014年2月2日星期日

Domino9 下代理程序实现邮箱用户internet密码过期邮件提醒

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
Domino9 下代理程序实现邮箱用户internet密码过期邮件提醒  阅读原文»

Domino9 下代理程序实现邮箱用户internet密码过期邮件提醒

Domino9 下代理程序实现邮箱用户internet密码过期邮件提醒

Domino9 下代理程序实现邮箱用户internet密码过期邮件提醒

我们大家都知道Domino下有两个用户密码,一个是notes client密码(notes client)、一个是internet密码(inotes);对于两个密码的差别在此不作详细介绍,今天主要介绍,如果通过代理程序,然后设置定时代理,每天运行一次,判断用户的internet密码是否过期,多长时间过期,然后对于用户的internet密码快过期用户将以邮件的方式提醒用户更改;

之前在文档中写过域密码过期邮件提醒;该功能是通过vbs脚本执行,然后通过定义计划任务去执行的。

我的服务器策略修改为最长时间时间为180天

clip_image002

环境介绍:

一、环境介绍:

Hostname:iio-dc.iiosoft.com

Ip:10.1.1.254

Domain:iiosoft.com

Roles:DC、dns、dhcp

Hostname:iio-mail01.iiosoft.com

Ip:10.1.1.11

Roles:Domino9 server

Hostname:iio-mail02. iiosoft.com

Ip:10.1.1.12

Roles:Domino9 server

两台Domino server

为了保证当前架构的统一,在此我新建空白的数据库(在此建议大家也通过新建空白的数据库,添加程序。),然后新建代理程序;因为我之前已经创建过新的空白数据库,Chgupwd.nsf数据库,我将会在这个个数据库上新建代理―判断用户的internet是否过期;

二、我们的思路是创建一个单独的数据库,然后在数据库上创建代理、表单等;当然也可以直接在names.nsf数据库上直接操作,但是这样不保险,所以建议还是在单独的数据库上操作;

在此我们通过desinger创建新的数据库进行操作,具体见下:

通过desinger控制台----文件---应用程序---新建

该操作也可以通过names.nsf控制台下用同样的方式创建,创建完后,只需要通过desinger打开即可;

clip_image003

创建一个名为:ChgUpwd.nsf,类型为空的数据库

clip_image004

clip_image005

别名:TimeSendMainAgent

注释:定时判断密码过期时间发送邮件

clip_image007

Dim session As NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim namesdb As NotesDatabase
Dim namesdoc As NotesDocument
Dim namesview As NotesView
Dim username AsString

clip_image009

OnErrorGoTo err_handle
Dim flag AsBoolean
Dim mstring AsString
Dim arr AsVariant
Dim maildoc As NotesDocument
Dim dt As NotesDateTime
Dim dtnow As NotesDateTime
Dim dfdaystime AsLong
Dim ritem As NotesRichTextItem
Set session = New NotesSession
Set db = session.Currentdatabase
Set doc = session.Documentcontext
Set namesdb = New NotesDatabase("","names.nsf")
IfNot namesdb.Isopen Then
MsgBox"您无权限修改,请联系管理员"
Set namesview = namesdb.Getview("People")
Set namesdoc = namesview.Getfirstdocument()
WhileNot namesdoc IsNothing
'namesdoc. HTTPPasswordChangeDate = Now
Set dtnow = session.Createdatetime(now)
If namesdoc.HTTPPasswordChangeDate(0) <> ""Then
Set dt = session.Createdatetime(namesdoc.HTTPPasswordChangeDate(0))

阅读更多内容

没有评论:

发表评论