セキュリティポリシー
以下のセキュリティポリシーは、oxc-project リポジトリ組織内のすべてのプロジェクトに適用されます。
不備を発見した場合は、@boshen までお知らせください。
https://www.npmjs.com/~boshen および https://crates.io/users/Boshen が、当該パッケージおよびクラストの公開権限を持つ唯一のアカウントです。
github.com
- 組織内全員に対して、2段階認証の強制
- 安全性の高い2段階認証方法のみを許可
- GitHub セキュリティスキャン(秘密情報スキャンを含む)の有効化
- GitHub Actions:すべてのアクションを完全なコミットSHAに固定する必要あり
- リリース不変性の有効化 — リリース後、アセットおよびタグの変更は不可
- 署名済みコミットの要件:https://docs.github.com/ja/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を使用して、依存関係を Rustアドバイザリーデータベース(https://rustsec.org)と照合する
