1

重複の可能性: Spring
セキュリティ式言語アノテーションで使用するカスタム メソッドを作成する方法

次のようなカスタムメソッドを使用したい@PreAuthorize

@PreAuthorize("canPlayGolf(something,something)")

そのために、のレプリカを作成し( Spring Security 3.0.6MethodSecurityExpressionRootでパッケージにアクセスできるため、サブクラス化できません)、そこにカスタム関数を追加しました。でこのカスタム式ルートを使用する必要がありますが、ハードコーディングされているため、カスタム式ルートを使用するようにサブクラス化しました (のオーバーライドで使用する必要があったため、 のレプリカも作成する必要があり、再びパッケージ アクセスが必要でした) 。 .MethodSecurityExpressionHandlerMethodSecurityExpressionRootMethodSecurityEvaluationContextcreateEvaluationContext

最後に、カスタム式ハンドラーを で配線する方法がわかりませんExpressionBasedPreInvocationAdvice。これにより、カスタム式を@PreAuthorize

4

0 に答える 0