← 学習メニュー
CCDV-F 練習問題 5
CCDV-F
Agent SDK で作った運用エージェントが Bash を使います。セキュリティ部門から「実行されたすべてのコマンドを監査ログに残すこと」と「rm -rf や本番データベースへの接続を必ず止めること」を求められました。最も適切な実装はどれですか。
スポンサーリンク
選択肢を押して回答
正解と解説
正解:D
判断のポイント
必ず実行したい処理(監査・禁止・整形)は、モデルの判断に頼らずフックで実装します。PreToolUse は実行前の拒否、PostToolUse は実行後の処理に使います。
A. システムプロンプトに禁止コマンドの一覧を書き、実行したコマンドを応答の最後に報告させる(不正解)
指示の遵守と自己申告は確率的で、監査や禁止の要件を確実には満たせません。
B. エージェントの実行後に、会話のログから Bash の呼び出しを抜き出して監査ログを作る(不正解)
記録は後から作れても、危険なコマンドを事前に止めることはできません。
C. Bash ツールを完全に取り除き、運用の調査はすべて人が行う(不正解)
安全ですが、エージェントの主要な機能を失います。必要な制御はフックで実現できます。
D. フックで危険なコマンドを拒否し、実行の記録も書き出す(正解)
フックはエージェントのライフサイクルの決まった時点で必ず実行されるため、監査や禁止のように確実さが必要な処理に向いています。PreToolUse で deny を返すと実行はブロックされます。
出題範囲:CCDV-F 分野1「エージェントとワークフロー」・項目1.2 Claude でのエージェント構築(Agent SDK・独自ループ・運用形態・フック)
参考資料(公式ドキュメント)
公開資料をもとにした独自解説です。本番の問題・難易度・合否を再現するものではありません。
