文档

GitHub Actions集成

更新时间:

云安全中心提供的CI/CD插件支持对GitHub中构建的镜像进行自动化安全扫描。使用该功能前,您需要在GitHub中集成CI/CD插件。本文为您介绍如何将云安全中心的CI/CD插件集成到GitHub。

操作步骤

  1. 登录GitHub。
  2. 单击右上角头像,在下来菜单中选中Your repositories
  3. repositories页签下,单击您要集成CI/CD插件的repository
  4. 单击Actions页签。
  5. 在All workflows列表中,定位到要集成CI/CD插件的workflows流水线文件,单击其Actor列的更多
  6. 在下拉菜单中,选择View workflow file
  7. Workflow file for this run中按照以下样例进行集成配置。
    name: Docker build and scan security issue by sas-image-scanner
    
    on:
      push:
        branches: [ main ]
      pull_request:
        branches: [ main ]
    
    env:
      REPO_TAG: your_docker_image_repo:your_docker_image_tag
    
    jobs:
    
      build:
    
        runs-on: ubuntu-latest
    
        steps:
        - uses: actions/checkout@v2
        - name: Build the Docker image
          run: docker build . --file Dockerfile --tag ${{ env.REPO_TAG }}
        - name: Scan image by sas-image-scanner
          run: >
              docker run --rm -v /var/run/docker.sock:/var/run/docker.sock --network=host
              sas-image-scanner-registry.cn-hangzhou.cr.aliyuncs.com/sas_public/sas-image-scanner:latest
              --accessKeyId=${{ secrets.ACCESSKEYID }} --accessKeySecret=${{ secrets.ACCESSKEYSECRET }}
              --token=${{ secrets.SAS_TOKEN }} --imageId=${{ env.REPO_TAG }}
    相关配置参数说明如下:
    参数是否必填参数说明
    accessKeyId建议通过GitHub的secrets变量注入阿里云账号或RAM用户的AccessKey。
    重要 强烈建议使用RAM用户的AccessKey。阿里云账号的AccessKey是您访问阿里云API的密钥,具有账户的完全权限,请您妥善保管并且不要以任何方式公开到外部渠道,避免被他人利用造成安全威胁。建议您遵循阿里云安全最佳实践,使用RAM用户的AccessKey进行API调用。
    accessKeySecret建议通过GitHub的secrets变量注入阿里云账号或RAM用户的AccessKey Secret。
    重要 强烈建议使用RAM用户的AccessKey Secret。阿里云账号的AccessKey是您访问阿里云API的密钥,具有账户的完全权限,请您妥善保管并且不要以任何方式公开到外部渠道,避免被他人利用造成安全威胁。建议您遵循阿里云安全最佳实践,使用RAM用户的AccessKey进行API调用。
    token阿里云云安全中心CI/CD插件的接入Token。获取CI/CD接入Token的具体操作,请参见接入配置
    imageId待扫描镜像标识。默认支持本地扫描。
    • 本地镜像支持传入ImageId或Repo:Tag。
    • 远程镜像需传入RegistryUrl或Repo:Tag,并需填写镜像仓凭证。
      重要 如果要扫描远程镜像仓中的镜像,您需要正确填写远程镜像的RegistryUrl、RegistryUsername、RegistryPassword的这三个参数。
    domain云安全中心接入点。请填写:sas.aliyuncs.com。
    registryUrl镜像仓的URL。
    重要 扫描远程镜像仓中的镜像时,此参数必填。
    registryUsername镜像仓登录用户名。
    重要 扫描远程镜像仓中镜像时,此参数必填。
    registryPwd镜像仓登录密码。
    重要 扫描远程镜像仓中镜像时,此参数必填。
    集成配置完成后,您在构建项目时,会自动同步执行镜像安全扫描任务,扫描您项目的镜像是否存在安全风险。

后续步骤

您可以在资产中心的容器页签下,查看镜像安全扫描结果。具体操作,请参见查看镜像扫描结果

  • 本页导读 (1)
文档反馈