私たちはspring-security-3.2を使用しています。最近RestAPIに@PreAuthorizeアノテーションを追加しています(以前はURLベースでした)。@Preauthorizeと@@ ControllerAdviceのカスタムエラーメッセージ
@PreAuthorize("hasPermission('salesorder','ViewSalesOrder')")
@RequestMapping(value = "/restapi/salesorders/", method = RequestMethod.GET)
public ModelAndView getSalesOrders(){}
我々はすでにで注釈を付け、グローバル例外ハンドラ持っている - すべては、エラーメッセージを除いて正常に動作し、所定の位置に@ControllerAdviceとカスタムPermissionEvaluatorを。
「ViewSalesOrder」アクセス権を持たない瞬間に、デフォルトでは「アクセスが拒否されました」という例外がスローされますが、どのアクセス権が失われているかはわかりませんでした不足している)。
アクセス権が拒否され、ViewSalesOrder権限が必要です(ここではアクセス権名は@PreAuthorizeアノテーションから取得する必要があります)ように、アクセス権名も含む例外をスローすることは可能ですか?
一般的な解決策が高く評価されるように、このようなrestAPIが100個あることにご注意ください。