我对这个属性感到困惑,正如这里提到的, http: //msdn.microsoft.com/en-us/library/system.security.permissions.securityattribute.unrestricted.aspx我们可以给它完整或不完整的。
我的困惑是为了直截了当地理解许可,应该只有两种状态 - 授予和未授予,完整和非完整是什么意思?
我对这个属性感到困惑,正如这里提到的, http: //msdn.microsoft.com/en-us/library/system.security.permissions.securityattribute.unrestricted.aspx我们可以给它完整或不完整的。
我的困惑是为了直截了当地理解许可,应该只有两种状态 - 授予和未授予,完整和非完整是什么意思?
我之前以经典方式使用了 Unrestricted 属性:
以下代码是一个请求,说明程序集必须对文件系统具有不受限制的访问权限才能运行。
using System.Security.Permissions;
// Indicates that FileIOPermission is required to run this assembly.
[assembly:FileIOPermission(SecurityAction.RequestMinimum, Unrestricted=true)]
public class FileManager
{
// Insert code to add and delete files.
}
在这种情况下,Unrestricted=false 意味着执行该方法不需要文件访问。
与'oppisite'相反,后者要求为了执行该方法,不得授予文件访问权限。
在大多数情况下,可以动态创建 SecurityAction (Unrestricted=true||false),第一种情况通常更有意义。