内容简介:DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。目前,安全防护只是特定团队的责任,一般是在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题;但是随着
什么是DevOps?
DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
为什么需要引入自动化代码扫描?
目前,安全防护只是特定团队的责任,一般是在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题;但是随着现在项目迭代周期的加快,这种做法已经行不通了。采用 DevOps 可以有效推进快速频繁的开发周期(有时全程只有数周或数天),但是过时的安全措施则可能会拖累整个流程,即使最高效的 DevOps 计划也可能会放慢速度。
如何引入代码自动化扫描平台?
DevOps流程图分为计划、编码、构建、测试、发布、部署、运营、监控阶段,具体实现是在项目测试到部署阶段引入代码自动化扫描。
以下使用Jekins+git+mysql+sonarqube为例实现全自动代码扫描。
Jenkins安装
1.官网下载jenkins.war安装包
2.通过命令方式启动:java -jar jenkins.war --httpPort=9090
3.启动完成后记录生成的密码
4.访问http://localhost:8080/,进行插件安装
5.启动页面
mysql安装
首先官网下载相应版本,然后解压到相应目录下,首先path添加 mysql 的bin目录
对mysql进行配置初始化,路径端口如需更改需自行调整
CMD控制台(管理员)进入bin目录,进行初始化mysqld --initialize --user=mysql --console,成功后记录下控制台输出的初始密码Q(6aH.?.wiqo(后续可修改),用来登录
CMD控制台(管理员)进入bin目录,安装mysqld –install
启动服务net start mysql
连接mysql数据库,并且建立sonar的数据库和用户
<code>CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;</code><code>CREATE USER "sonar" IDENTIFIED BY "password";</code><code>GRANT ALL ON sonar.* TO "sonar"@"%" IDENTIFIED BY "password";</code><code>GRANT ALL ON sonar.* TO "sonar"@"localhost" IDENTIFIED BY "password";</code><code>FLUSHPRIVILEGES;</code>
sonarqube安装
修改sonar配置,\conf下sonar.properties中MySQL中配置,用户名和密码需要与设置保持一致
<code>sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false</code><code> sonar.jdbc.username=root</code><code> sonar.jdbc.password=sonar123</code><code> sonar.sorceEncoding=UTF-8</code><code> sonar.login=sonar</code><code> sonar.password=sonar</code>
进入sonar目录E:\sonarqube-7.6\bin\windows-x86-64,通过StartSonar.bat初始化并启动sonar,完成后访问http://localhost:9000/,初始密码admin/admin
启动后的sonar页面
持续集成
上面我们安装好了mysql、jenkins、sonarQube,现在进行持续集成
1.jenkins配置jdk和SonarQube Scanner
在sonar中生成令牌
2.新建item,并进行配置(本例中使用得是github上的代码库)
3.构建配置
4.点击构建可以看到构建正在进行
5.控制台可以看到详细信息
6.运行成功后可以在sonar上看到扫描结果
到此全部结束,这样在项目部署到环境上进行测试时,就可以同步检测代码相关漏洞情况。
杜元飞,从业7年,注册信息安全专业人员,对代码审计、渗透测试有丰富经验。 作者邮箱:duyuanfei@cfca.com.cn,欢迎大家提出宝贵的建议!
声明:本文来自网安前哨,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 网站安全检测 针对于手机短信轰炸漏洞的检测与修复办法
- 一种新的安全检测的方法
- 访谈|专注安全检测智能化的四维创智
- 攻防最前线:使用假字体来逃避安全检测
- [PHP 安全] pcc —— PHP 安全配置检测工具
- 新型诈骗花样多,使用多种混淆方法绕过安全检测
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
WebWork in Action
Jason Carreira、Patrick Lightbody / Manning / 01 September, 2005 / $44.95
WebWork helps developers build well-designed applications quickly by creating re-usable, modular, web-based applications. "WebWork in Action" is the first book to focus entirely on WebWork. Like a tru......一起来看看 《WebWork in Action》 这本书的介绍吧!