보안 정책
다음과 같은 보안 정책이 oxc-project 조직 내 모든 프로젝트에 적용됩니다.
오류를 발견한 경우 @boshen에게 알려주시기 바랍니다.
https://www.npmjs.com/~boshen 및 https://crates.io/users/Boshen은 우리 패키지와 크레이트의 배포 권한을 가진 유일한 계정입니다.
github.com
- 조직 내 모든 사용자에게 두 요소 인증 필수
- 안전한 두 요소 인증 방법만 허용됨
- GitHub 보안 스캔(비밀 스캔 포함) 활성화
- GitHub Actions: 모든 액션을 전체 길이의 커밋 SHA로 고정하도록 요구
- 릴리스 불변성 활성화 — 릴리스가 게시된 후에는 자산과 태그를 수정할 수 없음
- 서명된 커밋 필수: https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits
- 저장소 설정에서 강제 적용하지 않음; 그렇지 않으면 외부 기여자가 기여할 수 없음
- 배포용 장기적인 토큰은 저장하지 않음 — 아래 npmjs.com 및 crates.io의 신뢰할 수 있는 배포 참조
- 보안 업데이트용 Renovate Bot 활성화
- 공통 보안 문제를 확인하기 위해 https://docs.zizmor.sh 사용하여 GitHub Actions 검사
npmjs.com
- 로그인 시 2차 인증 강제화
npm publish --provenance를 사용해 배포: https://docs.npmjs.com/generating-provenance-statements- 신뢰할 수 있는 배포를 사용해 배포: https://docs.npmjs.com/trusted-publishers
- Socket Security 설치
- Renovate Bot의
"minimumReleaseAge": "3 days"를 활성화하여 최근 3일 이내에 출시된 패키지를 업데이트하지 않도록 함 - pnpm 사용: https://pnpm.io/supply-chain-security
- 자동
postinstall스크립트 없음
- 자동
crates.io
- 신뢰할 수 있는 배포를 사용해 배포: https://crates.io/docs/trusted-publishing
cargo deny를 사용하여 레스트 경고 데이터베이스(https://rustsec.org)에 대한 종속성 검사
