← 学習メニュー

CCDV-F 練習問題 53

CCDV-F

開発者が Claude Code に「開発用のデータベースを初期化して」と頼んだところ、接続先の環境変数が本番のままだったため、本番のデータベースに対して DROP TABLE が実行されかけました(人が気づいて止めました)。同じことを確実に防ぐ方法として最も適切なのはどれですか。

スポンサーリンク
1つ選択してください

選択肢を押して回答

正解と解説

正解:C

判断のポイント

取り返しのつかない操作は、フックや permissions の deny で決定的に止めます。指示・事後の復旧・すべての操作への承認は、確実な防止の代わりになりません。

A. Bash のコマンドはすべて、実行のたびに人の承認を求める設定にする(不正解)

承認の依頼が多すぎると内容を見ずに承認するようになり、確実な防止になりません。

B. 実行の前に接続先を確認して報告するよう、エージェントへの指示に加える(不正解)

指示は守られない場合があり、確実な制御になりません。

C. PreToolUse フックで、本番の接続先に対する破壊的な SQL を含むコマンドを検出して拒否する(正解)

実行前のフックはコマンドの内容と環境を検査し、条件に当たれば実行させません。モデルの判断や人の注意に頼らず、決定的に止められます。

D. 破壊的な操作が実行されたら、そのたびにバックアップから自動で元に戻す(不正解)

事後の復旧で、復旧までの停止やデータの欠落は防げません。

出題範囲:CCDV-F 分野7「セキュリティと安全性」・項目7.3 フックによる破壊的操作の防止

参考資料(公式ドキュメント)

公開資料をもとにした独自解説です。本番の問題・難易度・合否を再現するものではありません。