現在、Spring Filter と Servlet を介して Spring Security Authentication を使用しています。
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/admin</url-pattern>
</servlet-mapping>
<!-- Enables Spring Security -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>
org.springframework.web.filter.DelegatingFilterProxy
</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- End Spring Security -->
spring-security.xml 内
<authentication-manager alias="authenticationManager">
<authentication-provider ref="myAppAuthenticationProvider"/>
</authentication-manager>
<beans:bean id="myAppAuthenticationProvider"
class="com.filter.MyAppAuthenticationProvider">
<beans:property name="repository" value="#{deployment['globalregistry.repository']}"/>
</beans:bean>
たとえば、次の URL にアクセスすると、次のようになります。http://localhost:8080/context/admin?action=authenticate
j_username: ユーザー
j_password: パスワード
spring-security で認証されたユーザーとパスワードを入力する画面が表示されます。
HTTPPost API を介して Java プログラムから上記の URL にアクセスしようとすると、リダイレクト エラー レスポンス 302 が返されます。ログイン画面をバイパスして検証し、Web ページにリダイレクトせずに直接認証するにはどうすればよいですか。また、Java プログラムを使用して j_username と j_password を提供します。
URL にアクセスすると、ページが次のようにリダイレクトされることに注意してくださいhttp://localhost:8080/context/spring_security_login
。
あなたの助けは本当に感謝しています。