文档章节

tomcat 结合spring security 配置SSL认证

凯文加内特
 凯文加内特
发布于 2016/02/02 11:37
字数 303
阅读 37
收藏 0

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

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

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

然后回答一大堆问题,最后生成自签证书 

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,则这样: 

<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>
<context-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>/WEB-INF/spring/root-context.xml
           /WEB-INF/spring/appServlet/application-security.xml           
          </param-value>
     </context-param>

然后application-security.xml中:

<?xml version='1.0' encoding='UTF-8'?>
<beans:beans xmlns='http://www.springframework.org/schema/security'
  xmlns:beans='http://www.springframework.org/schema/beans'
  xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
  xsi:schemaLocation='http://www.springframework.org/schema/beans

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


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


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

       <http auto-config='true' >
          <intercept-url pattern='/**' requires-channel='https' />    
       </http>

       <authentication-manager>
       </authentication-manager>

</beans:beans>

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

本文转载自:http://jackyrong.iteye.com/blog/1748955

共有 人打赏支持
凯文加内特
粉丝 336
博文 672
码字总数 94457
作品 0
青岛
后端工程师
私信 提问
tomcat 结合spring security 配置SSL认证

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

IceRainYWC
2012/12/18
0
1
《Spring Security3》第四章第四部分翻译(Remember me后台存储和SSL)

将Remember me功能迁移至数据库 现在你可能会意识到我们remember me功能的实现,能够在应用重启前很好的使用,但在应用重启时用户的session会被丢失。这对用户来说会不太便利,他们不应该关心...

heroShane
2014/02/08
0
0
CAS Spring Security 3 整合配置

一般来说, Web 应用的安全性包括用户认证( Authentication )和用户授权( Authorization )两个部分。用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。用...

-wangming-
2015/05/22
0
0
CAS 与 Spring Security 3整合配置详解

一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。用户授...

引鸩怼孑
2015/06/28
0
0
Spring cloud 微服务安全解决方案

Spring boot 微服务安全解决方案 作者:netkiller 本文节选自《Netkiller Architect 手札》 Restful 的通信安全有很多中解决方案,例如 1. HTTP Basic Auth 认证 2. Cooke / Session 认证 3. T...

netkiller-
2017/10/21
0
3

没有更多内容

加载失败,请刷新页面

加载更多

中高级面试知识点:缓存

前言 几乎所有的项目都做了缓存,但是缓存做的怎么样,其实只有我们自己知道。缓存做的好,没有网络也能流畅的使用;再多的数据请求都不会出现卡顿延迟等待很久的情况。 程序中除了图片缓存(...

Mr_zebra
32分钟前
2
0
Poco官方PPT_190-Applications双语对照翻译

因工作需要用到这一块的功能,所以直接翻译了一下 此PPT来源于官方文件,地址https://pocoproject.org/documentation.html

CHONGCHEN
35分钟前
5
1
使用idea开发servlet,引用maven后触发的class not found的问题的解决方案

需要将maven下载的依赖加入到lib目录,具体操作方法如下:打开Projrct Settings->Artifacts->右边的Output Layout,双击maven的依赖,就可以加载上去...

shatian
37分钟前
2
0
SpringMVC 拦截器

拦截器 是指通过统一拦截从浏览器发往服务器的请求来完成功能的增强 SpringMVC拦截器实现过程 1.编写拦截器,实现 org.springframework.web.servlet.HandlerInterceptor 接口 2.将拦截器注册...

晨猫
39分钟前
2
0
RabbitMQ+PHP演示实例

新建rabbit_consumer.php作为消费者 <?php //配置信息 $conn_args = array( 'host' => '127.0.0.1', 'port' => '5672', 'login' => 'admin', 'password' => ......

hansonwong
40分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部