このドキュメントは、リポジトリのセキュアな設定方法について説明します。
ハードコードされた個人情報を避け、以下のコマンドで安全に設定してください:
# ユーザー名の設定
git config --global user.name "Your Name"
# メールアドレスの設定
git config --global user.email "your.email@example.com"SSH鍵をgitconfigに直接記載せず、以下の方法で設定してください:
# SSH鍵を生成(まだ持っていない場合)
ssh-keygen -t ed25519 -C "your.email@example.com"
# 公開鍵を署名鍵として設定
git config --global user.signingkey "$(cat ~/.ssh/id_ed25519.pub)"
# GPG形式の署名を使用する場合
# git config --global user.signingkey YOUR_GPG_KEY_ID# SSH鍵でコミットに署名する
git config --global commit.gpgsign true
git config --global gpg.format sshこのリポジトリでは script/credentials.sh を使用して、1Password CLIから安全に認証情報を取得できます:
# 認証情報をフェッチ
./script/credentials.sh fetch
# 利用可能なテンプレートを表示
./script/credentials.sh list
# 認証情報をクリーンアップ
./script/credentials.sh cleancredentials/templates/ ディレクトリには、機密情報用のテンプレートファイルが含まれています。これらのファイルは1Password CLIの op inject コマンドで処理されます。
- 環境変数やシークレット管理ツールを使用
- SSH鍵は適切な権限(600)で保護
- 強力で一意なパスワードを使用
- 定期的な認証情報のローテーション
.gitignoreで機密ファイルを除外
- リポジトリに平文の認証情報をコミット
- デフォルトパスワードの使用
- SSH鍵の直接埋め込み
- 個人情報のハードコード
- 機密情報の共有コミット
semantic-release が内部で利用する @semantic-release/npm は npm を依存として含みます。現時点の npm 最新版 (11.8.0) は tar の修正済みバージョンを含んでおらず、npm audit で高リスクが表示されることがあります。これは上流の更新待ちです。
- 対応:
npmのリリース更新を確認し、修正版が出たら依存関係を更新 - 回避策: 当面は
npm auditの警告を記録し、CIの動作に影響しないことを確認
# 現在の設定を確認
git config --global --list
# 特定の設定を確認
git config --global user.name
git config --global user.email
git config --global user.signingkey# 署名付きコミットをテスト
git commit --allow-empty -m "Test signed commit"
# 署名を確認
git log --show-signature -1設定に問題がある場合は、以下を確認してください:
- SSH鍵が正しく生成されているか
- Git設定が正しく設定されているか
- 1Password CLIが正しくインストール・認証されているか
詳細については、リポジトリのREADMEまたはissueを参照してください。