alv*_*991 3 java spring tomcat spring-mvc spring-security
我下载了JavaMelody(服务器统计信息)并将其应用到我的Spring项目中.这一切都可以正常工作 - 插入后http://myAplication/monitoring我可以看到JavaMelody页面.我决定,这应该受密码保护.所以我按照文档并添加了tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="monitoring" />
<user username="monitoring" password="monitoring" roles="monitoring" />
</tomcat-users>
Run Code Online (Sandbox Code Playgroud)
然后我插入了一些线条 web.xml
<filter>
<filter-name>monitoring</filter-name>
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>monitoring</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.bull.javamelody.SessionListener</listener-class>
</listener>
<!-- JAVA MELODY MONITOR ACCESS -->
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Monitoring</realm-name>
</login-config>
<security-role>
<role-name>monitoring</role-name>
</security-role>
<security-constraint>
<web-resource-collection>
<web-resource-name>Monitoring</web-resource-name>
<url-pattern>/monitoring</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>monitoring</role-name>
</auth-constraint>
</security-constraint>
Run Code Online (Sandbox Code Playgroud)
现在,当我输入时,http://myAplication/monitoring我会获得身份验证弹出窗口 - 这很酷.但是当我输入凭据并单击确定时,会显示另一个身份验证弹出窗口.区别在于,这个是来自Spring Security(我的app中没有看到弹出窗口).

现在,我输入Spring Security的凭证(其他凭据)和JavaMelody页面开始显示,但是另一个监视弹出窗口显示,然后弹出安全性,再次,再次...... - 直到所有页面元素都被加载.
我的Spring Security conf
<http auto-config='true' use-expressions="true">
<intercept-url pattern="/**" access="permitAll" />
<form-login login-page='/' default-target-url='/login_ok'
always-use-default-target='true' authentication-failure-url="/login_failed" />
<logout logout-success-url="/" />
</http>
Run Code Online (Sandbox Code Playgroud)
有没有办法让Spring Security和Tomcat身份验证协同工作?
你必须决定你想要什么:Container Manager Security(web.xml)或Spring Security(beans.xml).你不应该同时使用两者.这就是你看到两个基本领域名称的原因.
| 归档时间: |
|
| 查看次数: |
7324 次 |
| 最近记录: |