Skip to main content

此版本的 GitHub Enterprise Server 将于以下日期停止服务 2026-08-25. 已停止发布的版本不受支持。 即使针对重大安全问题,也不会发布补丁。 若要获得更好的性能、改进的安全性和 GitHub Enterprise Server 中的新功能,请参阅升级过程的 Overview。 如需升级帮助,请联系 GitHub Enterprise 支持。

配置依赖项评审操作

你可以使用 依赖项审查操作 在漏洞添加到你的项目之前捕获它们。

谁可以使用此功能?

具有管理员角色的存储库所有者、组织所有者、安全管理员和用户

在本文中

"依赖项审查操作" 是指可在 GitHub Actions 上下文中报告拉取请求中的差异的特定操作。 它还可将强制机制添加到 GitHub Actions 工作流。 有关详细信息,请参阅“依赖项审查”。

有关常见配置选项的列表,请参阅依赖项审查(位于GitHub Marketplace)。

配置 依赖项审查操作

有两种配置 依赖项审查操作方法:

  • 在工作流文件中内联配置选项。
  • 在工作流文件中引用配置文件。

请注意,所有示例使用操作 (v3) 的短版本号,而不是 semver 版本号(例如,v3.0.8)。 这可确保使用操作的最新次要版本。

使用内联配置设置 依赖项审查操作

  1. 将新的 YAML 工作流添加到 .github/workflows 文件夹。

对于 runs-on,默认标签为 self-hosted。 你可以用任何运行器的标签替换默认标签。

YAML
name: 'Dependency Review'
on: [pull_request]

permissions:
  contents: read

jobs:
  dependency-review:
    runs-on: [self-hosted]
    steps:
     - name: 'Checkout Repository'
       uses: actions/checkout@v6
     - name: Dependency Review
       uses: actions/dependency-review-action@v4
  1. 指定你的设置。

    此示例 依赖项审查操作 文件演示如何使用可用的配置选项。

    YAML
    name: 'Dependency Review'
    on: [pull_request]
    
    permissions:
      contents: read
    
    jobs:
      dependency-review:
        runs-on: [self-hosted]
        steps:
        - name: 'Checkout Repository'
          uses: actions/checkout@v6
        - name: Dependency Review
          uses: actions/dependency-review-action@v4
          with:
            # Possible values: "critical", "high", "moderate", "low"
            fail-on-severity: critical
    
            
            # ([String]). Skip these GitHub Advisory Database IDs during detection (optional)
            # Possible values: Any valid GitHub Advisory Database ID from https://github.com/advisories
            allow-ghsas: GHSA-abcd-1234-5679, GHSA-efgh-1234-5679
            # ([String]). Block pull requests that introduce vulnerabilities in the scopes that match this list (optional)
            # Possible values: "development", "runtime", "unknown"
            fail-on-scopes: development, runtime
    

使用配置文件设置 依赖项审查操作

  1. 将新的 YAML 工作流添加到 .github/workflows 文件夹,并使用 config-file 指定正在使用配置文件。

对于 runs-on,默认标签为 self-hosted。 你可以用任何运行器的标签替换默认标签。

YAML
name: 'Dependency Review'
on: [pull_request]

permissions:
 contents: read

jobs:
  dependency-review:
    runs-on: [self-hosted]
    steps:
    - name: 'Checkout Repository'
      uses: actions/checkout@v6
    - name: Dependency Review
      uses: actions/dependency-review-action@v4
      with:
       # ([String]). Representing a path to a configuration file local to the repository or in an external repository.
       # Possible values: An absolute path to a local file or an external file.
       config-file: './.github/dependency-review-config.yml'
       # Optional alternative syntax for an external file: OWNER/REPOSITORY/FILENAME@BRANCH (uncomment if preferred)
       # config-file: 'github/octorepo/dependency-review-config.yml@main'

       # ([Token]) Use if your configuration file resides in a private external repository.
       # Possible values: Any GitHub token with read access to the private external repository.
       external-repo-token: 'ghp_123456789abcde'
  1. 在指定路径中创建配置文件。

    此 YAML 示例文件说明了如何使用可用的配置选项。

    YAML
      # Possible values: "critical", "high", "moderate", "low"
      fail-on-severity: critical
    
       # ([String]). Skip these GitHub Advisory Database IDs during detection (optional)
       # Possible values: Any valid GitHub Advisory Database ID from https://github.com/advisories
      allow-ghsas:
        - GHSA-abcd-1234-5679
        - GHSA-efgh-1234-5679
       # ([String]). Block pull requests that introduce vulnerabilities in the scopes that match this list (optional)
       # Possible values: "development", "runtime", "unknown"
      fail-on-scopes:
        - development
        - runtime
    

有关配置选项的更多详细信息,请参阅dependency-review-action

延伸阅读