扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:Demien Watkins 2007年10月26日
关键字:
一个策略级别包含一个命名权限集列表。每个权限集代表一个信任声明,用于访问各种受保护的资源。命名权限集是代码组按其名称进行引用的权限集。如果满足了代码组的条件,则会授予被引用的命名权限集(请参阅上面的示例)。下面是一些预定义的命名权限集示例:
FullTrust :允许不受限制地访问系统资源。
SkipVerification :允许程序集跳过验证。
Execution :允许代码执行。
Nothing :不授予权限。不授予执行的权限可有效停止代码的运行。
Internet :适合来自 Internet 的代码的权限集。代码将不会收到对文件系统或注册表的访问权限,但可以执行一些有限的用户界面操作,并且可以使用称为独立存储的安全文件系统。
要查看策略级别的权限集,只需在附录 A 提及的 GUI 工具中打开策略级别节点,然后打开权限集文件夹即可。
下面是一个很小的示例程序,它列出了所有策略级别上所有已知的命名权限集:
下面的程序显示了所有策略级别上的命名权限集列表。该应用程序是一个从本地磁盘运行的 C# 程序,因此它会从默认的策略设置中收到一个相当强大的权限集。
using System; using System.Collections; using System.Security; using System.Security.Policy; namespace SecurityResolver { class Sample { static void Main(string[] args) { IEnumerator i = SecurityManager.PolicyHierarchy(); while(i.MoveNext()) { PolicyLevel p = (PolicyLevel) i.Current; Console.WriteLine(p.Label); IEnumerator np = p.NamedPermissionSets.GetEnumerator(); while (np.MoveNext()) { NamedPermissionSet pset = (NamedPermissionSet)np.Current; Console.WriteLine("\tPermission Set: \n\t\t Name: {0} \n\t\t Description {1}", pset.Name, pset.Description); } } } } }
该程序的输出如下。为简洁和明确起见,已对该输出进行了编辑。
Enterprise Permission Set: Name: FullTrust Description: Allows full access to all resources Permission Set: Name: LocalIntranet Description: Default rights given to applications on your local intranet ... Machine Permission Set: Name: Nothing Description: Denies all resources, including the right to execute ... User ... Name: SkipVerification Description: Grants right to bypass the verification Permission Set: Name: Execution Description: Permits execution ...查看本文来源
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者