如何授权普通用户(users组)管理特定系统服务:http://www.canway.net/Lists/CanwayOriginalArticels/DispForm.aspx?ID=348(转载附后)
2008下可以使用组策略或安全模板来配置实现;2003下用微软提供的subinacl工具实现,如:
subinacl.exe /service * /grant=test=TOP
赋与test用户启动、停止、暂停所有服务的权利。
注意,通配符“*”有时候不包括一些特殊服务,比如apche tomcat服务。这时需要先用系统自带的sc命令获取服务的真实名称,再用subinacl配置权限。比如:
sc getkeyname “apache tomcat 6” 返回服务真实名称是“tomcat6”;
subinacl.exe /service tomcat6 /grant=test=top 赋予test用户启动、停止、暂停tomcat6服务的权利。
另外管理进程细分权限可以用process explorer这款工具,subinacl虽然也可以,但不如process explorer细致。
还有,2003下如果要使一个普通user可以共享文件夹给其他人使用,则至少要把它加入power user组才行。power user组比users组多了一些权限,再把多的权限限制住就可以了。
附一篇转载文章,稍作备注:
前几天收到客户的一个特别需求,有一台服务器的服务Service1需要授予以为普通的域用户User1重启服务的权限,并且不希望该用户拥有重启该服务器以为的其他管理权限,如远程登录服务器、服务器的管理员权限等。在windows中可以对特定服务进行授权管理,方法大概有以下三种:
1) 使用组策略进行授权
2) 使用安全模板进行授权;
3) 使用工具Subinacl.exe进行授权。
以上3个方法中第三个不能在最新的windows 2008 R2中使用。下面详细介绍以上三个方法的具体实现方式。
此方法适用于在域策略中使用,本地策略中不适用,也可在Windows 2008及R2的域中使用。在此不详细介绍组策略的新建及应用。
1) 单击“开始”,指向“管理工具”,然后单击“组策略管理”;
2) 右击“组策略对象”,然后单击“新建”。键入新的组策略对象的名称(例如,Service1服务授权),然后按 ENTER 键。
3) 单击该新建的组策略对象(如果尚未选中),然后右击“编辑”。
4) 展开“计算机配置”,展开“Windows 设置”,展开“安全设置”,然后单击“系统服务”。
5) 在右窗格中,双击要对其应用权限的服务(Service1)。
6) 单击“定义这个策略设置”复选框,将其选中。
7) 单击“编辑安全设置”。
8) 对所需的用户帐户和组授予适当的权限,并且可以在“高级”中细分相关权限,然后单击“确定”。
9) 在“选择服务启动模式”中选择“自动”,单击“确定”。
10) 将新建的组策略链接到相关的OU中。
此方法适合对单台的服务器或工作组下的服务器授权,并且在Windows 2008或R2中使用。若要使用安全模板来更改系统服务的权限,创建安全模板,操作步骤如下:
1) 单击“开始”、 单击“运行”,在“打开”框中键入mmc,然后单击“确定”。
2) 在“文件”菜单上单击“添加/删除管理单元”。
3) 单击“添加”、 单击“安全配置和分析”、 单击“添加”,单击“关闭”,然后单击“确定”。
4) 在控制台树中右键单击“安全配置和分析”,然后单击“打开数据库”。
5) 指定名称和为该的数据库的位置(直接命名即可),然后单击“打开”。
6) 在“导入模板”对话框出现,单击要导入的安全模板(该模板一样通过“添加/删除管理单元”中添加),然后单击“打开”。
7) 在控制台树中右键单击“安全配置和分析”,然后单击“立即分析计算机”。
8) 在“执行分析”对话框出现,接受显示在“错误日志文件路径”框中的日志文件的默认路径或指定所需的位置,然后单击“确定”。
9) 分析完成后请按以下方法配置服务权限:
a) 在控制台树中单击“系统服务”。
b) 在右窗格中双击服务想要更改其权限。
c) 单击以选中“在数据库中定义这个策略”复选框,然后单击“编辑安全”。
d) 若要配置新的用户或组的权限,单击“添加”。在“选择用户、计算机,或组”对话框中键入的用户或组为其设置权限,所需的名称,然后单击“确定”。
e) 在“User or Group 的权限”列表中配置为用户或组所需的权限。
f) 单击“确定”两次。
10) 要将新的安全设置应用到本地计算机中,用右键单击“安全配置和分析”,然后单击“立即配置计算机”。
从下载并安装Subinacl,默认安装路径为:C:\Program Files\Windows Resource Kits\Tools,Subinacl下载地址为:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23510
Subinacl的命令语法为:
SUBINACL /SERVICE \\MachineName\ServiceName
/GRANT=[DomainName\]UserName[=Access]
- 运行此命令,用户必须具有管理员权限才能成功完成。
- 如果省略 MachineName,则假定为本地计算机。
- 如果省略 DomainName,在本地计算机帐户的搜索。
- 可以对组进行授权。
- Access 可以接受的值如下所示:
F : Full Control
R : Generic Read
W : Generic Write
X : Generic eXecute
L : Read controL
Q : Query Service Configuration
S : Query Service Status
E : Enumerate Dependent Services
C : Service Change Configuration
T : Start Service
O : Stop Service
P : Pause/Continue Service
I : Interrogate Service
U : Service User-Defined Control Commands
如本文中提到的客户需求(重启服务)就可以通过以下命令完成。
cd “C:\Program Files\Windows Resource Kits\Tools”
SUBINACL /SERVICE \\MachineName\Service1 /GRANT=contoso\User1=TO