.NET开发者在Vista下应该考虑的五个安全问题(转)


Posted on July 26, 2007


在微软的眼中,Windows Vista的主要卖点之一就是它改良后的安全模式。从它的身份识别标示元系统(metasystem),也就是Windows CardSpace到有时令人郁闷的用户账户控制(User Account Control), 这里有许多新的安全措施需要.NET开发者去考虑,无论是在桌面应用软件还是Web应用软件。

    在Tech Ed 2007上,Rafal Lukawiecki,Project Botticelli的一名战略性顾问,概述了Windows Vista的安全模式和解释了开发者应该怎样利用他们发挥最大的功效。

    自从Vista发布以来,大体上说最吸引大家注意的就是用户账户控制(User Account Control)。这源于这么样的一个事实,UAC颠覆了长期形成的开发习惯,并且在管理者角色运行应用程序的习惯,Lukawiecki说道。
他接着说:“如果开发者想看管理员登录时内容信息,请返回改变登录方式。否则你是看不到提示对话框的…你必须要以管理员的身份设置一些选项。

    为了改掉开发者一直以理员的角色工作的习惯,Lukawiecki给了我们八个提示,以便在开发Windows Vista应用程序高效使用UAC:
    1 判断应用程序是否需要管理员特权。他说:“这个判断应该在一开始就应该做出来”。
    2 以普通用户(standard user)的角色测试你的应用程序。
    3 如果你想存储二进制文件和用户的配置数据,你要知道这些存储在硬盘上的数据并不是很安全。
    4 尽可能清楚的列举出你的安全需要级别
    5 如果终端用户想提升他们的权限,必须确保你弹出的对话框所表达的意思要清楚。
    6 尽可能学一些Windows完整性机制,这是一种新的方式来提高进程间通讯的安全性。
    7 要小心谨慎让你的应用程序验证当前用户是不是管理员,特别是用户进行打开文件和对象操作的时候。
    8 最后,Lukawiecki说: “在vista中Max_allowed并不是一件好事,在过去的操作系统中它用起来或许很方便,但是现在却不是那么回事了。”
    UAC技术的引入,使得Windows Vista在安全上有了新的变化,表现在登录体验上。它声明了一下两种方式:
    首先,微软认识到这里有许多的方式取登录到一个应用程序,从生物的测定学到只能卡,到语音,微软已经引入了Credential  Service Provider UI。这能与多种credential providers相合,并且为多因素证明提供支持。Lukawiecki说道。

     第二,微软采取了身份识别标示元系统(metasystem),引入了Windows CardSpace, 这个使得用户完成多重在在线认证。
    因此确保安全性作为你软件开发中的一个重要部分,那么我们要考虑五个方面:
    1 周期,托管,托管安全测试
    2 应用程序开发中所有组件应该描述安全级别
    3 把威胁模型分析应用到你的设计阶段
    4 开发计划中要有安全检查和测试部分
    5 为研发团队建立安全标准
    Lukawiecki说:“针对现在的开发者很少关注安全性问题,微软已经开始提倡安全开发生命周期。”


标签:N/A

 

在线学习答案查询入口
微信扫一扫
微信扫码联系