代码访问安全技术示例

更新:2007 年 11 月

本示例说明了代码访问安全性,它是在方法调用内授予或拒绝对资源的访问权的一种机制。例如,可以允许 Microsoft 编写的代码写入磁盘,但禁止其他公司编写的代码访问磁盘。即使在单个应用程序中同时使用两家公司编写的代码,也会强制实施此控制。本示例重复尝试访问磁盘文件和环境变量。在每次尝试前将更改代码访问权限以查看其效果。有关代码访问安全性的更多信息,请参见源代码文件中的注释。

有关使用这些示例的信息,请参见下面的主题:

Download sample

使用命令提示生成示例

  1. 使用命令提示定位到 CAS 目录下的语言特定的子目录中的一个。

  2. 根据所选择的编程语言,键入 msbuild PermissionsCS.sln 或 msbuild.exe PermissionsVB.sln。例如,在目录 C:\Documents and Settings\您的用户名\My Documents\Samples\Technologies\CAS\VB 中,在命令行上键入 msbuild.exe PermissionsVB.sln 可生成 Visual Basic 版本。

使用 Visual Studio 生成示例

  1. 打开 Windows 资源管理器,然后定位到 CAS 目录下的语言特定的子目录中的一个。

  2. 根据所选择的编程语言,双击 PermissionsCS.sln 或 PermssionsVB.sln 的图标,以在 Visual Studio 2005 中打开该文件。

  3. 在“生成”菜单上单击“生成解决方案”。

示例应用程序将在默认的 \bin 或 \bin\Debug 子目录中创建。

运行示例

  1. 在命令提示窗口中,定位到包含新的可执行文件的目录。

  2. 在命令行上键入 Permissions.exe。

w13k1y70.alert_note(zh-cn,VS.90).gif说明:

此示例生成一个控制台应用程序。您必须在命令提示窗口中启动并运行它才能查看相应的输出。

要求

**.NET Framework 版本:**2.0、1.1

备注

本示例使用的技术和类包括:

  • 安全性

  • I/O

    • FileStream- 在示例中打开、读取和写入文件。

    • Path- 获取文件的完整路径。这一点在处理 FileIOPermissions 时尤为重要,因为系统使安全性基于文件的完整路径。

  • 环境变量

请参见

参考

CodeAccessPermission

Environment

EnvironmentPermission

FileIOPermission

FileStream

Path

PermissionSet

System.IO

System.Security.Permissions

其他资源

代码访问安全性

文件和流 I/O

安全性的基础概念