既存のSpringMVCアプリケーションに実装されているSpringSecurityログインメカニズムをカスタマイズしようとしています。これは、SpringSecurityxmlファイルからのエントリです。
<security:form-login login-page="/login" default-target-url="/my-account" always-use-
default-target="false" authentication-failure-handler-ref="failureHandler"
authentication-success-handler-ref="successHandler" />
ユーザーがログインしたいときはいつでも、次のようなURLを持つログインページにリダイレクトされていたため、これは正常に機能していました。
www.myapp.com/login
新しい要件に従って、アプリケーション全体に存在する1つのグローバルログインパネルを突き刺す必要があり、ユーザーはそこからログインできます。同時に、安全な領域にアクセスしようとしているユーザーがログインページにリダイレクトされる場合があります。その場合のURLは次のようになります
www.myapp.com/login/
春のセキュリティに慣れていないので、このユースケースをどのように処理すればよいかわかりません。この点でポインタlogin-page="/login"
をlogin-page="/*"
任意のポインタに変更すると、本当に役立ちます。
編集
spring-securityxmlファイルに次のエントリが表示されました
<bean id="mainAuthEntryPoint" class="org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint"
scope="tenant">
<property name="loginFormUrl" value="/login" />
<property name="forceHttps" value="true" />
<property name="useForward" value="false" />
</bean>
今、私はどこを変更する必要があるのか、もっと混乱しました