監査ログ
keygrant は、シークレットの使用を 1 回ごとにローカルに記録します。keygrant list では各シークレットの使用回数が表示され、エージェントの list_secrets では最終使用日時も表示されます。クラウドアカウントがある場合は、これらのイベントが次回の同期時にアップロードされ、コンソールで複数のマシンにまたがるアクティビティを確認できます。
記録される内容
イベントは、exec、拒否、許可(グラント)、set、rm、revoke について記録されます。アップロードされる内容は、監査レベルによって異なります。
| レベル | アップロードされる内容 |
|---|---|
off | なし |
metadata(デフォルト) | シークレット名、操作の種類、リクエスト元のセッション、コマンドのハッシュ |
full | metadata のすべてに加えて、コマンドの全文 |
どのレベルでも、値が記録されることは決してありません。
レベルを変更する
keygrant cloud audit # 現在のレベルを表示
keygrant cloud audit off
keygrant cloud audit full
レベルはデバイスごとに設定します。
レベルの選び方
metadata を使えば、コマンドの中身をアップロードすることなく、普段と異なる使用(たとえば、見覚えのないセッションからシークレットが使われたこと)に気づくことができます。コマンドには、どこにも保存したくない URL、ファイルパス、ホスト名が含まれている可能性があります。そのため、全文の記録はオプトイン方式になっています。