代码访问安全是.NET里检查是否有权限访问资源或操作的策略。MSDN介绍
为了保证代码的安全性,可以显示的或隐式的在运行时询问调用者的权限。权限的询问有三种,Demand、Link Demand、Inheritance Demand。通过分析调用栈实现。
- Demand
这种询问会检查直接调用者和间接调用者的权限。
- Link Demand
这种询问只检查直接调用者。
- Inheritance Demand
如果指定在类层级,则只有符合权限要求的类才可从此类继承。如果指定在函数层级,则只有符合权限要求的类才可以覆盖此方法。
不被完全信任的代码是不允许调用共享的类库。如要让不完全信任的代码调用,需指定AllowPartiallyTrustedCallersAttribute。只能指定在assembly级,并且必须是强签名的。