securityPolicy与安全策略等级配置

securityPolicy配置节是定义一个安全策略文件与其信任级别名称之间的映射的集合。配置如下所示

其中name是指定映射到策略文件的命名的安全级别,一般的值有Full,Hight,Medium,Low,Minimal,UserDefined;policyFile指的是当前安全级别中对应的配置文件,该文件会存放在Windows\Microsoft.NET\Framework64\{.Net Framework Version}\Config或Windows\Microsoft.NET\Framework\{.Net Framework Version}\Config中。其默认配置如下

打开其中一个配置文件

SecurityClasses中添加了一些下面各种配置用到的安全类,包括以CodeAccessPermission为基类的代码访问权限,其包含在各个权限集PerssionSet里面;以Condition为后缀的类,用于判定被测试的程序集是否属于代码组,以CodeGroup为基类的代码组类,实际上这些类我也没了解太多。PermissionSet节点是权限配置的集合,其Name属性为ASP.NET的指的是。里面的子节点IPermission则是对CodeAccessPermission的子类的配置。IPermission的class属性的值需要和SecurityClass节点的name属性对应。针对不同的Permission权限类可以指定不同的配置。

在MSDN官网上面的文章中介绍了几个权限类,这里也顺带翻译一下

OleDbPermission

通过OleDbPermission权限类能使你的网页应用程序支持多种数据库类型,添加无限制的OleDbPermission 权限到你的策略文件中意味着你的应用程序可以在服务器上使用OLE DB Provider,例如达到对catelog.mdb数据库的访问方式进行限制。

在上面add节点中,ConnectionString属性是指定一条可用的连接字符串,KeyRestrictions属性用于指定在连接字符串中可用或者不可用的参数。其可用还是不可用的设置在KeyRestrictionBehavior属性中设置,它有两个值AllowOnly和PreventUsage。

如果毋需任何限制则改成下面的配置,关键是Unrestricted属性的设置。

EventLogPermission

通过EvntLogPermission权限类可以控制当前应用程序能否许可进入Windows的事件日志。其IPermission设置如下所示

access属性设置了administer才能使被信任的应用程序写入事件日志。

建立事件源:假设你的应用程序需要使用应用程序指定事件源,则必须在安装的时候启用管理员特权。最好是使用那些支持Windows Installer或者支持 InstallUtil.exe系统组件的.NET的安装类型。假如你在安装或者部署的时候不能建立事件源,计算机管理员进入下面的注册表中建立一个新的事件源。

但你不能通过提升ASP.NET进程账户的权限来通过写入权限,否则攻击者可以更改一些日志相关的设置。

FileIOPermission

如果你需要允许你的应用程序进入应用程序虚目录以外的地方,则需要使用这个FileIOPermission权限类。例如下面定义一个应用程序可以读取"C:\SomeDir"目录下的文件。

在让应用程序访问应用程序虚目录以外的文件时,你需要降低代码访问的安全性来保障应用程序隔离能力。假如在一个服务器中有多个应用程序,你需要给不同的应用程序配备不同的标识来保护一些比如是ACLs文件的资源。

以上内容均是配置策略而已,当我在MSDN上看FileIOPermission类介绍的时候发现以下的一段代码,

这段代码就是使用代码访问权限的例子了,加入不具备FileIOPermission的进程读取C盘下的test_r就会抛出异常,在博客园另外一位园友的博客中也看到相关的示例代码。

用这些权限类的作用就是使得它后面的代码执行是经过具备权限的,不具备权限则不能执行下去。这些权限判定的代码可以在用户自己编写,也有可能出现在.NET Framework的类库里面。这里的权限就比Windows标识中具备的权限粒度更细,可以让同一windows标识下不同的应用程序具备有差别的权限。

那下面则介绍如何给ASP.NET应用程序分配信任等级,通过在web.config中的turst配置节进行设置。

一般常用的属性有level,这也是必填的,用于指定当前的信任等级,这个信任等级就对应securityPolicy配置节中的配置。orginUrl属性作用是指定 URL 以用于在中等信任中配置的限制 WebPermission 权限。如果存在,则此属性可用于只允许连接到 WebPermission 所指定的特定 URL 的某些类(如 HttpWebRequest)。看起了挺拗口且不好理解。在我理解是这个属性当信任级别设置成中等的时候才生效,如果给这个属性设置了一个url,这个URL会添加到WebPermission的类的可连接列表ConnectList中。凡是该列表中的URL在发出网络请求时都可以通过。

当然这个turst节点可以出现在不同路径下而达到对不同路径下的代码具备不一样的访问权限。如下所示

?
?

参考文章

ASP.NET 信任级别和策略文件

来自 <https://msdn.microsoft.com/zh-cn/library/wyts434y(v=vs.110).aspx>

?
?

FRAMEWORK安全性之代码访问安全和角色安全

来自 <http://www.cnblogs.com/luminji/archive/2010/10/29/1864248.html>

?
?

?
?

How To: Use Code Access Security in ASP.NET 2.0 ?

来自 <https://msdn.microsoft.com/en-us/library/ms998326.aspx>

?
?

trust 元素(ASP.NET 设置架构)

来自 <https://msdn.microsoft.com/zh-cn/library/tkscy493(v=vs.110).aspx>

?
?

管理安全策略

来自 <https://msdn.microsoft.com/zh-cn/library/wztcyd2e(v=vs.100).aspx>

?
?

时间: 2024-12-14 08:20:37

securityPolicy与安全策略等级配置的相关文章

SSH安全策略检测配置

SSH登录策略检测 SSH登录安全策略检测如下配置:1.登录端口是否为默认22端口2.root账号是否允许直接登录3.是否使用不安全的SSH V1协议4.是否使用不安全的rsh协议5.是否运行基于主机身份验证的登录修复方案:编辑 /etc/ssh/sshd_config1.Port(非22)2.PermitRootLogin(no)3.Protocol(2)4.IgnoreRhosts(yes)5.HostbasedAuthentication(no) 密码策略合规检测 密码策略合规检测会检测如

win2008,IP安全策略下配置一个IP段

 可以指定单个 IP 地址或者 IPv4 或 IPv6 地址的子网.若要指定子网,请使用与下面类似的语法输入 IP 地址: 192.168.1.0/24 正斜杠 (/) 后面的数字表示子网掩码中的位数.可能为 32 位.在本示例中,24 表示前三个八进制数是子网地址,最后一个八进制数是子网内的主机 ID.表示主机 ID 的位必须为 0.本示例对应的子网掩码为 255.255.255.0. 对于 IPv6 地址,请使用相同的语法.正斜杠后面的数字表示子网掩码中的位数.可能为 128 位.表示主

网络安全系列之二十一 配置IPSEC安全策略

1.了解IPSec安全策略 IPSec,Internet协议安全,是网络安全业内的一种开放标准,通过使用加密安全服务以确保网络通信的保密性和安全性.IPSec工作在网络层,对用户和应用程序是透明的,它可以提供对服务器的受限制的访问,可以自定义安全配置. IPSec有两种工作模式:传输模式和隧道模式.传输模式用于保护主机到主机的通信,实现的是端到端的通信,在传输过程中对IP包头不加密,而是对数据部分进行加密:隧道模式用于保护主机和网络或者两个网络之间的通信,即实现VPN的功能,这种模式对整个IP数

华为AP6010DN-AGN配置(RAIDUS认证)

环境大致如下: win server 2008作为RADIUS和DHCP服务器,raidus服务器只作为纯认证服务器,未配置授权和记账功能,ip地址为192.168.1.1 AP6010通过网线连接到制定VLAN中,通过DHCP为客户端分配IP地址,IFVLAN10虚接口地址为:192.168.0.254,VLAN10的网关为192.168.0.1 配置代码中主要部分我会注释. 配置要点: vlan 10  \\此处为无线网络的VLAN domain defalut_admin    \\配置默

防火墙USG6000V基础配置

实验目的 1掌握防火墙安全区域的配置方法 2掌握安全策略配置方法 实验效果 1 实现防火墙trust到DMZ和untrust的访问 2 实现防火墙tDMZ到untrust的访问 一.防火墙初始配置 USG6600防火墙默认的初始账号密码为,账号admin,密码[email protected],首次登陆时需更改密码.一般情况下,华为新一代的防火墙,默认情况下,只有0口是可以允许所有服务的,用户可根据需求开启相应的端口服务,此处我们是使用模拟器做实验,只需开启在接口模式下,使用命令service-

华为防火墙的管理方式介绍及配置

博文大纲: 一.华为防火墙设备的几种管理方式介绍 二.各种管理方式的配置1.通过Telnet方式管理2.通过web方式管理3.通过SSH方式管理 一.华为防火墙设备的几种管理方式介绍 由于在对防火墙设备配置管理方式时,涉及到了AAA这个概念,索性就将AAA的相关介绍简单写一下. AAA是验证(Authentication).授权(Authorization)和记账(Accounting)三个部分组成,是一个能够处理用户访问请求的服务器程序,主要目的是管理用户访问网络服务器,为具有访问权限的用户提

华为防火墙VRRP双机热备的原理及实例配置

博文目录:一.双机热备是什么?二.什么是VRRP?三.VRRP的两种角色四.VRRP的三个状态机五.VRRP选举Master路由器和Backup路由器的流程六.通过VGMP实现VRRP备份组的统一管理七.双机热备的配置八.总结 一.双机热备是什么? 1.双机热备的作用 多台设备运行双机热备:一台设备故障其他设备接替工作:增强网络稳定性:保证业务的连续性: 华为的双机热备是通过部署两台或多台防火墙实现热备及负载均衡,两台防火墙相互协同工作,犹如一个更大的防火墙. 2.华为防火墙双机热备的两种模式:

华为防火墙实现双机热备配置详解

一提到防火墙,一般都会想到企业的边界设备,是内网用户与互联网的必经之路.防火墙承载了非常多的功能,比如:安全规则.IPS.文件类型过滤.内容过滤.应用层过滤等.也正是因为防火墙如此的重要,如果防火墙一旦出现问题,所有对外通信的服务都将中断,所以企业中首先要考虑的就是防火墙的优化及高可用性. 博文大纲:一.双机热备工作原理二.VRRP协议(1)VRRP协议概述(2)VRRP的角色(3)VRRP的状态机(4)VRRP的工作原理三.VGMP协议(1)VGMP的工作原理(2)VGMP的报文封装(3)双机

华为防火墙VRRP双机热备的原理及配置

一.何为双机热备?所谓的双机热备无非就是以7X24小时不中断的为企业提供服务为目的,各种双机热备的技术很多,那么华为使用了这个共有协议的热备协议--VRRP. 华为的双机热备是通过部署两台或多台防火墙实现热备及负载均衡,两台防火墙相互协同工作,犹如一个更大的防火墙. 华为防火墙的双机热备包含以下两种模式: 热备模式:同一时间只有一台防火墙转发数据,其他防火墙不转发,但是会同步会话表及server-map表,当目前工作的防火墙宕机以后,备份防火墙接替转发数据的工作. 负载均衡模式:同一时间内,多台