跳到主要内容

安全策略

安全策略用于对组件拉取过程中的漏洞、许可证及版本风险进行统一控制。策略分为企业级与项目级,两者在不同层级生效,但统一参与安全校验。

安全策略

查看安全策略

查看入口

  • 企业级策略:全部项目 → 安全策略
  • 项目级策略:项目 → 安全策略

查看内容

策略列表展示以下信息:

  • 策略名称
  • 策略类型(漏洞 / 许可证 / 版本)
  • 规则数量
  • 更新时间

创建安全策略

创建入口

  • 企业级策略:全部项目 → 创建策略
  • 项目级策略:项目 → 创建策略

创建步骤(2 步走)

STEP 1 新建策略

页面点击【新建策略】按钮

  • 填写策略名称(必填)
  • 选择策略类型(漏洞 / 许可证 / 版本)
  • 填写策略描述(选填)

新建策略

STEP 2 配置策略规则

根据您选择的策略类型,会进入到不同的策略配置流程。

配置策略规则


不同策略类型配置说明

1)漏洞策略

支持配置多条漏洞规则,满足任一规则即命中策略:

  • 漏洞最低危害等级:低 / 中 / 高 / 严重
  • CVSS v3 评分范围:如 7.0–10.0
  • 漏洞编号:CVE 精确匹配

漏洞策略


2)许可证策略

用于配置组件许可证安全规则。组件拉取时,系统会根据配置的规则检查组件许可证,并根据规则结果执行放行或阻断。

许可证策略

  • 添加规则
    • 点击「添加规则」,新增一条许可证规则。
    • 每条规则需配置:
配置项类型/模式说明
规则类型禁用规则(许可证黑名单)配置禁用清单后,当拉取组件的许可证满足规则条件时,系统会阻断组件拉取。
允许规则(许可证白名单)配置允许清单后,拉取组件的许可证必须命中清单,否则系统会阻断组件拉取。
匹配模式宽松模式满足部分条件即可通过
严格模式所有条件都必须满足
许可证清单-在许可证清单中搜索并选择许可证

例如:

  • 禁用规则:添加 GPL-3.0、AGPL-3.0
  • 允许规则:添加 MIT、Apache-2.0

添加规则

  • 保存规则
    • 完成配置后,点击「保存」:保存当前许可证规则; 点击「取消」:放弃本次修改。
    • 保存后的规则会加入当前安全策略。

3)包版本策略

包版本规则用于限制指定组件版本的使用范围。当开发者拉取组件时,系统会检查组件名称、版本、发布时间是否满足当前规则。如果组件命中阻断规则,则阻止组件继续拉取。

适用于以下场景:

  • 禁止使用存在严重漏洞的组件版本;
  • 禁止使用过旧版本组件;
  • 限制组件只能使用指定版本范围。
  • 限制新发布版本直接使用。

包版本策略

  • 配置规则说明
    • 点击「添加规则」,新增一条包版本规则。
    • 规则配置如下:
配置项说明示例
组件生态选择组件所属生态类型Maven、npm、PyPI
组件名称配置需要限制的组件名称log4j:log4j
版本条件版本条件用于判断组件版本是否命中规则。支持以下几种模式:
  • 等于 xx 版本
  • 大于xx 版本
  • 大于等于 xx 版本
  • 小于 xx 版本
  • 小于等于 xx 版本
  • 区间范围「版本区间」
等于 1.2.17、小于等于 2.0
发布时间条件根据组件发布时间进行限制发布不足90天
  1. 多条件判断规则 同一规则中的版本条件和发布时间条件为 “或”关系。也就是说,一个规则中拉取的组件满足任何一个条件,即为命中规则;
  2. 多规则判断 一个策略可以配置多条包版本规则。规则之间采用:任意一条规则命中,即执行阻断。

编辑/启停/删除安全策略

操作入口

策略列表 → 点击【配置规则】、【编辑】、启用 / 禁用按钮、 删除按钮


常见问题

Q:企业级策略和项目级策略如何区分? 企业级策略在“全部项目”创建,项目级策略在项目内创建。

Q:配置安全策略中的规则后,为什么组件没有被阻断? 可能原因有:

  • 安全策略未生效。安全策略必须要装配至监控规则中,且开启监控规则后,才会生效。建议先检查监控规则装配的策略和开启状态;
  • 组件未命中规则。建议检查组件名称、版本条件是否配置正确。
  • 规则未保存。建议确认规则是否已保存成功。

Q:版本条件和发布时间条件同时配置时,如何判断? 版本条件和发布时间条件为「或」关系。满足任意一个条件,组件即命中规则。

Q:组件名称填写错误会有什么影响? 组件名称用于唯一匹配目标组件。 如果组件名称填写错误:

  • 系统无法匹配目标组件;
  • 规则不会生效;
  • 组件仍可能正常拉取。 配置规则前,请确认组件名称与组件仓库中的标识一致。