卡巴斯基容器安全

开始扫描时指定 Secret

在 CI/CD 进程中启动扫描作业时,包含扫描器镜像(Kaspersky Container Security 相应版本的 lite 或 with-db 扫描器)的注册表只有在获得授权后才可访问。为了授权,您可以在扫描作业中传递所需的 Secret。

要在启动扫描作业时获得访问注册表的授权:

  1. 创建 Secret:

    kubectl create secret docker-registry ci-creds --docker-server=client.repo.example.com --docker-username=username --docker-password=password

  2. 在扫描作业中,指定imagePullSecrets变量的值:

    imagePullSecrets:

    - name: ci-creds

  3. 开始扫描作业。

    带有授权 secret 的扫描作业示例

    kind: Job

    metadata:

    name: my-job

    spec:

    template:

    spec:

    containers:

    - name: my-container

    image: client.repo.example.com/scanner:master

    command: ["/bin/sh"]

    args: ["entrypoint.sh", "apline:latest"]

    env:

    - name: COMPANY_EXT_REGISTRY_USERNAME

    value: another_username

    - name: COMPANY_EXT_REGISTRY_PASSWORD

    value: another_password

    - name: API_BASE_URL

    value: https://some.kcs.env.example

    - name: API_TOKEN

    value: kcs_blablabla

    - name: SKIP_API_SERVER_VALIDATION

    value: 'true'

    imagePullPolicy: Always

    restartPolicy: Never

    imagePullSecrets:

    - name: ci-creds

    backoffLimit: 0

在此示例中,扫描作业包含以下 Secret:

  • 用于下载扫描仪镜像的 secret(在imagePullSecrets变量中指定)。
  • 如果对相关仓库的访问受到限制,则下载要扫描的镜像的密码(在COMPANY_EXT_REGISTRY_PASSWORD变量中指定)。

如果解决方案在运行扫描作业时获得访问权限的仓库可在未经授权的情况下访问,则可以省略这些密码。

页首
[Topic 281598]