您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> asp.net >> 正文

学习一下.net framework 中有关安全的内容

作者:佚名    信息学院来源:整理    点击数:    更新时间:2008-1-30 我要参与讨论

 

  好容易在繁重的开发任务之余抽出点时间学习一些东西。发现机子里有几个关于 System.Security 内容的示例,这一个命名空间以前还真是从来没用过,正好拿来学习一下。由于不是系统的学习,不好组织,想了想,就以示例来说明吧。 

  一、设定权限

1[FileIOPermission(SecurityAction.Demand, Write= "C:\\temp.txt")]
2public class App : System.Windows.Forms.Form
3{
4    //略
5}
  FileIOPermissionAttribute 定义于 System.Security.Permissions 里。它继承于 SecurityAttribute,在这个例子中,要求使用 App 类时必须具有对 C:\temp.txt 文件的写权限。

  .net framework 的文档中关于安全要求有这样一段话:“若要确保只有被授予了指定权限的调用方才能够调用您的代码,可以声明方式或强制方式要求您的代码的调用方拥有特定的权限或权限集。要求使运行库执行安全检查,从而对调用代码实施限制。在安全检查过程中,运行库遍历调用堆栈,检查堆栈中每个调用方的权限,然后确定是否已将要求的权限授予每个调用方。如果发现某个调用方没有要求的权限,则安全检查失败,并引发 SecurityException。”

  例子中,权限是以声明的方式出现的。SecurityAction.Demand 可以作用于类或方法,在这里是作用于类上。Write 是 FileIOPermission 的属性之一,其它常用属性还有 Read、Append、All 等等。

  SecurityAction 枚举中还有一些值是作用于 assembly 上的。比如以下的例子:

[assembly:SecurityPermission(SecurityAction.RequestMinimum ,UnmanagedCode=true)]
  SecurityAction.RequestMinimum 是请求运行的最小权限。这一行要求程序集允许调用非托管代码。

  除了声明方式外,还可以使用强制方式。如下的代码:

 1FileIOPermission filePerm = new FileIOPermission(FileIOPermissionAccess.AllAccess, "C:\\temp.txt");
 2try
 3{
 4    filePerm.Demand();
 5   
 6    // Code to access file goes here
 7}
 8catch (SecurityException excep)
 9{
10    MessageBox.Show (excep.Message);
11    return;
12}
13
  二、用户角色管理

  用户及其角色的管理是在许多程序中都要使用到的。如今 asp.net 2.0 对于这方面有了大大增强,开发人员不需要很了解技术就可以做出很不错的应用。不过对于 Windows Form 应用程序来说,不少地方还需要程序员自己设定。

[1] [2] 下一页

在google里搜索更多学习一下.net framework 中有关安全的内容

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明