学习笔记——JAAS与SSL

原创 2012年03月23日 09:23:00

Security Socket Layer(SSL)技术是一种在传输层实现的安全技术,其使用public key encryption标准加密方式。

SSL作用:保证在非可靠网络上所连接的主机之间的通信安全。

 

RSA

RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。

RSA算法包含两个密钥:客户端的公共密钥、服务器的私有密钥。只有两个密钥相匹配的时,才能进行安全通信。

 

数字证书:作用是让用户确认服务器的公共密钥是真的。

数字证书一般包含如下信息:

1:密钥持有者的标识信息;

2:密钥持有者的公共密钥;

3:数字证书中的数字签名信息,其可从certificate authority(证书授权中心)获得。

 

使用SSL的方法:

1:生成一个密钥库

JDK为此提供了keytool工具生成密钥库。

简单的使用方法:

keytool -genkey -alias name-ssl keyalg RSA -keystore name.keystore -validity 365

2:把生成的密钥库复制到应用服务器中(如:%JBOSS_HOME%/server/default/conf),

3:在服务器中启动SSL连接(如:JBOSS中修改%JBOSS_HOME%/server/default/deploy/jbossweb.sar/server.xml文件)

4:在web.xml中指定使用SSL连接进行登录:

e.g.

 

<?xml version="1.0" encoding="GBK"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
	
		<!-- 声明安全性角色 -->
		<security-role>
			<role-name>rolename</role-name>
		</security-role>
		
		<security-constraint>
			<!-- 指定收保护的Web资源集 -->
			<web-resource-collection>
				<web-resource-name>resource</web-resource-name>	
				<url-pattern>/*</url-pattern>
				<url-pattern>/context/*</url-pattern>
				
				<!-- http-method子元素用于指定只保护指定请求方式的资源 -->
				<!--
				<http-method>GET || POST</http-method>
				-->
			</web-resource-collection>
		
			<auth-constraint>
				<!-- 访问受保护资源所需的角色 -->
				<role-name>rolename</role-name>
			</auth-constraint>
			
			<!-- 指定使用SSL安全连接 -->
			<user-data-constraint>
				<transport-guarantee>CONFIDENTIAL | INTEGRAL | NONE</transport-guarantee>
			</user-data-constraint>
		</security-constraint>
		
		<login-config>
			
			<auth-method>FORM</auth-method>
			<realm-name>myRealm</realm-name>
			<form-login-config>
				<form-login-page>/login.jsp</form-login-page>
				<form-error-page>/login_fail.jsp</form-error-page>
			</form-login-config>
			
		</login-config>
		
</web-app>


 

王小草【深度学习】笔记第一弹--神经网络

【深度学习】笔记第一弹–神经网络王小草深度学习笔记课程来自:寒小阳 笔记整理者:王小草 时间:2016/08/15 欢迎交流:qq:1057042131...
  • sinat_33761963
  • sinat_33761963
  • 2016年08月16日 12:33
  • 2460

斯坦福机器学习公开课学习笔记(1)—机器学习的动机与应用

(转载请注明出处:http://blog.csdn.net/buptgshengod)1.北京
  • gshengod
  • gshengod
  • 2014年06月05日 08:38
  • 2697

吴恩达Coursera深度学习课程 DeepLearning.ai 提炼笔记(1-2)-- 神经网络基础

神经网络和深度学习 --------- 神经网络基础
  • Koala_Tree
  • Koala_Tree
  • 2017年09月20日 21:14
  • 3921

学习笔记——JAAS

Java Authentication Authorization Service(JAAS, Java认证和授权服务) JAAS作用:解决Java EE应用的安全问题。 JAAS支持两种方式的安...
  • Crystalbruce
  • Crystalbruce
  • 2012年03月22日 23:58
  • 571

Pascal转C++学习笔记——1.基本知识

  • 2013年09月16日 14:41
  • 477KB
  • 下载

批处理脚本学习笔记——程序员版.pdf

  • 2014年04月17日 21:14
  • 1.31MB
  • 下载

Cadence——16.2学习笔记

  • 2014年05月05日 20:57
  • 386KB
  • 下载

jBPM-jPDL学习笔记——流程设计与控制

  • 2012年04月22日 17:00
  • 276KB
  • 下载

AngularJS学习笔记——通过Ajax获取JSON数据T

  • 2017年07月16日 14:06
  • 440KB
  • 下载

TQ210学习笔记——修改启动logo

  • 2015年12月29日 10:10
  • 585KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:学习笔记——JAAS与SSL
举报原因:
原因补充:

(最多只允许输入30个字)