windows server域用户提升到本地更高权限组中的方法
2004 点击·0 回帖
![]() | ![]() | |
![]() | 域用户登录后是默认加入本地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" | |
![]() | ![]() |