Skip to main content

Dependabot 보안 업데이트 구성

Dependabot security updates 또는 수동 끌어오기 요청을 사용하여 취약한 종속성을 쉽게 업데이트할 수 있습니다.

누가 이 기능을 사용할 수 있나요?

Users with write access

리포지토리에 대한 Dependabot security updates 관리

개인 계정 또는 조직이 소유한 모든 적격 리포지토리에 대해 Dependabot security updates를 활성화하거나 비활성화할 수 있습니다. 자세한 내용은 보안 및 분석 기능 관리 또는 조직의 보안 및 분석 설정 관리을(를) 참조하세요.

또한 개별 리포지토리에 대해 Dependabot security updates를 활성화하거나 비활성화할 수 있습니다.

개별 리포지토리에 Dependabot security updates 사용 또는 사용 안 함

  1. GitHub에서 리포지토리의 기본 페이지로 이동합니다.

  2. 리포지토리 이름 아래에서 Settings를 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    탭을 보여 주는 리포지토리 헤더의 스크린샷. "설정" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.

  3. 사이드바의 "Security" 섹션에서 Advanced Security 를 클릭합니다.

  4. "Dependabot 보안 업데이트"의 오른쪽에서 사용을 클릭하여 기능을 활성화하거나 사용 안 함을 클릭하여 기능을 비활성화합니다. 공용 리포지토리의 경우 기능이 항상 활성화되어 있으면 버튼이 비활성화됩니다.

Dependabot security updates를 단일 끌어오기 요청으로 그룹화

그룹화된 보안 업데이트를 사용하려면 먼저 다음 기능을 활성화해야 합니다.

  •         **종속성 그래프**. 자세한 내용은 [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-graph)을(를) 참조하세요.
    
  •         **Dependabot alerts**. 자세한 내용은 [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts)을(를) 참조하세요.
    
  •           **Dependabot security updates**. 자세한 내용은 [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates)을(를) 참조하세요.
    

참고

그룹화된 보안 업데이트를 처음 활성화하면 Dependabot에서 즉시 그룹화된 끌어오기 요청 생성을 시도합니다. Dependabot이 이전 끌어오기 요청을 닫고 새 끌어오기 요청을 여는 것을 볼 수 있습니다.

다음 방법 중 하나 또는 둘 다로 Dependabot security updates에 대해 그룹화된 끌어오기 요청을 사용하도록 설정할 수 있습니다.

  • 가능한 한 많은 보안 업데이트를 디렉터리 및 에코시스템별로 그룹화하려면 리포지토리에 대한 "Advanced Security" 설정 또는 조직의 Advanced Security 아래의 "전역 설정"에서 그룹화할 수 있습니다.
  • 패키지 이름, 개발/프로덕션 종속성 또는 SemVer 수준별로, 에코시스템별로 여러 디렉터리로 그룹화하는 등과 같이 그룹화를 더 세부적으로 제어하려면 리포지토리의 dependabot.yml 구성 파일에 구성 옵션을 추가합니다.

참고

dependabot.yml 파일에서 Dependabot security updates에 대한 그룹 규칙을 구성한 경우 사용할 수 있는 모든 업데이트는 지정한 규칙에 따라 그룹화됩니다. 조직 또는 리포지토리 수준에서 그룹화된 보안 업데이트에 대한 설정도 사용하도록 설정된 경우 Dependabot은 dependabot.yml에 구성되지 않은 디렉터리 간에서만 그룹화합니다.

개별 리포지토리에 대해 그룹화된 Dependabot security updates를 활성화 또는 비활성화

  1. GitHub에서 리포지토리의 기본 페이지로 이동합니다.

  2. 리포지토리 이름 아래에서 Settings를 클릭합니다. "설정" 탭이 표시되지 않으면 드롭다운 메뉴를 선택한 다음 설정을 클릭합니다.

    탭을 보여 주는 리포지토리 헤더의 스크린샷. "설정" 탭이 진한 주황색 윤곽선으로 강조 표시됩니다.

  3. 사이드바의 "Security" 섹션에서 Advanced Security 를 클릭합니다.

  4. "Dependabot" 아래 "그룹화된 보안 업데이트"의 오른쪽에서 사용 클릭하여 기능을 활성화하거나 사용 안 함을 클릭하여 기능을 비활성화합니다.

조직에 그룹화된 Dependabot security updates 사용 또는 사용 안 함

그룹화된 Dependabot security updates를 단일 끌어오기 요청으로 사용할 수 있습니다. 자세한 내용은 조직에 대한 글로벌 보안 설정 구성을(를) 참조하세요.

구성 파일을 사용하여 기본 동작 재정의

리포지토리에 dependabot.yml 파일을 추가하여 Dependabot security updates의 기본 동작을 재정의할 수 있습니다. dependabot.yml 파일을 사용하면 그룹화에 대한 보다 세부적인 제어를 하며 Dependabot security updates 설정의 기본 동작을 재정의할 수 있습니다.

          `groups` 키와 함께 `applies-to: security-updates` 옵션을 사용하여 Dependabot이 동시에 여러 종속성을 업데이트하는 단일 끌어오기 요청을 열도록 종속성 집합(패키지 관리자당)을 만들 수 있습니다. 패키지 이름(`patterns` 및 `exclude-patterns` 키), 종속성 유형(`dependency-type` 키), SemVer(`update-types` 키)로 그룹을 정의할 수 있습니다.

Dependabot은(는) dependabot.yml 파일에 나타나는 순서대로 그룹을 만듭니다. 종속성 업데이트가 둘 이상의 그룹에 속할 수 있는 경우 일치하는 첫 번째 그룹에만 할당됩니다.

          _보안_ 업데이트만 필요하고 _버전_ 업데이트를 제외하려는 경우 지정된 `open-pull-requests-limit`에 대한 버전 업데이트를 방지하기 위해 `0`를 `package-ecosystem`으로 설정할 수 있습니다.

보안 업데이트에 사용할 수 있는 구성 옵션에 대한 자세한 정보는 Dependabot 보안 업데이트에 대한 끌어오기 요청 사용자 지정을 참조하세요.

YAML
# Example configuration file that:
#  - Has a private registry
#  - Ignores lodash dependency
#  - Disables version-updates
#  - Defines a group by package name, for security updates for golang dependencies

version: 2
registries:
  example:
    type: npm-registry
    url: https://example.com
    token: ${{secrets.NPM_TOKEN}}
updates:
  - package-ecosystem: "npm"
    directory: "/src/npm-project"
    schedule:
      interval: "daily"
    # For Lodash, ignore all updates
    ignore:
      - dependency-name: "lodash"
    # Disable version updates for npm dependencies
    open-pull-requests-limit: 0
    registries:
      - example
  - package-ecosystem: "gomod"
    groups:
      golang:
        applies-to: security-updates
        patterns:
          - "golang.org*"

참고

Dependabot이 보안 업데이트에 이 구성을 사용하려면 directory가 매니페스트 파일의 경로여야 하며 target-branch를 지정해서는 안 됩니다.

추가 읽기

  •         [AUTOTITLE](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)
    
  •         [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts)
    
  •         [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems#supported-package-ecosystems)