会員登録すると
学習することができます。
会員登録する(無料)
登録済みの方はこちら
ログイン

秘密情報 ― AIに渡すもの、コードに残すもの

目安学習時間 15分

課題

全問正解でレクチャー完了です。

【問題1】

APIキーを漏らしたことに気づいたとき、最初にやるべきことはどれですか。

[選択肢]

【問題2】

APIキーを含む .env をコミットしてしまい、次のコミットで git rm した。この状態の説明として正しいものはどれですか。

[選択肢]
会員登録すると
学習することができます。
会員登録する(無料)

学ぶ目的

秘密情報とは

APIキー、データベースのパスワード、署名用の鍵。それだけで他人があなたになりすませる値です。

経路は2つある

  1. AIに渡してしまう: エラーを相談するときに .env やログをそのまま貼る。使っているサービスによっては、入力が保存されたり、学習に使われたりします
  2. コードに残してしまう: AIが「動かすために」キーを直接コードに書く。それをそのままコミットする

消しても残る

.env を間違えてコミットし、次のコミットで git rm で消したとします。手元で確かめると、こうなりました。

git show HEAD~1:.env
# API_KEY=sk-test-0000

ファイルは消えても、履歴には残っています。公開リポジトリなら、消す前に誰かが取得しているかもしれません。

漏らしたら「消す」ではなく「無効にする」

漏れた秘密情報の対処は、そのキーを無効にして、新しいキーを発行する(ローテーション)ことです。履歴の書き換えはその後の片付けです。順番を間違えると、片付けている間もキーは使えるままです。

日頃の守り方

  • 秘密情報は .env などに分け、.gitignore に入れる
  • AIに相談するときは、値を xxxx に置き換えてから貼る
  • AIが書いたコードに、キーらしい長い文字列が無いか見る
  • GitHub の秘密情報スキャンのような、コミット時に気づける仕組みを使う

このレクチャーで学ぶこと

  • 秘密情報がAIとコードに漏れる2つの経路
  • git rm しても履歴に残ること(実機確認)
  • 漏らしたら最初にやるのは無効化

質問

まだ質問は投稿されていません。

質問投稿

ログイン後に質問の投稿ができます。