高分求助:如何用ADSI将一个用户添加到组!

netWild 2006-04-23 10:01:54
如何用ADSI将一个本地用户添加组和如何将一个用户从组中删除!

win2000的系统

高手赐教啊!
...全文
191 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
netWild 2006-04-23
感谢 sxsgssgs(晋乡浪子) !
回复
sxsgssgs 2006-04-23
http://www.kudns.cn/Article/learnzz/aspcode/200603/99.html
回复
youzi520 2006-04-23
学习..
回复
sxsgssgs 2006-04-23
ADSI,使用ASP来完成NT管理



ADSI,使用ASP来完成NT管理
关键词:ASP
我上次说的是如何使用ADSI管理web server这次讨论ADSI如何对NT进行管理
使用ADSI对IIS进行管理需要OP4
而对NT要进行ADSI管理则需要NTLM
NTLM提供以下几个对象: Domain, Group, and User.
通过domain对象你可以增加groups和users.
警告:
以下的例子都将改变NT访问权限数据库;任意增加和改变NT用户的权限
使用前请仔细阅读,请只在测试的机器上运行这些程序,只到你掌握了NTLM
的工作原理为止。千万不要危害到真正主机的安全。
只有拥有Administrator或则Operator权限的人才能够在运行IIS机器上
更改NT的用户数据库。所以,使用Anonymous权限登录是没有权限的。
当然如果使用SSL的话也能够保证安全性。
例子如下:
新建一个用户:
可以在一个独立的服务器上,也可以在一个主域服务器上新增用户
<%

On Error Resume Next

strDomain="MACHINENAME"
strUser="jdoe"

Set oDomain = GetObject("WinNT://" & strDomain)

Set oUser = oDomain.Create ("user", strUser)

If (err.number = 0) Then
oUser.SetInfo
oUser.SetPassword "mypassword"
oUser.SetInfo
Set oUser=Nothing
End If

Set oDomain=Nothing
%>

新增加一个组:
<%

strDomain="MACHINENAME"
strGroup="Unidentified"

Set oDomain = GetObject("WinNT://" & strDomain)

Set oGroup = oDomain.Create ("group", strGroup)

oGroup.SetInfo

Set oDomain=Nothing
Set oGroup=Nothing
%>

把一个用户增加到一个组中.
<%
strDomain="MACHINENAME"
strUser="jdoe"
strGroup="Unidentified"

Set oDomain = GetObject("WinNT://" & strDomain)
Set oGroup = oDomain.GetObject("Group", strGroup)

oGroup.Add ("WinNT://" & strDomain & "/" & strUser)

Set oDomain=Nothing
Set oGroup=Nothing
%>
配置用户信息
<%

strDomain="MACHINENAME"
strUser="jdoe"

Set oUser = GetObject("WinNT://" & strDomain & "/" & strUser)

' Setting the Account Expiration to 30 days from today

dtExpirationDate=Now()
dtExpirationDate=DateAdd("d",30,dtExpirationDate)

oUser.AccountExpirationDate = dtExpirationDate

' Setting the Full Name of the User
oUser.FullName="Joe Doe"

oUser.SetInfo()

Set oUser=Nothing
%>
继承用户
<%
strDomain="MACHINENAME"
strGroup="Unidentified"

Set Group = GetObject("WinNT://" & strDomain & "/" & strGroup)

For Each Member in Group.Members

If (Member.Class="User") Then

' Here is where you would do
' something with the user

End If
Next
%>
当你是使用的NT5.0时,就不需要安装NTLM了,因为NT5.0提供对ADSI的支持。



回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2006-04-23 10:01
社区公告
暂无公告