设为首页   加入最爱           最新更新:全方位英文文章资料库
 
资料坊搜索: 标题 全文     
用ASP代码创建EXCHANGE2000用户
   首页>>YesizeCOM>>电脑技能坊>>ASP>>正文       
 
广告招租,e-mail:yesize@hotmail.com

广告招租,e-mail:yesize@hotmail.com


前段时间写出一个程序,只是不完善,不能判断是否存在该用户,现在补充查找功能。
代码不足之处,希不吝指教!
完整代码如下:

<%@ Language=VBScript codepage=936%>
<% Option Explicit %>
<HTML>
<HEAD>
<meta http-equiv=Content-Type content=text/html; charset=gb2312>
<META NAME=GENERATOR Content=Microsoft Visual Studio 7.0>
</HEAD>
<BODY>
<%
程序目的:创建EXCHANGE 2000 邮箱用户
程序实现方式:首先在AD(ACTIVE DIRECTORY:活动目录)中查找是否有该用
户,如果有则提示用户该名字已经存在,没有则创建该用户,
并为该用户创建邮箱。
程序设计:skyword, skyword@21cn.com
程序日期:2001-06-27
需要注意的问题:程序使用中,应当关注LDAP的不同。并且程序的运行需要比
较主高的运行权限(我使用是管理员权限,呵呵比较不安全,
大家在实际使用中要注意,不然被人窃取了帐号不要怪我。
我也不太会设置),需要在IIS中设置(以前就是因为不了解
,走了不少弯路:) )
另外还有一种方案,查找用户可结合数据库查找,我想大家
会更熟悉一些,只是要记得在初始数据时,要把计算机内所
有的帐号都要记录进数据库,不然就不能准备判断是否该用
户,因为AD只判断是否有该用户,而不管该在什么位置,这
点大家要注意。
程序是中用到一些知识点均加以注释,希望对大家对所帮助
另外需要注意的是帐号名字不能小于2位,而且不能使用中文
名字.

Dim objUser
Dim objContainer
Dim objMailbox
Dim objMail

Dim recipname, recip
Dim ServerName, DomainName, emailname, FirstName, LastName, password

判断用户是否存在
Dim strQuery, objConn, objRs, strResult
查询语句:语法:要找什么,即查找基(<LDAP://DC=program,DC=org>);
在目录的什么地方找(&(objectCategory=person)(sAMAccountName=用户
名))(用户为?的用户;找到对象的属性(sAMAccount,ADsPath)(用户名,
LDAP地址);查找的范围(subTree:查找搜索基以下的整个子树中)。例句
就是下面这句.
具体细节请参看《ASP3高级编程》P644,机械工业出版社(好象精华区内
有这本书的电子文档,这本本书真的不错,值得购买)

strQuery = <LDAP://DC=program,DC=org>;(&(objectCategory=person) & _
(sAMAccountName= & Request.Form (txtUserName) & )); & _
sAMAccountName,ADsPath;subTree
打开ADSI
Set objConn = Server.CreateObject (ADODB.Connection)
objConn.Provider = ADsDSOObject
下面这句是用合法用户打开,不然查找的结果有误,本例中使用管理员帐号
objConn.Open Active Directory Provider,CN=Administrator, CN=users, DC=program, DC=org,skyword
查找用户是否存在,不存在则创建用户
Set objRs = Server.CreateObject (ADODB.Recordset)
objRs.Open strQuery, objConn

if not objRs.EOF then
strResult = False
Response.Write 用户已经存在
else
创建用户
strResult = True
End if

objRs.Close
Set objRs = Nothing

objConn.Close
Set objConn = Nothing

If strResult = True Then
创建用户的代码

ServerName,DomainName是ADSI需要的LDAP信息,是必需的。
ServerName = skyword.program.org
DomainName = DC=program,DC=org

emailname = Request.Form (txtUserName)
password = Request.Form (txtPassword)
recip = CN= & emailname
下面这语个IF语句没多少价值。 :)
if Request.Form (txtTruename) <> then
LastName = sky
FirstName = Word
else
LastName = Last
FirstName = Name
end if

打开对象
Set objContainer = GetObject(LDAP:// & ServerName & /OU=China.org, & DomainName)

创建帐号
Set objUser = objContainer.Create(User, recip)
objUser.Put samAccountName, emailname 帐号
objUser.Put sn, LastName
objUser.Put givenName, FirstName
objUser.Put DisplayName, emailname & @hina.org 显示的名字
objUser.Put mail, emailname & @China.org
objUser.Put userPrincipalName, emailname & @China.org 用户登录帐号
objUser.SetInfo 写进AD中

objUser.SetPassword password 用户密码
objUser.AccountDisabled = False 帐号生效
objUser.SetInfo 写进AD,一定要,为什么我也不清楚

创建邮箱
Set objMailbox = objUser
下面的LDAP是查出来的,安装不同,LDAP会有所不同。
objMailbox.CreateMailbox LDAP://skyword.program.org/ & _
CN=Mailbox Store (SKYWORD),CN=First Storage Group, & _
CN=InformationStore,CN=SKYWORD,CN=Servers, & _
CN=First Administrative Group,CN=Administrative Groups, & _
CN=ecitye,CN=Microsoft Exchange,CN=Services, & _
CN=Configuration,DC=program,DC=org
objUser.SetInfo

Set objContainer = Nothing
Set objUser = Nothing
Set objMailbox = Nothing
下面是简单的错误处理。
if err <> 0 then
Response.Write 创建用户失败!请重试一次<br>
Response.Write <input type=button value=重试一次 onclick=vbscript:history.back()>
Response.Write <input type=button value=返回 onclick=vbscript:window.location.href=index.html>
else
以下是简单的测试
Set objMail = Server.CreateObject (CDONTS.NewMail)
objMail.Send Admins@china.org, emailname & @china.org, Welcome, Welcome use China.org Mail
set objMail = Nothing

Response.Write emailname & 用户已经成功创建!!!! & <br>三秒后导向登录页!
Response.AddHeader refresh,3;url=http://mail.china.org
end if
End If
%>
</BODY>
</HTML>


上一篇:透过 ASP 修改 NT 使用者密码 下一篇:如何通过编程为组添加成员

版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com
  热门小游戏分类 
射击小游戏 连连看小游戏
台球小游戏 成人小游戏
CS小游戏 化妆小游戏
赛车小游戏 休闲小游戏
篮球小游戏 换装小游戏
儿童小游戏 牛牛小游戏
麻将小游戏 冒险小游戏
美媚小游戏 益智小游戏
体育小游戏  
Society Recreation & Sports
Travel & Leisure Communications
Vehicles Computers
Fashion Arts & Entertainment
Reference & Education Disease & Illness
Writing & Speaking Politics
Product Reviews Food & Beverage
Finance Internet Business
Self Improvement Home & Family
Health & Fitness Business
最新更新内容
警惕“公务员报考热”背
公务员考试不是丈母娘考
一名新公务员的自白:我
公务员考脑筋急转弯与挂
北努斗:2006行政能力测
大讨论:06行测BT题目大
过来人回忆:当年,我也
一家之言:公务员热折射
公务员考试申论要是有正
数十万大学生走进公务员
      粤ICP备05005424         Copyright ©2000 - 2004 Yesize.COM