JSFでSpring Security 3.1を使用していますが、デフォルトで起こっていると想定していた1つのことを除いて、すべてが機能しているようです。ログイン前とログイン後に異なるセッション ID を期待していましたが、私の場合は同じ ID です。ここに私の設定があります:
<global-method-security pre-post-annotations="enabled" />
<http auto-config="true" create-session="always" use-expressions="true" once-per-request="false" authentication-manager-ref="authenticationManager">
<intercept-url pattern="/blah/**" access="isAuthenticated()" />
<intercept-url pattern="/**" access="permitAll" />
<form-login login-page="/loginpage.xhtml"
default-target-url="/blah"
/>
<session-management session-fixation-protection="migrateSession"/>
</http>
<ldap-server url="url" manager-dn="cn=blah.." manager-password="password"/>
<authentication-manager id="authenticationManager" alias="authenticationManager">
<ldap-authentication-provider
user-search-filter="(uid={0})"
user-search-base="ou=Users"
group-search-filter="(uniqueMember={0})"
group-search-base="ou=groups"
group-role-attribute="cn"
role-prefix="none">
</ldap-authentication-provider>
<ldap-authentication-provider
user-search-filter="(cn={0})"
user-search-base="ou=Users"
group-search-filter="(uniqueMember={0})"
group-search-base="ou=groups"
group-role-attribute="cn"
role-prefix="none">
</ldap-authentication-provider>
</authentication-manager>
以前はこれを持っていませんでしたが、追加しても違いはありませんでした(newSessionも試しました):
<session-management session-fixation-protection="migrateSession"/>
私も持っていませんでした
create-session="always"
それも違いはありません。
新しいセッションが作成されない理由を理解するのを手伝ってもらえますか?