npm CLI v11.10.0+ 출시: 보안 강화 및 설정 간소화
npm CLI v11.10.0+에서 OIDC 신뢰할 수 있는 게시(Trusted Publishing)를 위한 대량 설정 기능 출시
npm trust 명령어를 통해 여러 패키지의 설정을 한 번에 관리하여 설정 관리 효율성(Configuration Management Efficiency)을 향상시킴
--allow-git 플래그를 통해 git 의존성 관련 임의 코드 실행(Arbitrary Code Execution)을 제어하여 보안 취약점(Security Vulnerability)을 완화함
OIDC 기반 신뢰할 수 있는 게시(Trusted Publishing) 설정
본문에 따르면 npm CLI v11.10.0+부터 npm trust 명령어를 통해 OIDC(OpenID Connect) 기반의 신뢰할 수 있는 게시(Trusted Publishing) 설정을 대량으로 관리할 수 있다.
npm trust add/update: 개별 패키지 설정 없이 여러 패키지에 대한 신뢰 설정을 일괄 적용
OIDC(OpenID Connect) 인증: ID 공급자(Identity Provider)를 통해 사용자 인증을 수행하여 게시 권한 관리
장점: 설정 일관성(Configuration Consistency) 유지 및 설정 변경 시 유지보수성(Maintainability) 향상
결과적으로 npm 패키지 게시 과정의 보안을 강화하고, 개발자 생산성을 높이는 데 기여한다.
npm install --allow-git 플래그의 중요성
글에서는 --allow-git 플래그를 통해 git 의존성(Git Dependency) 관련 보안 문제를 해결한다고 설명한다.
git 의존성: .npmrc 파일을 통해 git 실행 파일 경로를 임의로 조작하여 코드 실행 가능
--allow-git=none: git 의존성 사용을 명시적으로 비활성화하여 임의 코드 실행(Arbitrary Code Execution) 방지
--ignore-scripts: 스크립트 실행을 무시하더라도 git 의존성을 통해 보안 취약점(Security Vulnerability) 발생 가능
따라서 --allow-git=none 설정을 권장하며, git 의존성이 필요한 경우에만 활성화하여 보안 위험(Security Risk)을 최소화해야 한다.
npm CLI v12에서 --allow-git 기본값 변경
본문에 따르면 --allow-git 플래그의 기본값이 npm CLI v12에서 --allow-git=none으로 변경될 예정이다.
--allow-git=none 기본값: 보안을 최우선으로 고려하여 git 의존성 관련 위험을 원천 차단
하위 호환성(Backward Compatibility) 문제: 기존 스크립트(Script)와의 호환성 문제 발생 가능성
npm install --allow-git documentation: 자세한 내용은 공식 문서를 참조
결과적으로 npm CLI v12에서는 보안이 더욱 강화될 것이며, 기존 스크립트 사용자는 설정 변경에 따른 영향(Impact)을 미리 파악해야 한다.