模型驱动开发在安全关键系统中的应用

0 下载量 38 浏览量 更新于2024-06-17 收藏 974KB PDF 举报
"安全关键的大型分布式软件系统的开发是一个挑战,因为手动定义安全策略往往困难且易出错。模型驱动的开发(MDD)提供了一种可能的解决方案,通过自动化来简化安全策略的定义,特别是在复杂的系统交互和平台特定的安全策略中。本文介绍了将UML模型扩展以包含安全信息,并结合安全管理员的高级策略,自动转换为平台特定的安全策略,支持关注点分离和基于模型的软件工程。这种方法已经在几个大规模和高安全性的应用项目中得到应用,例如虚拟空域管理系统的开发。关键词包括安全方面、MDA(模型驱动架构)和角色。" 安全方面的模型驱动开发是针对安全关键大型系统的一种创新方法,旨在解决在手动创建和维护安全策略时遇到的难题。传统的开发过程容易出现错误,尤其是在处理复杂应用交互和底层平台安全策略时。模型驱动开发(MDD)引入了抽象和自动化,它利用统一建模语言(UML)模型来表示软件的功能特性,并且这些模型能够扩展以包含安全相关的元数据。 在所提出的方法中,安全策略不再是孤立的,而是与应用程序的功能属性紧密结合。安全管理员可以定义高级别的安全策略,这些策略与UML模型相结合,形成一个增强的功能模型。通过自动模型转换,这个模型可以生成适应不同中间件平台的平台特定安全策略。例如,SecureMiddleware——一个扩展了CORBA组件模型以更好地支持非功能属性(如安全性)的平台,就可以利用这种方法来自动生成安全关键的应用程序。 这种方法强调关注点的分离,使得功能需求和安全需求可以在设计阶段独立处理,减少了错误和遗漏的可能性。同时,它还支持跨多个平台的可移植性和适应性,对于那些需要在各种环境中保持一致安全性的系统来说,这是一个重要的优势。 文章的实例应用表明,这种方法已经被应用于开发具有严格安全要求的大型项目,比如构建虚拟空域管理系统。这样的系统通常需要高度的安全保障,模型驱动的方法为此类系统的开发提供了一条更有效和可靠的途径。 关键词中的“安全方面”指的是开发过程中必须考虑的安全特性,如访问控制、数据保护和隐私等;“MDA”代表模型驱动架构,是IEEE和OMG定义的一种软件开发框架,它强调用模型作为软件开发的核心;而“角色”可能指的是在安全策略中定义的不同用户或实体的权限和职责。 安全方面的模型驱动开发是一种旨在提高安全性、效率和可维护性的软件开发方法,特别适用于安全关键的大规模系统。通过自动化和模型化,这种方法可以减轻安全管理员的负担,确保安全策略的有效实施,并促进跨平台的兼容性。
2011-11-11 上传