域用户登录后是默认加入本地users组的,但USERs组中的用户权限太小了,如不能设置共享,安装本地打印机,等,所以一个网管域中电可行的方案就是将usrs组用户提升为Power Users 或Domain Admin组。安全风险是增加了,但是一般的场合问题不是很大。
一、将域用户加入本地power user组
脚本:
Option Explicit
Dim oWshNetwork
Set oWshNetwork = WScript.CreateObject("WScript.Network")
Dim sLogonComputerName
'得到当前登录计算机名
sLogonComputerName = oWshNetwork.ComputerName
'WScript.Echo sLogonComputerName
Dim oLocalGroup '得到本地 Power Users Group 对象
Set oLocalGroup = GetObject("WinNT://" + sLogonComputerName + "/Power Users,Group")
'WScript.Echo oLocalGroup.Name
'注意下一句中的 HENU-SOFTLAB 它必须与域的NETBIOS名大小写相一致,否则会出错
If oLocalGroup.IsMember("WinNT://HENU-SOFTLAB/Domain Users") Then
WScript.Quit
Else
oLocalGroup.Add "WinNT://HENU-SOFTLAB/Domain Users"
End If
二、将域用户加入到客户机本地管理员组
用net命令:(用本地管理员登录后)
整条命令:runas /user: administrator "net localgroup administrators domain.com\mmuser /add"
命令说明:这个命令是把MM域中的账号加入到本地管理员组中。
其中administrator 是你在本机的管理员账号,domain.com是你我域名称,mmuser是需要提升权限的用户
运行完命令会提示输入本机administrator的密码,接着命令就会成功完成。
之后可以使用 runas /user: administrator "net localgroup administrators domain.com\mmuser /del"来删除掉MM的本地管理员权限
三、把power users组的用户提升为administrators组
我以前编写的一个脚本admin.vbs,用来远程把power users组的用户提升为administrators组,适当修改以下再加点批处理程序,就可以应该可以实现楼主的功能。以下内容,供参考:
if wscript.arguments.count <> 3 then
wscript.echo "Usage: cscript " & wscript.scriptname & " computername groupname username" & vbCrLf & vbCrLf
wscript.quit
end if
Set unNamedArguments = WScript.Arguments.UnNamed
Set objGroupAdm = GetObject("WinNT://" & unNamedArguments.Item(0) & "/Administrators,group")
Set objGroupPower = GetObject("WinNT://" & unNamedArguments.Item(0) & "/" & unNamedArguments.Item(1) & ",group")
For Each objUser in objGroupPower.Members
If objUser.Name = unNamedArguments.Item(2) Then
objGroupPower.Remove(objUser.ADsPath)
objGroupAdm.Add(objUser.ADsPath)
WScript.Echo("The user "& unNamedArguments.Item(0)&":"&objUser.Name & " is changed to Administrators Group")
End if
Next 'end for
四、在组策略内先实现把用户由USERS权限升级为Power User权限
在组策略内先实现把用户由USERS权限升级为Power User权限
*打开“default domain poliy“(域控)--->计算机配置->windows设置->安全设置->受限制的组
*右击->添加组-->"Power Users"->双击该组->这个组的成员->添加-域名\domain users
*如果是windows2000的系统--运行中--输入Secedit /refresh policy_machine /enforce 实现组策略生效
*如果是windows2003的系统输入gpupdate /force
OK,你的客户端只要重启就可以实现把由USERS权限升级为Power Users权限
五、将域用户或域组加入本地组的脚本
一个AD域环境,许多用户将Domain Admins组从本地Administrators组中删除了,导致域管理员进行管理时诸多麻烦。希望用一个脚本在计算机开机时能够自动将Domain Admins组加入本地Administrators组中。
这个脚本稍作修改可以将任意的域用户或组加入到本地组中。脚本如下:
'────────────────────────────
'脚本功能:
'将域管理员组加入计算机的本地管理员组
'主要用于修复域管理员组被手动从本地管理员组中删除的问题
'该脚本需要在已经加入域环境的计算机上运行
'本脚本稍作修改可以将任何用户或组加入到任何组中
'
'────────────────────────────
Set WshNetwork = WScript.CreateObject("WScript.Network")
'获得当前计算机的名称
strComputer = WshNetwork.ComputerName
'获得当前域的NetBIOS名称
strDomain = WshNetwork.UserDomain
'设置当前计算机的本地administrators组和域Domain Admins组
'如果需要将其他用户加入其他本地组,可以更改组名或用户名
Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators")
Set objUser = GetObject("WinNT://" & strDomain & "/Domain Admins")
'判断本地administrators组成员,如果Domain Admins已经是成员,便退出执行
For Each objListUser in objGroup.Members
If objListUser.name ="Domain Admins" Then
Wscript.Quit
End If
Next
'否则就将Domain Admins加入本地管理员组
objGroup.Add(objUser.ADsPath)
经实际测试第五个,在没有加入域的机器上运行会提示找不到域,在入域的机上运行又分两种:一种是用有入域权限用户运行会提示没有本机管理员权限,另一种是用本机管理员权限又提示没有域管理员权限,查询不到域信息,所以最后只能用第二种方法:
x.com.corp
在本机管理员下用
net localgroup administrators x\grp-it-sys /add
在有入域权限用户下用
runas /user:administrator "net localgroup administrators x\grp-it-sys /add"
亿恩科技地址(ADD):郑州市黄河路129号天一大厦608室 邮编(ZIP):450008 传真(FAX):0371-60123888
联系:亿恩小凡
QQ:89317007
电话:0371-63322206 本文出自:亿恩科技【www.enkj.com】
服务器租用/服务器托管中国五强!虚拟主机域名注册顶级提供商!15年品质保障!--亿恩科技[ENKJ.COM]
|