您现在的位置:网学>>免费论文>>论文导航>>计算机>>计算机应用
  • 软件设计中安全性与易用性的考虑

    栏目导航 计算机  2008-6-10 2008-6-10 下载 下载论文 发表 发表评论 复制论文网址 复制论文网址 上传用户:会员ID18871
      
      (3)尽量将安全性元素合并到用户现在已经使用的工作流程中,他们已经习惯了这样的工作方式,不容易对安全手段产生厌倦情绪。
      
      2、避免安全性和易用性的冲突
      
      在安全软件产品的设计过程中,安全性和易用性可能会产生冲突:
      
      (1)设计阶段的冲突
      
      1)不恰当的安全性会损害易用性
      
      让差不多要开发结束的产品变得更加安全是设计者可能会遇到的要求,但是设计者会发现在最后一分钟增加安全功能是多么困难和无效。尽管可以通过代码审查发现一些Bug,但是安全则是整个设计更深的属性,John Viega和Gary Mcgraw 认为“在一个现存系统上捆绑安全是一个糟糕的主意,安全不是一个在任何时间都能增加到系统上去的属性”[2]。如果不是从设计一开始就考虑安全性问题,就可能不得不增加很多配置设置和提示,这种做法不能根本上解决问题,反而在出现问题的时候,容易将过错推给用户。
      
      2)不适当的易用性会损害安全性
      
      让差不多要开发结束的产品变得更加好用则是设计者可能会遇到的另外一种要求,但是这是同样困难的任务。好的易用性设计强调理解用户需求,在设计过程中溶入某种概念和风格,而不是仅仅玩弄一些表面的特色,比如动画或者界面外表。没有经过慎重考虑的易用性可能会向用户隐藏一些安全相关的决定或者选择松散的缺省设置,另外不容易理解的界面也会增加操作的复杂性和迷惑用户,降低产品的安全性。
      
      3)集成的交互设计
      
      安全性和易用性的研究者都赞成叠代的开发过程,执行重复的分析、设计和评估周期,而不是最后进行安全性测试或者易用性测试,将用户交互和安全手段的设计同时考虑非常重要,叠代提供了检查安全性和易用性相互影响的机会,如果一直割裂两个方面的设计几乎肯定会带来问题。
      
      (2)使用中的冲突
      
      从目标上讲,安全通常是使用户操作变得困难,而易用性是使操作变得更容易,安全性所引起的操作困难的结果通常是用户不情愿接受的,而易用性所带来的结果一般是用户所欢迎的,当系统设计不够好时,这两者可能发生冲突。
      
      安全性对于用户来说永远是第二位的功能,用户使用计算机肯定不是要使用它的安全功能,用户使用计算机是为了使用资源和进行业务系统管理等,要求用户采用额外的安全步骤可能会打断他的工作流程,最后导致用户关闭掉让他烦恼的安全提示。这样自然造成易用性和安全性之间的冲突。解决的办法是尽量从自然的用户交互中提取安全信息,提取的安全信息越多,安全性对用户正常使用的干扰就越少。
      
      (3)安全交互设计的原则
      
      研究者曾经提出安全交互设计的10条原则[3]:
      
      (1)完成一个任务最自然的方式也是最安全的;
      
      (2)用户能够清楚理解授权过程,明确过程中的操作;
      
      (3)用户的交互界面应该能够吸引用户的吸引力;
      
      (4)影响安全决定的用户交互界面应该便于检查;
      
      (5)在任何时候都应该允许撤消做出的安全授权;
      
      (6)用户界面不应该让用户误以为拥有实际上没拥有的权限;
      
      (7)用户与授权实体之间的通讯渠道必须是不能被欺骗和不容易瘫痪;
      
      (8)确认实体与确认操作在界面上应该与其他实体和操作不同;
      
      (9)交互界面应该提供足够的表达能力让用户容易按照自己的目标表达安全决定;
      
      (10)在动作生效前应该让用户清楚授权操作的结果。
      
      现在计算机的构件都被标注成可信的,可信不是一个yes 或者 no 的问题,不明确下述问题“可信”这个词是没有任何意义的。这些问题就是:(1)“被谁信任?”(2)“被信任做什么?”(3)“什么条件下不可信?”(4)“应对的安全风险是什么?”
      
      Simson Garfinkel 和Gene Spafford给出的定义是:“如果你能够依赖一台计算机和它上面的软件做出你期待的行为,就说它是安全的”[3],用户的期待是基于系统的概念模型,这个概念模型的基本元素是“谁”和做“什么”,对应“角色”和“能力”,每个角色有一系列的“能力”(可以影响用户的可能动作),可以通过有限状态机来模拟所有角色的所有可能动作。
      
      安全性和易用性是贯穿软件开发过程的要求,不仅需要早期考虑,还需要同时兼顾。特别在大型系统的开发过程中,负责这两个方面的开发人员需要很好的沟通和交互。
      
      参考文献
      
      [1] J.H. Saltzer 和 M.D Schroeder, “The Protection of Information in Computer Systems,” Proc. IEEE, vol.63, no.9,1975.
      
      [2]J. Viega 和G. McGraw, Building Secure Software, Addison-Wesley, 2002,p.14.
      
      [3]S. Garfinkel 和G Spafford, Practical UNIX and Internet Security,2nd ed. O’Relly & Associates, 1996,p.6.
     

    上一页12

    相关热词:软件 设计 安全性 考虑

    下载此论文 注册会员 原创论文及论文定作 定作程序设计 网络精品 一起学

    提供各类程序设计和程序下载修改等 提供ASP\VFP\PB\VB\ASP.NET\DELPHI系统定作修改服务
    【责编:网学网  发表评论】
    【设为主页】【加入收藏】【打印本文】【回到顶部】【关闭此页】
    •  相关文章 相关文章
      ·windows nt环境下fddi网卡驱
      ·网页设计制作规范-计算机网络
      ·电子商务网站平台3p设计技术与网络数据库
      ·基于JSP网页自动生成工具的设计与实现-
      ·校园网基本网络搭建及网络安全设计分析-计
      ·飞机订票系统的设计与实现word
      ·防火墙的设计与实现word
      ·财务管理系统设计与实现word
      ·论文管理网站的设计与实现论文word
    •  最新文件 最新文件
      ·汉语分词在中文软件中的广泛应用
      ·现代汉语文本的词语切分技术
      ·《现代汉语语法信息词典》的开发与应用
      ·汉语文本词性标注标记集的规范
      ·小议人工智能技术在信息检索系统中应用
      ·人工智能的研究领域与应用领域
      ·我们身边的人工智能应用
      ·人工智能概述(原创)
      ·人工智能语言--PROLOG
  •  友情链接
    特别推荐
     最新原创论文               更多