← 学習メニュー

CCDV-F 練習問題 5

CCDV-F

Agent SDK で作った運用エージェントが Bash を使います。セキュリティ部門から「実行されたすべてのコマンドを監査ログに残すこと」と「rm -rf や本番データベースへの接続を必ず止めること」を求められました。最も適切な実装はどれですか。

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

選択肢を押して回答

正解と解説

正解:D

判断のポイント

必ず実行したい処理(監査・禁止・整形)は、モデルの判断に頼らずフックで実装します。PreToolUse は実行前の拒否、PostToolUse は実行後の処理に使います。

A. システムプロンプトに禁止コマンドの一覧を書き、実行したコマンドを応答の最後に報告させる(不正解)

指示の遵守と自己申告は確率的で、監査や禁止の要件を確実には満たせません。

B. エージェントの実行後に、会話のログから Bash の呼び出しを抜き出して監査ログを作る(不正解)

記録は後から作れても、危険なコマンドを事前に止めることはできません。

C. Bash ツールを完全に取り除き、運用の調査はすべて人が行う(不正解)

安全ですが、エージェントの主要な機能を失います。必要な制御はフックで実現できます。

D. フックで危険なコマンドを拒否し、実行の記録も書き出す(正解)

フックはエージェントのライフサイクルの決まった時点で必ず実行されるため、監査や禁止のように確実さが必要な処理に向いています。PreToolUse で deny を返すと実行はブロックされます。

出題範囲:CCDV-F 分野1「エージェントとワークフロー」・項目1.2 Claude でのエージェント構築(Agent SDK・独自ループ・運用形態・フック)

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

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