SonarQube检查项目中是否存在秘钥信息

  发布时间:2025-11-05 08:35:06   作者:玩站小弟   我要评论
持续集成和交付(CI / CD)管道旨在支持每天数以万计的部署。生产部署的频率不能以牺牲安全为代价,安全流程也需要与CI / CD管道集成在一起。这就是为什么我们在从开发到生产的流水线的每个步骤中都添 。

持续集成和交付(CI / CD)管道旨在支持每天数以万计的查项部署。生产部署的目中秘钥频率不能以牺牲安全为代价,安全流程也需要与CI / CD管道集成在一起。否存这就是信息为什么我们在从开发到生产的流水线的每个步骤中都添加了持续的安全验证,以帮助确保我们的查项应用程序始终是安全的。

作为管道的目中秘钥一部分,我们开始将SonarQube用于代码质量,否存因为SonarQube已集成到开发人员的信息IDE中,所以此验证发生在开发人员提交其代码之前。查项我们决定利用SonarQube来进一步检查易受攻击的目中秘钥编码模式。网站模板

在此过程中,否存我们使用了现有的信息出色插件,例如Java的查项Findsecbugs,我们从Sonar Secrets开始向开发人员提供早期反馈,目中秘钥提醒他们使用硬编码凭据所带来的否存安全风险。尽早为开发人员提供反馈,使我们可以将安全控制权向左移动,从而使开发人员可以在生产代码投入使用之前达到内部定义的安全标准。

为了保护我们的用户,合作伙伴和员工,我们的服务旨在使用加密的密钥库来保护所有相关的敏感数据。然后,开发人员可以使用变量在代码中引用此数据,b2b供应网而不必对值进行硬编码。

构建打包

SonarQube™的Sonar Secrets插件https://github.com/Skyscanner/sonar-secrets —由Skyscanner产品安全小组创建,旨在识别硬编码的机密,例如密码,API令牌,AWS凭证等。

cd sonar-secrets/java && mvn clean package cd sonar-secrets/javascript && mvn clean package 

build成功会提示以下信息:

... [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 7.065 s [INFO] Finished at: 2017-10-26T05:00:33-04:00 [INFO] Final Memory: 23M/252M [INFO] ------------------------------------------------------------------------ 

sonar-secrets-java-x.x.jar 在 sonar-secrets/java/target 目录。

sonar-secrets-javascript-x.x.jar 在 sonar-secrets/javascript/target 目录。

安装配置

复制Jar包文件到sonarqube的插件目录/opt/sonarqube/extensions/plugins 重启sonarqube服务器

In startup logs you should see:

... INFO  web[][o.s.s.p.ServerPluginRepository] Deploy plugin Sonar Secrets Java / x.x INFO  web[][o.s.s.p.ServerPluginRepository] Deploy plugin Sonar Secrets JavaScript / x.x ... 

启用 sonar-secrets-java and sonar-secrets-javascript 在 Quality Profiles。

IDE效果图

Sonar Secrets帮助我们在检测和防止代码中的敏感数据泄漏方面保持主动。我们已决定将该项目开源,以便社区可以从这项技术中受益并帮助改进它。该插件是完全可定制的,并且可以使用新规则进行扩展。该第一个发行版目前仅支持Java和Javascript项目。亿华云

  • Tag:

相关文章

  • 固态硬盘导入系统教程(使用固态硬盘(SSD)为你的电脑带来飞跃性能提升)

    摘要:随着计算机技术的不断进步,固态硬盘SolidStateDrive,简称SSD)逐渐取代传统机械硬盘成为电脑存储设备的首选。本文将介绍如何使用固态硬盘导入系统,以及通过这一操作为你...
    2025-11-05
  • 让打卡小工具智能一点”:添加请假过滤、Token自动刷新

    大家好,我是杨成功。前面写了一篇文章,介绍了如何用 Node.js + 钉钉 API 实现考勤打卡连续提醒的小工具。有的同学留言说为什么不直接调用钉钉 API 自动打卡这个我也想过)。可惜我翻遍了钉钉
    2025-11-05
  • Go中对栈中函数进行内联

    上一篇文章中我论述了叶子内联leaf inlining是怎样让 Go 编译器减少函数调用的开销的,以及延伸出了跨函数边界的优化的机会。本文中,我要论述内联的限制以及叶子内联与栈中内联mid-stack
    2025-11-05
  • iOS无侵入的埋点方案如何实现?

    在开发过程中,埋点可以解决两大类问题:一是了解用户使用 App 的行为,二是降低分析线上问题的难度。目前,iOS 开发中常见的埋点方式,主要包括:代码埋点 可视化埋点 无埋
    2025-11-05
  • SamsungSGH-i917r(探索SGH-i917r的功能和性能,体验智能科技的极致魅力)

    摘要:在现代社会,智能手机成为了人们生活中不可或缺的一部分。而SamsungSGH-i917r作为一款备受好评的智能手机,其独特的功能和卓越的性能给用户带来了前所未有的体验。一:...
    2025-11-05
  • 四种快速易用的Python数据可视化方法

    数据可视化是数据科学或机器学习项目中十分重要的一环。通常,你需要在项目初期进行探索性的数据分析EDA),从而对数据有一定的了解,而且创建可视化确实可以使分析的任务更清晰、更容易理解,特别是对于大规模的
    2025-11-05

最新评论