权限查看工具 (Permview.exe)
权限视图工具用于查看由程序集请求的最小、可选和拒绝的权限集。还可以根据需要使用 Permview.exe 来查看程序集所使用的所有声明式安全性。Permview.exe 仅在 .NET Framework 1.0 和 1.1 版中可用。
permview [/output filename] [/decl] manifestfile
参数
参数 | 说明 |
---|---|
manifestfile |
包含程序集清单的文件。该清单既可以是一个独立的文件,也可以并入一个可移植的可执行 (PE) 文件中。此文件的扩展名通常是 .exe 或 .dll,但也可以是 .scr 或 .ocx。 |
选项 | 说明 |
---|---|
/decl |
显示由 manifestfile 指定的程序集所使用的程序集、类和方法级别上的所有声明安全性。这包括权限请求以及请求、断言和所有其他可通过声明方式应用的安全性操作。它不引用链接到指定程序集的其他程序集。 |
/h[elp] |
显示该工具的命令语法和选项。 |
/output filename |
将输出写入指定文件。默认为将输出显示到控制台。 |
/? |
显示该工具的命令语法和选项。 |
备注
开发人员可使用 Permview.exe 来验证它们是否已对代码正确应用了权限请求。另外,用户可以运行 Permview.exe 来确定程序集要求的执行权限。例如,如果运行一个托管可执行文件并得到错误“System.Security.Policy.PolicyException: 未能获取所需的权限”,可使用 Permview.exe 来确定可执行文件中的代码在执行前必须收到的权限。
示例
下面的命令将程序集 myAssembly.exe
请求的权限显示到控制台。
permview myAssembly.exe
如果 myAssembly.exe
包含最小的 FullTrust 请求,则显示下面的输出。
Microsoft (R) .NET Framework Permission Request Viewer. Version 1.0.2204.18 Copyright (C) Microsoft Corp. 1998-2000
minimal permission set:
<PermissionSet class="System.Security.PermissionSet" version ="1">
<Unrestricted/>
</PermissionSet>
optional permission set:
Not specified
refused permission set:
Not specified
下面的命令将程序集 myAssembly.exe
上的所有声明安全性显示到控制台。此命令显示方法级别安全性请求。
permview /decl myAssembly.exe
显示下列输出。
Microsoft (R) .NET Framework Permission Request Viewer.
Version 1.0.2204.18 Copyright (C) Microsoft Corp. 1998-2000
Assembly RequestMinimum permission set:
<PermissionSet class="System.Security.PermissionSet" version ="1">
<Unrestricted/>
</PermissionSet>
Method A::myMethod() LinktimeCheck permission set:
<PermissionSet class="System.Security.PermissionSet" version="1">
<Permission class="System.Security.Permissions.ReflectionPermission,
mscorlib, Ver=1.0.2204.2, Loc='', SN=03689116d3a4ae33"
version="1">
<MemberAccess/>
</Permission>
</PermissionSet>
下面的命令将程序集 myAssembly.exe
所请求的权限写入文件 myOutputFile
中。
permview /output myOutputFile myAssembly.exe
请参见
参考
概念
请求权限
声明式安全性
要求
使用 Assert 方法
使用 Deny 方法
使用 PermitOnly 方法