GitLab 18.1 高级 SAST 已支持 PHP,可升级体验!
GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。
学习极狐GitLab 的相关资料:
- 极狐GitLab 官网
- 极狐GitLab 官网文档
- 极狐GitLab 论坛
沿袭我们的月度发布传统,极狐GitLab 发布了 18.1 版本,该版本带来了Maven 虚拟仓库、DAST 检测与密钥检测默认规则的一致性、增强的 CODEOWNERS 文件验证、在依赖列表中通过组件版本进行过滤、高级 SAST 已支持 PHP等几十个重点功能的改进。下面是对部分重点功能的详细解读。
关于极狐GitLab 的安装升级,可以查看官方指导文档。
- 18.1.0 容器镜像
registry.gitlab.cn/omnibus/gitlab-jh:18.1.0-jh.0
- 18.1.0 Helm Chart
helm search repo gitlab-jh
NAME CHART VERSION APP VERSION
gitlab-jh/gitlab 9.1.0 v18.1.0
gitlab-jh/gitlab-runner 0.78.0 18.1.0
关联阅读
- GitLab 18.1 正式发布Maven 虚拟仓库、密码泄露检测等功能,可升级体验!
- GitLab 18.1 发布代码搜索中单文件多匹配项、CODEOWNERS 文件验证功能,可升级体验!
- GitLab 18.1 发布依赖列表过滤、合规状态报告控制状态弹窗,可升级体验!
- GitLab 18.1 发布多项 DevSecOps 重磅功能,可升级体验!
- GitLab 18.1 发布 Runner、无效的个人访问令牌查看等功能,可升级体验!
高级 SAST 已支持 PHP
基础版 | 专业版 | 旗舰版 | |
---|---|---|---|
SaaS | Y | ||
私有化部署 | Y |
我们已经在极狐GitLab 高级 SAST 中增加了对于 PHP 的支持。要是用此新的跨文件、跨函数扫描支持,需要启用高级 SAST。如果你已经启用了高级 SAST,则 PHP 支持会被自动激活。
流水线执行策略中的变量优先级控制
基础版 | 专业版 | 旗舰版 | |
---|---|---|---|
SaaS | Y | ||
私有化部署 | Y |
安全团队通常需要在安全保障和研发体验之间做精妙权衡。确保安全扫描的准确执行是非常重要的,但安全分析工具可能需要开发团队提供特定输入才能正确执行。有了变量优先级控制,安全团队就可以通过新的 variables_override配置选项来精细化控制变量在流水线执行策略中的处理。
使用此新的配置,现在你可以:
● 强制执行允许项目特定容器镜像路径的容器扫描策略(CS_IMAGE)
● 允许较低风险的变量,诸如 SAST_EXCLUDED_PATHS同时阻塞较高风险的变量,诸如 SAST_DISABLED。
● 定义使用全局 CI/CD 变量加强了安全(遮掩或隐藏的)的全局共享凭据,比如 AWS_CREDENTIALS,同时允许在适当情况下通过项目级 CI/CD 变量进行项目特定覆盖。
此强大的功能支持以下两种方法:
- 默认锁定变量(allow: false):锁定所有变量,除了你列为例外的特定变量。
- 默认允许变量(allow: true):允许变量被自定义,但需将关键风险变量列入例外清单进行限制。
当流水线执行策略作为 CI/CD 作业的源时,如要改进追踪性并进行故障排查时,我们还引入了作业日志来帮助开发者和安全团队识别由策略执行的作业。作业日志提供了变量覆盖的影响详情来帮助你了解变量是否被策略覆盖或锁定。
真实影响
此项改进有效弥合了安全要求与开发灵活性之间的鸿沟:
- 安全团队可以强制执行标准化的扫描,同时允许对指定项目进行自定义。
- 开发者在无需请求策略例外时还能对指定项目变量进行维护控制。
- 组织可以在无需打断开发工作流的情况下实现持续的安全策略。
通过解决此重要的变量控制挑战,极狐GitLab 能够在不牺牲团队高效交付软件所需灵活性的情况下实现安全的稳定策略。
为外部自定义控制定义 Name
基础版 | 专业版 | 旗舰版 | |
---|---|---|---|
SaaS | Y | ||
私有化部署 | Y |
之前,当创建自定义合规框架时,你是无法为外部自定义控制定义名称的,这就导致难以对外部控制项与极狐GitLab 原生控制项进行区分。
现在,当定义外部自定义控制时,我们新增了一个 Name字段,作为工作流的一部分,所以你可以创建多个外部自定义控制并清楚地为每个控制定义独一无二的名称。