0

grailsで監査ログプラグインを使用することを計画していて、基本的なことを知りたいだけです。
監査ドメインクラスを作成し、ドメインクラスからのさまざまなイベントに関するデータをこのテーブルに手動で永続化する必要がありますか?
プラグインがドメインを作成せず、永続化しないことを意味します。しかし、それが監査データを保存するための標準的な方法でしょうか?また
、監査ログに次のようなエントリが必要な場合

「ユーザーsamは「timestamp」で「IP」からログインし、ユーザーgeorgeを更新しました」

"onLoad"ドメイン内のイベントでそれを処理する必要がありますか?

また、次のような単純なイベントをどのように追跡しますか

「ユーザーRitaが「Timestamp」にログインしました」

ありがとう

4

2 に答える 2

1

監査ログプラグインは、思ったよりもはるかに自動化されています。プラグインには確かに独自のドメインクラスがあり、監査対象のドメインクラスに「auditable = true」を追加する以外に何もしなくても、すべての監査情報が保存されます。

質問の2番目の部分に関しては、samがgeorgeを更新した場合、「george」のフィールドの更新が監査され(georgeが存在するドメインクラスにauditable = trueを追加したと仮定)、samがそれを行ったという事実が使用しているセキュリティフレームワークに応じて、「actor」情報によってキャプチャされます(これはプラグインに記載されています)。

ログイン時にタイムスタンプとIPをログに記録したいという要望は、誰かがログインしたときにキャプチャできるドメインクラスに特定の変更がない限り、監査ログプラグインの範囲外になる可能性があります。

于 2012-05-09T17:46:53.220 に答える
1

0.5以降のバージョンである2010年10月13日には、Config.groovyでactorClosureを指定する機能が含まれています。以下のリンクのドキュメントには、いくつかの異なるセキュリティプラグインを使用してユーザー情報を取得する方法の例があります。

http://grails.org/plugin/audit-logging

于 2013-05-15T23:21:12.880 に答える