应用程序访问权限完全攻略

网络
本文主要讲述如何限制用户对文件的访问权限。

一、限制用户对文件的访问权限

如果程序所在的磁盘分区文件系统为NTFS格式,管理员账户可以利用NTFS文件系统提供的文件和文件夹安全选项控制用户对程序及文件的访问权限。通常情况下,一个应用程序安装到系统后,本地计算机的所有账户都可以访问并运行该应用程序。如果取消分配给指定用户对该应用程序或文件夹的访问权限,该用户也就失去了运行该应用程序的能力。

例如,要禁止受限用户运行Outlook Express应用程序,可以进行如下的操作:

(1)、以administrator账户登录系统,如果当前系统启用了简单文件共享选项,需要将该选项关闭。具体做法是,在Windows浏览器窗口点击“工具”菜单下的“文件夹选项”,点击“查看”选项页,取消“使用简单文件共享”选项的选择,点击“确定”。

(2)、打开Program Files文件夹,选中Outlook Express文件夹并单击右键,选择“属性”。

(3)、点击“安全”选项页,可以看到Users组的用户对该文件夹具有读取和运行的权限,点击“高级”。

(4)、取消“从父项继承那些可以应用到子对象的权限项目,包括那些再次明确定义的项目”选项的选择,在弹出的提示信息对话框,点击“复制”,此时可以看到用户所具有的权限改为不继承的,如图1所示。

图1 Outlook Express的高级安全设置

(5)、点击“确定”,返回属性窗口,在“用户或组名称”列表中,选择Users项目,点击“删除”,点击“确定”,完成权限的设置。

要取消指定用户对文件或程序的访问限制,需要为文件或文件夹添加指定的用户或组并赋予相应的访问权限。

这种方法允许管理员针对每个用户来限制他访问和运行指定的应用程序的权限。但是这需要一个非常重要的前提,那就是要求应用程序所在的分区格式为NTFS,否则,一切都无从谈起。

对于FAT/FAT32格式的分区,不能应用文件及文件夹的安全选项,我们可以通过设置计算机的策略来禁止运行指定的应用程序。#p#

二、启用“不要运行指定的Windows应用程序”策略

在组策略中有一条名为“不要运行指定的Windows应用程序”策略,通过启用该策略并添加相应的应用程序,就可以限制用户运行这些应用程序。设置方法如下:

(1)、在“开始”“运行”处执行gpedit.msc命令,启动组策略编辑器,或者运行mmc命令启动控制台,并将“组策略”管理单元加载到控制台中;

(2)、依次展开“‘本地计算机’策略”“用户设置”“管理模板”,点击“系统”,双击右侧窗格中的“不要运行指定的Windows应用程序”策略,选择“已启用”选项,并点击“显示”。

(3)、点击“添加”,输入不运行运行的应用程序名称,如命令提示符cmd.exe,点击“确定”,此时,指定的应用程序名称添加到禁止运行的程序列表中。

(4)、点击“确定”返回组策略编辑器,点击“确定”,完成设置。

当用户试图运行包含在不允许运行程序列表中的应用程序时,系统会提示警告信息。把不允许运行的应用程序复制到其他的目录和分区中,仍然是不能运行的。要恢复指定的受限程序的运行能力,可以将“不要运行指定的Windows应用程序”策略设置为“未配置”或“已禁用”,或者将指定的应用程序从不允许运行列表中删除(这要求删除后列表不会成为空白的)。

这种方式只阻止用户运行从Windows资源管理器中启动的程序,对于由系统过程或其他过程启动的程序并不能禁止其运行。该方式禁止应用程序的运行,其用户对象的作用范围是所有的用户,不仅仅是受限用户,Administrators组中的账户甚至是内建的administrator帐户都将受到限制,因此给管理员带来了一定的不便。当管理员需要执行一个包含在不允许运行列表中的应用程序时,需要先通过组策略编辑器将该应用程序从不运行运行列表中删除,在程序运行完成后,再将该程序添加到不允许运行程序列表中。需要注意的是,不要将组策略编辑器(gpedit.msc)添加到禁止运行程序列表中,否则会造成组策略的自锁,任何用户都将不能启动组策略编辑器,也就不能对设置的策略进行更改。

提示:如果没有禁止运行“命令提示符”程序的话,用户可以通过cmd命令,从“命令提示符”运行被禁止的程序,例如,将记事本程序(notepad.exe)添加不运行列表中,通过XP的桌面运行该程序是被限制的,但是在“命令提示符”下运行notepad命令,可以顺利的启动记事本程序。因此,要彻底的禁止某个程序的运行,首先要将cmd.exe添加到不允许运行列表中。#p#

三、设置软件限制策略

软件限制策略是本地安全策略的一个组成部分,管理员通过设置该策略对文件和程序进行标识,将它们分为可信任和不可信任两种,通过赋予相应的安全级别来实现对程序运行的控制。这个措施对于解决未知代码和不可信任代码的可控制运行问题非常有效。软件设置策略使用两个方面的设置对程序进行限制:安全级别和其他规则。

安全级别分为“不允许的”和“不受限制的”两种。其中,“不允许的”将禁止程序的运行,不论用户的权限如何;“不受限的”允许登录用户使用他所拥有的权限来运行程序。

其它规则,即由管理员通过制定规则对指定的一批或一个文件和程序进行标识,并赋予“不允许的”或“不受限的”安全级别。在这个部分中,管理员可以制定四种类型的规则,按照优先级别分别是:散列规则、证书规则、路径规则和Internet区域规则,这些规则将对文件的访问和程序的运行提供***限度的授权级别。

软件限制策略的设置

1、访问软件限制策略

作为本地安全策略的一部分,软件限制策略同时也包含在组策略中,这些策略的设置必须以administrator账户或Administrators组成员的身份登录系统。软件限制策略的访问方式有两种:

(1)、在“开始”“运行”处运行secpol.msc,启动本地安全策略编辑器,在“安全设置”下可以看到“软件限制策略”项目。

(2)、在“开始”“运行”处运行gpedit.msc,启动组策略编辑器,在“计算机设置”“Windows设置”“安全设置”下可以看到“软件限制策略”。

2、新建软件限制策略

***打开“软件限制策略”时,该项目是空的。策略需要由管理员手动添加。方法是点击“软件限制策略”使其处于选中状态,点击编辑器窗口“操作”菜单下的“新建一个策略”项目,此时可以看到“软件限制策略”下增加了“安全级别”和“其它规则”以及三条属性,如图2所示。一旦执行了新建策略操作后,就不能再次执行该操作,并且这个策略也不能删除。

图2 新建软件限制策略#p#

3、设置默认的安全级别

新建软件限制策略后,策略的默认安全级别为“不受限的”,如果要更改默认的安全级别,需要在“安全级别”中进行设置,方法如下:

(1)、打开“安全级别”,在右侧窗格中,可以看到有两条设置,其中图标中带有一个小对号的设置为默认设置;

(2)、点击不是默认值的那条设置,单击右键,选择“设置为默认”项。当设置“不允许的”为默认值时,系统会显示一个提示信息对话框,点击“确定”即可。

该步骤也可以双击非默认的设置,在弹出的属性窗口中,点击“设为默认值”。

4、设置策略的作用范围和对象

通过策略的“强制”属性可以设置策略应用的软件文件是否包含库文件以及作用的对象是否包含管理员账户。通常情况下,为了避免引起系统不必要的问题以及便于对系统的管理,策略的作用范围应设置为不包含库文件的所有软体文件,作用对象设置为除本地管理员外的所有用户。设置的方法如下:

(1)、单击“软件限制策略”,双击右侧窗格中的“强制”属性项目;

(2)、选择“除去库文件(如Dll文件)以外的所有软体文件”选项和“除本地管理员以外的所有用户”选项,单击“确定”。

5、制定规则

只通过安全级别的设置,显然不能很好的实现对文件和程序的控制,必须通过制定合理的规则来标识那些禁止或允许运行的文件和程序,并进而实现对这些文件和程序的灵活控制。上文中提到可制定规则的类型有四种:散列规则、证书规则、路径规则和Internet区域规则。它们标识文件以及制定规则的方法如下:

散列规则:利用散列算法计算出指定文件的散列,这个散列是唯一标识该文件的一系列定长字节。制定了散列规则后,用户访问或运行文件时,软件限制策略会根据文件的散列及安全级别来允许或阻止对该文件进行访问或运行。当文件移动或重命名,不会影响文件的散列,软件限制策略对该文件依然有效。制定方法如下:

(1)、点击“软件限制策略”下的“其它规则”,在“其他规则”上单击右键,或在右侧窗格的空白区域单击右键,选择“新散列规则”。

(2)、点击“浏览”,指定要标识的文件或程序,例如cmd.exe,确认后,在文件散列中可以看到计算出来的散列,在“安全级别”中选择“不允许的”或“不受限的”,如图3所示。点击“确定”,在“其它规则”中可以看到新增了一条类型为散列的规则。

图3 新散列规则创建

证书规则:利用与文件或程序相关联的签名证书进行标识。证书规则需要的证书可以是自签名的、由证书颁发机构(CA)颁发或是由Windows2000公钥机构发布。

【编辑推荐】

  1. 网络管理员:注重服务器访问权限控制策略
  2. 利用A、G、DL、P策略来管理网络资源访问权限
责任编辑:许凤丽 来源: IT专家网论坛
相关推荐

2009-02-12 10:12:00

NAT配置

2013-09-09 15:05:12

iOS应用内置付费IAP完全攻略

2014-12-19 12:57:57

APP推广运营

2011-03-28 10:12:44

FreeBSDnagios

2010-07-12 09:42:06

FreeBSD 7.0nagios安装

2010-03-03 13:51:54

2010-11-18 23:24:42

云迁移

2010-04-23 14:04:23

Oracle日期操作

2024-05-07 09:01:21

Queue 模块Python线程安全队列

2013-04-15 10:48:16

Xcode ARC详解iOS ARC使用

2013-06-08 11:13:00

Android开发XML解析

2018-03-23 13:29:29

程序员跳槽薪资

2015-08-14 10:27:53

跳槽程序员读书摘要

2023-11-06 08:14:51

Go语言Context

2011-05-17 10:19:40

EMC Celerra

2009-02-20 11:43:22

UNIXfish全攻略

2014-03-19 17:22:33

2009-12-14 14:32:38

动态路由配置

2009-10-19 15:20:01

家庭综合布线

2010-11-23 10:45:02

基础设施虚拟化
点赞
收藏

51CTO技术栈公众号