원문 캡처 · github.blog
원문 캡처 · github.blog

GitHub가 GitHub Code Security를 활성화한 저장소를 대상으로 오픈소스 라이선스 준수 기능을 정식 출시했다. GitHub Enterprise Cloud 고객과 데이터 상주형 GHEC 고객은 규칙 집합으로 기업 공통 라이선스 정책을 적용할 수 있다.

규칙 집합에 Require license compliance results before merging 조건을 설정하면, 개발자가 의존성을 추가하거나 변경하는 풀 리퀘스트를 열 때 라이선스를 자동으로 확인한다. 정책에 맞지 않는 의존성은 풀 리퀘스트에 표시되며, 병합 전에 해당 의존성을 제거하거나 교체하고, 라이선스 정책을 수정하거나 패키지 예외를 만들어야 한다. 이 기능은 dependency review action의 기능을 기업 전체 라이선스 정책으로 확장한다.

GitHub는 Enterprise Open-Source License Manager라는 사전 정의된 기업 역할도 추가했다. 요청을 검토하고 승인할 개인이나 팀에 이 역할을 부여할 수 있으며, 정책 관리자는 대기 중인 요청을 이메일로 받고 기업 콘솔에서 검토할 수 있다.

6월 공개 프리뷰 이후 데이터 상주형 GitHub Enterprise Cloud 고객도 라이선스 정보를 확인할 수 있게 됐다. 이에 따라 의존성 그래프와 소프트웨어 자재 명세서(SBOM) 내보내기에도 라이선스 데이터가 포함된다. 라이선스 정책 변경은 외부 기록 시스템과 연동할 수 있도록 감사 로그 이벤트로 남는다. 기업 라이선스 정책을 내려받고 업데이트하거나 교체하는 API와 패키지가 정책을 준수하는지 확인하는 API도 추가됐다. 후자의 API를 이용하면 코딩 에이전트가 조직의 라이선스 사용 정책을 위반하는 패키지를 추천하거나 포함하지 않도록 할 수 있다.

설정 방법은 오픈소스 라이선스 준수 안내에서 확인할 수 있다. API 정보는 dependency-graph REST API 문서를 참고하면 된다. GitHub Community 토론에도 참여할 수 있다.