TokenBased协议
TokenBased介绍
TokenBased(基于令牌)的认证,是一种简单的令牌的认证,即认证中心和应用共享凭证或者数字证书,认证中心使用HTTP POST的方式提交令牌到应用系统,应用系统并随后进行身份验证;
交互概要
该技术的实现步骤是:
- 一个未经身份验证的用户通过浏览器访问应用系统。
- 应用系统跳转到认证中心,请求认证。
- 用户填写自己的用户名和密码,然后按下提交按钮。
- 认证中心完成用户认证,生成令牌并提交到应用系统认证地址。
- 应用系统使用共享凭证或者数字证书验证令牌,从令牌中获取用户认证信息。
- 应用系统完成系统登录。
令牌加密或者签名方式
- 加密方式:DES、DESede、AES、Blowfish,默认采用DES。
- 签名方式:服务端使用RSA数字证书私钥加密,客户端使用RSA数字证书公钥验证。
令牌格式
{
	"randomId":"652ec5f5-fff2-4b8e-b88d-e7ff3a217bca",
	"uid":"29e82574-b37a-46ab-bac1-5fecbd24b24b",
	"username":"zhangs1020",
	"email":"zhangs1020@connsec.com",
	"windowsAccount":"ZHANGS1020",
	"employeeNumber":"ZHANGS1020",
	"departmentId":"1000212",
	"department":"IT信息中心",
	"displayName":"张三",
	"at":"2015-03-11T15:17:03.855Z",
	"expires":"2015-03-11T15:18:03.855Z"
}
randomId是即时生成的随机数
at是当前认证的时间
expires是过期的间隔
其他的字段可在管理控制台配置
简单令牌
认证用户名@@认证时间(UTC时间),例如:
testUser@2010-01-01T01:01:01.001Z