2013-08-07 5 views
1

저는 스프링 보안 문서를 읽었으며 다음 주석을 사용하여 해당 사용자가 편집 사용자에 액세스 할 수 있는지 확인할 수 있음을 알았습니다. 내가하고 싶은 무엇스프링 보안이있는 사용자 정의 주석

@PreAuthorize("hasPermission('USER_EDIT')") 
public String editUSer(User user); 

내 사용자 지정 주석 MyAutorizationCheck를 작성하고 응용 프로그램 및 ACCESSLEVEL이 열거되어 어디

@MyAuthorizationCheck(Application.USER_MANAGEMENT, AccessLevel.EDIT) 
public String editUSer(User user); 

아래처럼 사용하는 것입니다.

enum Application{ 
    USER_MANAGEMENT, ORDER_MANAGEMENT 
} 

enum AccessLevel{ 
    READ, CREATE, UPDATE, DELETE 
} 

이 주석의 처리기는 사용자의 허가 여부를 결정할 수 있어야합니다.

모든 포인터는 어떻게 구현합니까?

감사합니다.

+0

혹시 이것에 대한 해결책을 찾았나요 : 당신은 내장 된 주석을 계속 사용할 수있는 workoround으로

? 나는 대답이없는 같은 질문을 가지고있다. – user1751547

답변

0

귀하의 질문에 대한 직접적인 답변이 아닙니다.

@PreAuthorize("hasPermission('USER_MANAGEMENT_READ')") 
@PreAuthorize("hasPermission('USER_MANAGEMENT_CREATE')") 
@PreAuthorize("hasPermission('USER_MANAGEMENT_UPDATE')") 
@PreAuthorize("hasPermission('USER_MANAGEMENT_DELETE')") 

@PreAuthorize("hasPermission('ORDER_MANAGEMENT_READ')") 
@PreAuthorize("hasPermission('ORDER_MANAGEMENT_CREATE')") 
@PreAuthorize("hasPermission('ORDER_MANAGEMENT_UPDATE')") 
@PreAuthorize("hasPermission('ORDER_MANAGEMENT_DELETE')") 
관련 문제