专注JavaWeb开发 首页制式『默认式 OR 时间轴 网站地图|RSS订阅|设为首页|加入收藏
当前位置:首页 >Java >JavaEE中级 > 正文

tomcat 结合spring security 配置SSL认证

来源: ITEYE 作者: ITEYE 发布时间: 2016-07-12 浏览次数:

小结一下tomcat搭配spring security做ssl,其实单tomcat就可以搞你的应用 
ssl认证了,这里只不过顺道使用了spring secruity(如果你的应用是用了 
spring security的话)。 


1 首先是制作证书了,步骤比较传统,简单带过,不懂的请去google 

   keytool -genkey -alias MyKeyAlias -keyalg RSA -keystore /home/test.keystore 

然后回答一大堆问题,最后生成自签证书 PS(在win7中最后确认的时候要输入 Y 而非 yes)

2 tomcat的conf目录中的sevrer.xml中,配置如下: 

<Connector SSLEnabled='true' keystoreFile='/home/test.keystore' keystorePass='password' port='8443' scheme='https' secure='true' sslProtocol='TLS'/> 


3 如果不使用spring security的话,需要这样在web.xml中配置 

<security-constraint> 
    <web-resource-collection> 
        <web-resource-name>my-secure-app</web-resource-name> 
        <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
        <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
</security-constraint> 


  如果使用spring security,则这样: 

Java代码

  1. <filter>  

  2.     <filter-name>springSecurityFilterChain</filter-name>  

  3.     <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>  

  4.   </filter>  

  5.   <filter-mapping>  

  6.     <filter-name>springSecurityFilterChain</filter-name>  

  7.     <url-pattern>/*</url-pattern>  

  8.   </filter-mapping>  



  

Java代码

  1. <context-param>  

  2.           <param-name>contextConfigLocation</param-name>  

  3.           <param-value>/WEB-INF/spring/root-context.xml  

  4.            /WEB-INF/spring/appServlet/application-security.xml             

  5.           </param-value>  

  6.      </context-param>  



然后application-security.xml中: 

Java代码

  1. <?xml version='1.0' encoding='UTF-8'?>  

  2. <beans:beans xmlns='http://www.springframework.org/schema/security'  

  3.   xmlns:beans='http://www.springframework.org/schema/beans'  

  4.   xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'  

  5.   xsi:schemaLocation='http://www.springframework.org/schema/beans  

  6.   

  7. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  

  8.   

  9.   

  10. http://www.springframework.org/schema/security  

  11.   

  12.   

  13. http://www.springframework.org/schema/security/spring-security-3.1.xsd'>  

  14.   

  15.        <http auto-config='true' >  

  16.           <intercept-url pattern='/**' requires-channel='https' />      

  17.        </http>  

  18.   

  19.        <authentication-manager>  

  20.        </authentication-manager>  

  21.   

  22. </beans:beans>  



    这里用intercept-url,可以很方便配置,哪些连接要用https,哪些不用了


QQ群: 武汉地区(142173356)验证消息JavaWeb1024

网友共有【】评论,点击查看



x 微信关注我们 随时获取最新网站资讯