• 代码组(3) 属性


    代码组(3) 属性

    代码组可以具有一些属性,这些属性可影响公共语言运行库确定程序集允许权限集方式。可应用到代码组属性有两种:ExclusiveLevelFinal

    Exclusive属性,策略级别允许权限集是与具有此属性代码组关联权限集。在考虑所有策略级别时,运行库向代码授予权限绝对不会多于与Exclusive代码组关联权限。在给定策略级别内,代码只能是具有Exclusive属性一个代码组成员。在运行库计算独占代码组中程序集权限时,该属性会防止考虑同一策略级别中代码组。但仍会计算当前级别之下和之下策略级别。该属性允许一个特定代码组为当前策略级别针对向与该组匹配程序集授予什么权限问题做出唯一决定。这在需要向特定程序集授予特定权限集而不允许来自同一策略级别上代码组匹配项权限时很有用。

    注意:如果一个程序集属于多个标记为独占代码组,则不允许执行该程序集。

    LevelFinal属性,在检查代码组成员和授予权限时,不会考虑包含此代码组策略级别以下应用程序域级别之外任何策略级别。企业级策略是策略最高级别,接着是计算机策略、用户策略,然后是应用程序域策略。例如,如果LevelFinal属性应用到企业级策略中代码组,且某代码与此代码组成员条件匹配,那么,计算机级别策略和用户级别策略不会应用到该代码。应用 LevelFinal属性可以保证,与标有该属性代码组关联程序集绝对不会因为较低策略级别管理员做出决定而收到较少权限。

    可以用.NET Framework配置工具或者是代码访问安全策略工具针对代码组开启或关闭Exclusive(或LevelFinal)属性。开启代码组Exclusive属性方法如下:

    caspol -chggroup 1.2.1. -exclusive on

    其中,使用chggroup命令更改标签为1.2.1代码组,把Exclusive属性设置为开状态。

    ---------------------注:本文部分内容改变自《.NET 安全揭秘》


    作者:玄魂
    出处:http://www.cnblogs.com/xuanhun/
    原文链接:http://www.cnblogs.com/xuanhun/ 更多内容,请访问我的个人站点 对编程,安全感兴趣的,加qq群:hacking-1群:303242737,hacking-2群:147098303,nw.js,electron交流群 313717550。
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    关注我:关注玄魂的微信公众号

  • 相关阅读:
    jsp mysql 配置线程池
    服务端 模拟 检测 攻击。。乱写
    硕思闪客精灵 7.2 破解版
    unity UnityAwe 插件
    smartfoxserver 2x 解决 Math NAN
    unity 断点下载
    java 监听文件目录修改
    wind7 64 setup appjs
    sfs2x 修改jvm 内存
    unity ngui 解决图层问题
  • 原文地址:https://www.cnblogs.com/xuanhun/p/2559418.html
Copyright © 2020-2023  润新知