結論:CodexにSecretsを貼らない。gitignoreだけで安心しない。
CodexやGitHubを使う時は、APIキー、token、.env、GitHub token、FTP情報、DB情報をそのまま貼らないことが基本です。
gitignoreは大切ですが、過去にcommitしたSecretsまで自動で消すものではありません。private repoも、秘密情報を入れてよい場所という意味ではありません。
Secretsとは何か
Secretsとは、外に出ると悪用される可能性がある認証情報や内部情報です。APIキー、access token、GitHub token、OpenAI API key、FTP情報、DB接続情報、SSH鍵、.env実値、Webhook secret、OAuth client secretなどが含まれます。
記事本文、GitHub、ChatGPT、Codex、スクリーンショット、ログ、レポートに実値を残さない運用が大切です。
gitignoreとは何か
gitignoreは、Gitで追跡しないファイルを指定するためのものです。.env、ログ、バックアップ、zip、SQL、認証情報を含むファイルを除外するために使います。
ただし、すでにGitで追跡されたファイルはgitignoreだけでは消えない場合があります。gitignoreは事故防止の一部であり、Secrets管理そのものではありません。
private repoは万能ではない
private repoは公開範囲を制限する仕組みですが、Secretsを入れてよいという意味ではありません。共同作業者、連携アプリ、Actionsログ、誤共有、権限設定のミスなどでリスクが残ります。
公開されないから安全、ではなく、入れない設計を基本にします。
Codexに貼らないもの
APIキー、token、.env実値、GitHub token、FTP情報、DB情報、SSH鍵、サーバーパスワード、管理画面ログイン情報、顧客情報、会社内部情報、未公開資料、個人情報はそのまま貼らないでください。
代わりに、環境変数名、ダミー値、PLACEHOLDER_API_KEY、DATABASE_URL、TOKEN_PLACEHOLDERのような明確なプレースホルダーを使います。
Codex / GitHub / ChatGPTで事故が起きる場所
ChatGPTでは相談文やエラー文に実値を貼ってしまうことがあります。Codexでは作業指示、ログ、レポート、生成コードに実値が残ることがあります。GitHubではrepo、PR差分、Actionsログに出ることがあります。
どの場所でも、実値を貼らない、ダミー値にする、Secrets管理へ分ける、review前にスキャンする、という流れが基本です。
もしSecretsを入れてしまったら
まず公開、commit、push、本番反映を止めます。関係するキーやtokenは、必要に応じて無効化や再発行を検討します。
履歴に残った可能性、関係者への相談、管理者や専門家への確認も分けて考えます。gitignoreに追加するだけで対応完了と判断しないことが大切です。
Codexへ安全に頼むテンプレート
Secretsや認証情報は出さずに相談します。コード例はダミー値で作り、GitHubに入れてはいけないファイル、PR前に確認すべき差分、公開前に止めるべき条件を整理してもらいます。
例:Secretsは貼らずに相談します。APIキー、token、.env実値、FTP情報、DB情報は伏せています。GitHubに入れてはいけないファイルと、PR前に確認すべき差分を整理してください。
GitHubに入れない方がよいものチェックリスト
.env、APIキー、token、GitHub token、FTP情報、DB接続情報、SSH鍵、管理画面ログイン情報、SQL dump、バックアップzip、ログファイル、顧客情報、会社情報、個人情報、認証情報入りスクリーンショットは注意対象です。
疑わしい場合は、公開やpushの前に止めて確認します。
関連ページ
公式情報
FAQ
Codex secretsとは何ですか?
CodexやGitHub作業で外に出してはいけないAPIキー、token、.env、FTP情報、DB情報などの認証情報を指す言葉として使います。
gitignoreだけで安心してよいですか?
いいえ。gitignoreは今後Gitに入れないための設定で、過去にcommit済みのSecretsまで自動で消すものではありません。
private repoならAPIキーを入れてもよいですか?
いいえ。private repoでも共同作業者、連携アプリ、Actionsログ、誤共有などのリスクがあります。
CodexにAPIキーを貼って相談してよいですか?
実値は貼らないでください。ダミー値や環境変数名だけで相談します。
.envをChatGPTやCodexに貼ってよいですか?
実値が入っている場合は貼らないでください。キー名だけ、または値を伏せた形にします。
GitHub Secretsと.envは同じですか?
同じではありません。GitHub SecretsはGitHub上で安全に値を扱う仕組みの一つで、.envは環境変数をファイルで管理する時に使われます。
Secretsを入れてしまったらどうしますか?
公開やpushを止め、必要に応じてキーやtokenの無効化、再発行、履歴確認、管理者相談を行います。
Codex reviewでSecretsを見てもらえますか?
実値を貼らず、差分にSecretsが混ざっていないか確認する観点を出してもらう形が安全です。
ダミー値なら大丈夫ですか?
明確なプレースホルダーなら扱いやすいです。実値に見える値は誤解を避けるため伏せます。
会社PCや会社repoでは何に注意しますか?
会社のAI利用ルール、GitHub利用ルール、情報管理ルールを優先して確認します。