2013-08-22 2 views
0

스프링 보안이 설정된 스프링 빈을 사용하여 페이지를 표시할지 결정하고 싶습니다. 아래는 내가하고 싶은 것이의 psudocode 예는 다음과 같습니다스프링 보안 액세스 구성을위한 bean 사용 속성

<security:http use-expressions="true"> 
    <security:intercept-url pattern="/devlogin.html" access="someBean.isNotProduction()" /> 
</security:http> 

나는 위에서 작동하지 않는다는 것을 알고 있어요, 그러나 희망은 내가 무엇을 찾고의 예로서 기능한다. Spring에게 "그러한 역할에 대한 액세스 허용"을 말하고 싶지 않고 "테스트 시스템에서 실행중인 경우 액세스 허용"이라고 말하고 싶습니다. 행운을 빌어 그런 솔루션이 존재합니까? 아니면 스프링 보안에서 기대할 수있는 것이 아닙니다. (어쩌면 나는이 같은 페이지를 갖는 것이 큰 비난을받을 수 있다는 말을 듣게 될 것입니다. 비평을 할 수 있습니다.)

+0

이 도움이 될 수 있습니다. http://stackoverflow.com/questions/14141834/custom-securityexpressionroot-method-with-spring-security-3-1-3 – coder

답변

0

특정 코드/페이지를 프로덕션 환경에서 개발 항상 내 책에는 아무런 의미가 없지만, 그것이 바로 내 책이다.

액세스 특성은 구문 분석되며 SpEL expressions을 포함 할 수 있습니다. 당신이 게시 된 샘플 코드는 거의 정확, 단순히 @를 앞에 것은이 스프링 시큐리티 버전 3.0 및 최대의에서 작동해야이

security:http use-expressions="true"> 
    <security:intercept-url pattern="/devlogin.html" access="@someBean.isNotProduction()" /> 
</security:http> 

일을해야한다.

가능 related answer 가능하지만 이는 방법 보안을위한 것입니다.