atitit.身份认证解决方案attilax总结
atitit.身份认证解决方案attilax总结
This is a premature infants from China, 100 days, and had liver failure, cholestasis and other diseases, at present in Shanghai treatment, but need to large medical expenses. He needs our help, and look forward to more people to help him.
这是一个来自中国的软件开发界,得了面临开发效率等危机,目前亟待治疗,但是需要大力帮忙。兄弟们世界需要我们的帮助,还有转发一下,让更多的人帮到。
1.1. 身份认证
有一些网址或者服务需要用户的身份信息,因此需要随时知道这些消息,但是肯定不能每次都让用户输入用户密码,因此关于认证就有下面几种方式:

1.2. basic认证
basic认证是另一个常用的认证方式,与表单认证不同的是,basic认证常用于无状态客户端的验证,比如HttpInvoker或者Web Service的认证,这种场景的特点是客户端每次访问应用时,都在请求头部携带认证信息,一般就是用户名和密码,因为basic认证会传递明文,所以最好使用https传输数据。
asic认证不使用session
作者:: ★(attilax)>>> 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
1.2.1. 编程实现basic客户端
下面我们来示范一下如何使用basic认证。假设我们在basic.jsp中需要远程调用http://localhost:8080/ch104/admin.jsp的内容。这时为了能够通过Spring Security的权限检测,我们需要在请求的头部加上basic所需的认证信息。
String username = "admin";
String password = "admin";
byte[] token = (username + ":" + password).getBytes("utf-8");
String authorization = "Basic " + new String(Base64.encodeBase64(token), "utf-8");
URL url = new URL("http://localhost:8080/ch104/admin.jsp");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("Authorization", authorization);
|
|
我们先将用户名和密码拼接成一个字符串,两者之间使用“:”分隔。 然后使用commons-codec的Base64将这个字符串加密。在进行basic认证的时候Spring Security会使用commons-codec把这段字符串反转成用户名和密码,再进行认证操作。 下一步为加密后得到的字符串添加一个前缀"Basic ",这样Spring Security就可以通过这个判断客户端是否使用了basic认证。 |
|
|
将上面生成的字符串设置到请求头部,名称为“Authorization”。Spring Security会在认证时,获取头部信息进行判断。 |
有关basic代码可以在/ch104/basic.jsp找到,可以运行ch104,然后访问http://localhost:8080/ch104/basic.jsp。它会使用上述的代码,通过Spring Security的认证,成功访问到admin.jsp的信息
1.3. digest认证机制
是基于MD5算法的LINUX安全认证机制。会比较用户端传送的杂凑值与使用者密码的杂凑值,以认证用户端。但由于此机制必须读取使用者密码,因此所有想透过 DIGEST-MD5 进行认证的使用者,在目录中都必须要有 {CLEAR} 密码。将 {CLEAR} 密码储存到目录时,透过 ACI 适当地限制密码值的存取权。此外,还必须如为属性值加密中所述,在尾码中配置属性加密。
http协议之digest(摘要)认证 - jszj的专栏 - 博客频道 - CSDN.NET.html
1.4. SSL认证
SSL认证是指客户端到服务器端的认证。主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。
1.5. FormBase认证,也就是表单认证
在这里主要说一下FormBase认证,也就是表单认证。
1.5.0.1. 使用Cookie来管理Session
参考
第 14 章 basic认证.html
HTTP使用BASIC认证的原理及实现方法-atlantisholic-ITPUB博客.html
atitit.身份认证解决方案attilax总结的更多相关文章
- C#进阶系列——WebApi 身份认证解决方案:Basic基础认证
前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...
- #进阶系列——WebApi 身份认证解决方案:Basic基础认证
阅读目录 一.为什么需要身份认证 二.Basic基础认证的原理解析 1.常见的认证方式 2.Basic基础认证原理 三.Basic基础认证的代码示例 1.登录过程 2./Home/Index主界面 3 ...
- WebApi身份认证解决方案:Basic基础认证
前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...
- C#进阶系列——WebApi身份认证解决方案:Basic基础认证 (转)
http://www.cnblogs.com/landeanfen/p/5287064.html 前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人 ...
- (转)C# WebApi 身份认证解决方案:Basic基础认证
原文地址:http://www.cnblogs.com/landeanfen/p/5287064.html 阅读目录 一.为什么需要身份认证 二.Basic基础认证的原理解析 1.常见的认证方式 2. ...
- WebAPI 身份认证解决方案——Phenix.NET企业应用软件快速开发平台.使用指南.21.WebAPI服务(一)
21 WebAPI服务 ASP.NET Web API,是微软在.NET Framework 4.5上推出的轻量级网络服务框架,虽然作为ASP.NET MVC 4的一部分,但却是一套全新的.独立的 ...
- WebApi 身份认证解决方案:Basic基础认证
前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...
- 操作系统(AIX)双因素身份认证解决方案-中科恒伦CKEY DAS
一.场景分析 操作系统是管理计算机硬件与软件资源的计算机程序,用于工作中的进程管理.存储管理.设备管理.文件管理.作业管理等,十分重要,安全等级极高! 二.问题分析 1.密码设置简单,非常容易被撞 ...
- Atitit HTTP 认证机制基本验证 (Basic Authentication) 和摘要验证 (Digest Authentication)attilax总结
Atitit HTTP认证机制基本验证 (Basic Authentication) 和摘要验证 (Digest Authentication)attilax总结 1.1. 最广泛使用的是基本验证 ( ...
随机推荐
- HTML5移动Web开发(一)——HTML5和移动网站基本概念以及一些模拟器
当前,手机设备发展迅猛.屏幕尺寸各不相同.存储和性能仍有局限性,如何结合HTML5的功能,在多平台上创建高性能.响应式的移动网站,是Web开发者所要面对的首要挑战.HTML5以及移动网站都是很有前景的 ...
- (高德地图)marker定位 bug 解决总结
项目背景: 一个项目bug,项目中用到高德地图,默认打开页面会生成一个marker(下图红色icon),然后用户拖动marker到想要的位置,并且保存. 用户反映定位不准确,在当前页面编辑的位置,到后 ...
- 使用Weka进行数据挖掘
1.简介 数据挖掘.机器学习这些字眼,在一些人看来,是门槛很高的东西.诚然,如果做算法实现甚至算法优化,确实需要很多背景知识.但事实是,绝大多数数据挖掘工程师,不需要去做算法层面的东西.他们的精力,集 ...
- oracle创建表相关
--创建表 create table person( id number primary key, name ), birth date ); --创建序列 create sequence perso ...
- 基于HTML5的Drag and Drop生成图片Base64信息
HTML5的Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过Drag ...
- OpenJudge 2985数字组合 解析报告/DP
2985:数字组合 总时间限制: 1000ms 内存限制: 65536kB 描述 有n个正整数,找出其中和为t(t也是正整数)的可能的组合方式.如:n=5,5个数分别为1,2,3,4,5,t=5: ...
- 用2263份证件照图片样本测试how-old.net的人脸识别
上一年也就是这个时候微软根据自己的人脸识别API推出了一个识别照片中人脸年龄和性别的网站--http://how-old.net,小伙伴们各种玩耍,一年后的今天突发"奇想"地想测试 ...
- c#中的正则表达式
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Js模型和封装
一点拙劣的小分享,欢迎批评和补充 我们经常在Js中为我们的各类组件,构造Json格式的假数据.我们看如下代码: var jsonResult = [ { ' }, { ' } //我们把jsonRes ...
- Lesson: The "Hello World!" Application
Lesson: The "Hello World!" Application The sections listed below provide detailed instruct ...

