手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>服务器技术>Mail服务器>列表

用ASP代码创建EXCHANGE2000用户

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
前段时间写出一个程式,只是不完善,不能判断是否存在该用户,现在补充查找功能。
代码不足之处,希不吝指教!
完整代码如下:

bitsCN.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只判断是否有该用户,而不管该在什么位置,这 bbs.bitsCN.com
' 点大家要注意。
' 程式是中用到一些知识点均加以注释,希望对大家对所帮助
' 另外需要注意的是帐号名字不能小于2位,而且不能使用中文
' 名字. www_bitscn_com

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

bbs.bitsCN.com

objRs.Close
Set objRs = Nothing

www.bitsCN.com

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" '用户登录帐号 www_bitscn_com
objUser.SetInfo '写进AD中

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

'创建邮箱
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()'> "

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS