0

春のセキュリティを備えたWebプロジェクトがあります。ROLE_ADMIN、ROLE_USER、ROLE_TESTER、ROLE_ANONYMOUSなど、さまざまなインターセプトURLを持つさまざまな役割があります。

<intercept-url pattern="/secure/admin/**" access="ROLE_ADMIN" />
<intercept-url pattern="/secure/**" access="ROLE_USER,ROLE_ADMIN" />
<intercept-url pattern="/**" access="ROLE_ANONYMOUS,ROLE_USER,ROLE_ADMIN" />

ここで、誰かが/secure/admin/user/list.mvcにアクセスしようとした場合、通常のログインフォームではなく別のログインフォームにリダイレクトされるようにします。

<form-login  login-processing-url="/j_spring_security_check" login-page="/start.mvc"
       authentication-success-handler-ref="authenticationSuccessHandler"
       authentication-failure-handler-ref="authenticationFailureHandler" 
/>

そうする可能性はありますか?

4

1 に答える 1

0

Spring Security >= 3.1 を使用すると、次のhttpような複数の要素を持つことができます。

<!-- Configure realm for system administration users -->
<security:http pattern="/secure/admin/**" create-session="stateless">
    <security:intercept-url pattern="/**" access='ROLE_ADMIN' requires-channel="https" />
    ...form login... etc
</security:http>


<!-- Configure realm for standard users -->
<security:http auto-config="true" access-denied-page="/error/noaccess" use-expressions="true" create-session="ifRequired">
    <security:form-login login-page="/login"
            ...
            ...
</security:http>
于 2013-02-14T12:25:50.180 に答える