Gitlab CI/CD 中的秘密检测

Baz*_*Baz 6 node.js gitlab gitlab-ci

我在理解如何在 Gitlab CI/CD 中激活秘密检测时遇到一些困难。我从模板创建了一个新的 NodeJS Express,然后从“设置”>“CI/CD”激活了自动 DevOps ,并选中了“自动 DevOps 菜单”下的“默认为自动 DevOps 管道”复选框。之后,我打开项目文件夹中的 app.js 文件并插入一个看起来像键值的变量。这是我插入该行的代码片段:

...
var app = express();

var key = "api-12321321321321321";

// view engine setup
app.set('views', path.join(__dirname, 'views'));
...
Run Code Online (Sandbox Code Playgroud)

提交更改后,我预计管道会因秘密泄露而失败。这是显示秘密检测已通过的图像。 在此输入图像描述

谁能告诉我如何使管道报告错误?

Hen*_*ens -1

GitLab 有一篇关于在管道中进行设置的完整帖子:https://docs.gitlab.com/ee/user/application_security/secret_detection/

编辑:

给出的说明有点不清楚:

您需要include在配置的“根级别”添加标签。

例子

stages:
    - build
    - test

image: node:latest

build:
    stage: build
    script:
        - echo "Building"
        - npm install typescript
        - yarn run build
test:
    stage: test
    script:
        - echo "Testing"

include:
    - template: Security/Secret-Detection.gitlab-ci.yml
Run Code Online (Sandbox Code Playgroud)

秘密检测将在测试阶段运行: Pipeline