0

ログイン成功後。/admin/notifications にリダイレクトされない理由は何でしょうか。ログイン時に「contextpath/」に入力します。何が欠けていますか?

<!-- Spring security -->
<security:global-method-security secured-annotations="enabled"/>

<security:http pattern="/admin/login" security="none" />
<security:http pattern="/resources/public/**" security="none" />
<security:http auto-config="true" use-expressions="true" pattern="/admin/**" authentication-manager-ref="authenticationManager">
    <security:intercept-url pattern="/admin/**" access="hasRole('ROLE_ADMIN')"/>
    <security:form-login login-page="/admin/login" default-target-url="/admin/notifications" always-use-default-target="true"  authentication-failure-url="/admin/login?error=1" login-processing-url="/admin/j_spring_security_check"/>
    <security:logout invalidate-session="true" delete-cookies="" logout-url="/admin/logout" logout-success-url="/admin/login"/>
</security:http>
<security:http auto-config="true" use-expressions="true" ></security:http>

編集:認証マネージャー。これは、メイン アプリケーション コンテキストから含まれる別の xml ファイルにあります。

<security:authentication-manager alias="authenticationManager">
    <security:authentication-provider>
        <security:user-service>
                <security:user name="admin" password="admin" authorities="ROLE_ADMIN" />
        </security:user-service>
    </security:authentication-provider>
</security:authentication-manager>

これは私のコントローラーです

@Controller
@RequestMapping("/admin/notifications")
public class NotificationControllerAdmin {

    @ResponseStatus(HttpStatus.OK)
    @RequestMapping(method = RequestMethod.GET)
    public String getNotifications(Model model){
        return "admin/notifications/notifications";
    }
}
4

1 に答える 1

0

2 番目の spring-security 構成ブロック<security:http auto-config="true" use-expressions="true" >は、おそらく最初の構成ブロックで指定されたすべての設定をオーバーライドします。

于 2013-11-13T11:35:12.070 に答える