论文写作规范毕业论文格式开题报告范文|MBA论文范文本科论文范文硕士论文范文博士论文范文

  • 在线提交留言
  • 当前位置:首页 > 理工医学论文 > 计算机论文

    计算机系统结构硕士论文开题怎么方法及模板

    发布时间:2020-07-01 来源:https://www.boshuolunwen123.com  作者:佚名

      TAGS标签:研究生论文  免费论文  论文下载  写作辅导  论文写作  论文致谢  参考文献  开题报告  职称论文  毕业论文  论文模板  论文范文

    计算机系统结构硕士论文开题怎么方法及模板

    基于微服务架构的敏捷开发平台安全机制的设计与实现

    一级学科:计算机科学与技术

    二级学科:计算机系统结构

    学位类别:工学硕士

        本章介绍项目管理平台引入微服务架构的背景和意义,引入微服务架构之后面临的安全问题,国内外目前针对微服务架构模式以及安全访问控制的研究现状,以及各章的研究内容和组织结构。

    1研究背景及意义

        随着互联网技术的迅猛发展,Web技术己经被广泛应用在各行各业中,越来越多的机构或个人使用Web应用来保存重要信息。21世纪,信息技术持续发展,信息无处不在,丰富的信息成为各国、军队、跨国公司最看重的一种战略资源。人们在享受信息技术产生的极大便利的同时,所面临的信息安全事件也在逐年增加,由此造成了诸多精神上和经济上的损失。比如:2011年黑客攻破索尼公司安全系统防线,大量用户信息遭到泄露,同年,CSDN数据库被攻破,超过数百万的账号密码被明文传输到网上。类似安全事件不胜枚举,越来越多的各种信息安全问题吸引着网民的关注,因此如何保障信息安全显得尤为重要。

        同时,为了应对企业系统复杂无比的业务需求,越来越多的公司开始引进敏捷开发模式,开发敏捷开发协作平台。iCafe作为公司敏捷开发协作平台,具有以下优势:短期内迭代交付,即整个项目开发过程中的每个小周期内都有连续交付;可视化,以卡片墙的形式展示和分析问题;看板模式,通过站会的形式打造一个小而精的开发团队;持续集成,当项目出现新的需求或者之前的需求发生变化,这些都能及时整合到项目中;数据报表,多种形式展示各种报表,如二维表,星状表;知识沉淀,通过分享会等形式积累知识、沉淀知识。但是随着公司业务的持续不断高速发展,平台吞吐量也在持续增长;某个功能出现了BUG可能影响整个平台的稳定性;随着项目代码量以及功能的不断增加,平台的规模化部署变得更加困难;由于架构的原因,平台的功能横向可扩展性较差。鉴于目前iCafe平台存在祸合度过高,功能重用率低,独立扩展性低,稳定性差,以及规模化部署困难等问题,项目组决定为iCafe引入微服务架构。

        近几年随着Docker技术和服务化架构的产生和发展,面向微服务架构的开发模式己经变成软件开发领域新的研究热点。在软件开发领域,微服务的概念和面向服务的概念有相似之处,但是目前并没有对微服务本身做一个非常明确的定义,Martin在其论文中对微服务架构模式进行过一次简单的概述,“将一个整体应用分解为若干个相互独立的微小服务,每个微小服务都有与其他微小服务相互独立的进程运行环境,并拥有独立的功能,服务之间定义了明显的边界,服务与服务间的调用通常是基于轻量级的通信机制,如基于HTTP的RESTfuI API等”。

        引入微服务架构之后虽然解决了平台祸合度过高,功能重用率低,独立扩展性低,稳定性差,以及规模化部署困难等问题。但是引入微服务架构之后,仍存在一些安全隐患。首先前后端之间的数据是通过JSON格式进行明文传输,然而数据包一旦被截获,就会造成泄露数据的可能,存在较大的安全隐患。其次针对用户的身份认证和鉴权,目前平台采用的是查询数据库验证用户名和密码的方式对用户的进行身份认证,短时间内多次访问需要多次认证,而且没有针对服务API级别的用户请求操作权限控制。最后,如果客户端和后端微服务直接通信,为了应对每个微服务不同的特征,客户端业务逻辑将会变得复杂无比。

        综上所述,在信息化时代,信息是一种战略资源,信息化带来了极大的便利,但是信息安全问题己经成为当前函需解决的重要问题之一。为了解决和改善平台目前存在的安全问题,本文研究基于微服务架构的项目平台的安全解决方案。具体而言,就是平台引入微服务架构之后,为了提高服务端数据以及前后端之间数据传输时的安全性,首先研究和分析平台目前存在的安全性问题,并提出相应的解决方案,从而解决安全性问题。

    2国内外研究现状

    2.1微服务研究现状

        近几年,随着Docker技术和服务化架构的产生和发展,面向微服务架构的开发模式己经变成软件开发领域新的研究热点。但是由于其诞生的时间并不长,国内外当前针对微服务架构的研究还比较少。

        对于国外而言,主要内容集中在Martin Fowle:的文章中对微服务的概述。

    该文首先对微服务框架进行了简单的描述,然后介绍了与微服务有关的一些应用程序开发过程中的设计注意点,比如一个微服务的规模具体需要满足条件才能被称之为微服务,介绍了微服务给多团队协作开发带来的一些组织上的优势,并展望了微服务未来的发展。此外,作为微服务的先行者,互联网巨头亚马逊早己将此架构引入自己的实际项目,亚马逊实现了一个基于服务而搭建的开放社区,架构设计要求只能通过统一接口访问内部数据,但每个接口实现机制不同,都有自己的封装和传输机制。其研发团队也是围绕微服务组织建立的,每个服务既是功能提供者,又是功能消费者,每个团队负责一个微服务,致力于搭建小而精的开发团队,提高开发效率。

        而国内,也有很多企业在微服务架构模式上探索和实践,比如京东自研的微服务框架JSF CJingdong Service Framework),很好的解决了京东大量用户和流量带来的负载均衡问题,支撑了微服务架构转变。此外,同济大学研究了一种基于轻量级容器技术和微服务架构的新型云件平台,该平台实现的是将传统软件在不修改的情况下直接部署到云端运行的功能,并提供了可控复杂度、独立部署、容错、可扩展等特性。另一篇文章[f}l则是将微服务架构应用到了物联网应用设计中,该文中设计了针对物联网系统的若干微服务,以一个农作物生长采集系统作为载体,概述了微服务的运行和交互方式,并且展示了原型系统的实施方法。随着Docker技术和服务化技术的完善和流行,己经实现微服务的自动化部署。通过改变系统的架构和团队的架构,致力于搭建一个反应快速、持续迭代的服务团队。

    目前国内外针对引入微服务架构之后的所带来的安全性问题还缺乏深入研究,尤其是针对平台业务划分微服务之后所带来的安全性问题,如安全访问控制、传输过程中的数据安全性等。

    2.2安全访问控制研究现状

        访问控制的研究最早主要集中在操作系统、数据库、军事等方面[8]。Lampson在1974年给出了基于矩阵的访问控制模型。该模型通过矩阵元素来定义主体对客体的操作。随后出现了自主访问控制DAC C Discretionary Access Control)和强访问控制C Mandatory Access Control)两种访问控制模型,并在1985年被美国国防部纳入受信任计算机系统评测标准。

        针对网络中的资源,目前国内外己经具有比较成熟的访问控制标准[9]。所谓安全访问控制,主要是指在用户访问服务资源之前,先对用户身份进行认证和授权[ion。目前主流的安全访问控制方式有:Basic Auth模式、OAuth流程以及Open工D等。    Basic Auth方式是最基础的安全访问控制方式,主要是由请求者提供账号和密码,被请求者在本地数据库验证请求者提供的信息。如果验证失败,则拒绝访问,如果验证成功,则继续审核用户权限。这种方式简单易于理解,请求者访问服务资源需要携带账号和密码等个人信息,而服务器端只在访问前进行验证请求者身份信息,访问过程中不做身份验证。请求者的账号和密码一旦被泄露,就会存在巨大的安全隐患,而且注册信息具有较差的可维护性。

        OpenID的理念如下:网站提供服务的网址唯一标识一个网站的身份。用户可以使用相似的身份信息证明自己的唯一性。作为当前网络世界的核心,网址对用户提供了唯一的、安全的认证基础。传统的认证方式使用账号和密码来验证用户身份信息,而在Open工D方式中,每个用户使用自己的UR工唯一标识自己,因此每个用户都具有独一无二的UR工,使用此UR工作为用户的账号,而密码则存储在Open工D的网站上或者是第三方网站。Open工D的身份认证流程为:在支持Open工D的网站上输入经过注册的账号,重定向到用户所注册的OpenID网站,然后输入用户的账号和密码,在安全认证完成之后,会自动跳转到之前请求访问的网站,此时己经登录成功。

        OAuth是由Google提出来的。用户在成功登录第三方应用时,不需要重新输入账号和密码就可以使用第三方应用访问服务资源。OAuth认证服务对第三方应用具有良好的支持,实现OAuth认证服务有多种方式,而且支持多种编程语言开发相关程序,目前很多知名企业如谷歌、雅虎、脸书、微软、百度等都提供了对OAuth认证服务的良好支持。

        目前微服务架构下的安全访问控制还没有较多实践先例,一般都是改进传统的安全访问控制方式,目前常用的有三种方式。

        第一种,使用HTTP Basic Auth协议,加上独立的Auth数据库。每个提供功能的服务都拥有自己独立的鉴权和授权机制,每个提供功能的服务都拥有自己独立的数据库,来保存敏感信息,每次用户请求都需要携带用户的credential来完成操作。但是这种情况下,由于每个服务都有自己存储Credential的机制,需要事先为每个服务设计好如何存储和查找用户的Credential,而且还需要事先设计好如何管理鉴权机制。    第二种,使用API Tokens协议[11]}12]。使用token来进行鉴权,替换用户本身的用户名和密码,提高了交互安全性,每次用户请求需要携带有效token与Auth服务进行交互验证,由于使用了token来鉴权,业务服务不会看到用户的敏感信息。但是Auth服务可能需要处理大量的生产token的操作。

        第三种,SAML}13],即Security Assertion Markup Language。它是基于XML的一种协议,定义了身份提供者(identity provider)和服务提供者(service provider),这两者构成了不同的安全域,被用于在不同的安全域(security domain)之间交换认证和授权数据。建立统一认证中心验证用户的用户名,按照SAML 2.0规范,使用统一认证中心的DSA/RSA公钥和私钥进行数字签名。使用认证中心提供可信的签名声明,服务的访问安全可以得到保障,但是基于XML协议,传输相对复杂,对非浏览器客户端适配不方便。

    2.3加密算法研究现状

        在国内,信息安全行业起步比欧美国家较晚[14],在2012年中国的信息安全产业步入了高速发展阶段,随着用户安全防范意识的增强,整个互联网用户对安全产品的要求也进入了“主动性安全防御”阶段,所以主动的安全防御必将成为未来安全应用的主流。

    截至目前,通过加密技术对传输数据进行加密是解决数据传输过程中的安全问题的最有效方法。原始信息加密处理之后,发送到网络上,只有拥有解密算法和密钥的用户才能正确解密数据,可以防止其他非法用户获取传输信息。现代密码学将加密算法分为对称加密算法和非对称加密算法。

    常见的对称加密算法有DES, 3DES, AES等,这些都属于分组密码的范围。DES算法将明文分为64位一组,但是其密钥短、强度弱,己经有办法将其攻破。AES[i6][m][is]是DES的替代算法,有128位、196位、256位三个版本,实现简单、加密速度快,目前己经成为最主流的对称加密算法。由于AES加密算法是使用同一个密钥加解密,相比非对称密钥的管理,其密钥管理更困难。

    常见的非对称加密算法有RSA算法、ECC算法等,RSA算法基于欧拉定理以及大整数分解等实现,一般来说其密钥长度都大于1024位。ECC算法是基于求椭圆曲线的离散对数实现的,可以使用较短的密钥达到和RSA相同的保密度。此外,RSA算法还能通过使用私钥加密、公钥解密的方式实现针对消息摘要的数字签名。计算繁琐、加密速度慢,这是非对称加密算法的一大缺点,但是其密钥管理相对容易。

    随着近几年安全攻防技术的不断突破,越来越多的传统安全模式被打破[f211。属性基加解密算法[[22〕分别为密文和私钥设定相应的属性集,两者之间的对应关系不同,具有不同的访问权限和解密能力,在此基础上发展起来的两大类属性基加密方案KP-AB E和CP-ABE,打破了传统的密码学的限制,具有广阔的研究和应用前景。

        根据前面对相关问题研究现状的分析可知,微服务架构模式成为软件开发领域的研究热门,正逐渐成为企业复杂应用架构的首选,简化了应用的开发、部署以及维护。但是目前国内外在微服务架构下的安全研究和实践都比较缺乏,尤其是针对平台业务划分为微服务之后所带来的安全性问题,如安全访问控制、传输过程中的数据安全性等。

        文献[[23〕公开了一种适用于混合云的微服务安全代理系统,涉及云计算安全信息技术领域,优势是实现了前后端通讯指令的动态高强度、不可逆和伪造加密,简化了多源异构系统和服务接入云端的安全问题,但是其通信协议仅支持http方式。文献提出了一种物联网背景下的微服务架构模式,设计出一个模型解决物联网下的服务安全问题,但是这个背景下限制太多,需要深入应用领域确定服务边界,而且纯软件的微服务通常会依赖于设备,会导致越来越多的服务祸合,服务复杂性依旧存在,只是从服务内部转移到服务之间。文献[[2s〕提出了一种从系统需求中分解微服务的方法,安全性和可扩展性是分解时要考虑的第一要素。这种方法为早期和有效的架构设计决策提供了一个共同基础,为系统架构提供更广泛的系统分解视图,但是其分解时没有考虑系统的成本和可伸缩性而且其只针对内部服务之间的安全性。文献[[26〕中提出了针对前后端数据安全传输的解决方案,采用AES和RSA混合加密方式,使用AES密钥加密传输数据,使用RSA公钥加密AES密钥,这样既保证了AES密钥的安全性,同时也保证了传输数据的安全性,充分发挥了AES算法和RSA算法的优势。但是这种方案不能互相确认通信者的身份信息,对于伪造的身份或信息,上述方案就显得捉襟见肘了。此外,针对安全访问控制问题,文献中提出了一个解决方案,使用独立的数据库存储用户信息,并使用Basic OAuth对用户进行身份认证,但是这种认证方式比较繁琐,短时间内多次访问需要多次认证,而且需要事先设计好鉴权机制。

    3本文的主要工作

        本文主要阐述了作者在百度实习期间,了解企业平台化发展需求,解决并完善平台引入微服务架构后存在的安全性问题。通过对微服务架构理念以及目前成熟框架的研究和分析发现,引入微服务框架解决了平台祸合度过高,功能重用率低,独立扩展性低,稳定性差,以及规模化部署困难等问题。然而引入微服务架构之后,仍存在一些安全隐患。首先前后端之间的数据是通过JSON格式进行明文传输,然而数据包一旦被截获,就会造成泄露数据的可能,存在较大的安全隐患。其次针对用户的身份认证和鉴权,目前平台采用的是查询数据库验证用户名和密码的方式对用户的进行身份认证,短时间内多次访问需要多次认证,而且没有针对服务API级别的细粒度操作权限控制。最后,如果客户端和后端微服务直接通信,为了应对每个微服务不同的特征,客户端业务逻辑将会变得复杂无比。

        结合平台业务发展需求和性能需求,针对平台引入微服务架构模式之后存在的安全性问题,本文提出了以下的解决方案:

        (1)在用户端和微服务端之间引入API网关,作为用户访问微服务的唯一入口,避免用户端和服务端直接通信所导致的客户端逻辑复杂化;

        (2)在API网关处拦截用户请求,并实现权限校验、负载均衡、流量控制、路由映射、反向代理等功能;

        (3)在认证服务器处,使用基于OAuth2. 0的Token机制进行用户身份认证和授权,避免短期内频繁认证,并实现服务API级的操作权限控制;

        (4)将AES私有密钥加密算法和RSA公开密钥加密算法相结合,解决前后端数据的安全传输问题。

    4本文的组织结构

        本文以基于微服务架构的项目管理平台安全机制设计与实现为研究目标。首先从论述项目背景和意义开始,然后罗列相关技术研究现状,结合平台安全需求和性能需求,提出相应的解决方案,并依据方案进行设计和实现,最后完成安全性验证和性能测试。

        本文共分为六章,具体内容如下:

        第一章是绪论:本章主要介绍本文的研究背景和意义,分析总结国内外微服务架构模式的发展现状、安全访问控制的发展现状以及加密算法的发展现状,各章的研究内容和结构。

    第二章是关键技术概述:本章首先介绍微服务概念和发展历程,然后是API网关、REST API的概念和应用,其次是以OAuth2.0框架为代表的常用的安全访问技术的相关知识,最后是对AES和RSA两种加密算法以及密钥管理方式的介绍。

    第三章是需求分析:本章通过对安全机制的所涉及的业务群组和功能需求进行分析,阐述了平台微服务框架的系统目标及安全机制的范围。使用统一建模语言用例分析进行功能性需求分析,包括身份认证需求分析、API网关需求分析、混合加密需求分析;根据服务治理规范制定非功能性需求,完成模块划分。

        第四章是详细设计和实现:主要包括总体设计,网关的详细设计与实现,身份认证部分的详细设计与实现,传输过程中数据混合加密和数字签名机制的设计与实现,密钥管理方案的设计与实现。

        第五章是安全性验证:通过对平台后端、平台前后端传输过程中数据的安全性进行验证和分析,以及用户身份认证和授权测试、API网关的性能测试,证明所提方案的可行性。

        第六章是总结和展望:总结本文的工作内容,分析目前方案存在的问题,并对后续研究方向进行展望。

    5小结

        本章主要介绍本文的研究背景和意义,分析总结国内外微服务架构模式的发展现状、安全访问控制的发展现状以及加密算法的发展现状,各章的研究内容和结构。

     

    原文地址:https://www.boshuolunwen123.com/lgyx_lunwen/jsj_lunwen/23180.html,如有转载请标明出处,谢谢。 您可能在寻找关于计算机论文方面的范文,您可以到理工医学论文频道查找。

    在线咨询】【写作辅导】【论文检测】【论文改重】【论文翻译

    会员投稿】【范文模板】【开题报告】【资料下载】【提交留言

    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表
    论文写作指导
    论文在线咨询

    热门论文热门下载

    京ICP备18055229号