TokenBased(基于令牌)的认证,是一种简单的令牌的认证,即认证中心和应用共享凭证或者数字证书,认证中心使用HTTP POST的方式提交令牌到应用系统,应用系统并随后进行身份验证;
该技术的实现步骤是:
{
"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
加密步骤:
简单token加密结果:
Y00jv2TCCuk365uB2-nDCUdboygeYFoUfETC7BNXr73dQWwFNRrfYltczDQ5iWg8NTO-GsP--VlR6L-JyNhZSg
token的签名格式:BASE64URL(UTF8(data)).BASE64URL(UTF8(signature)),中间用"."分开,前半部分是数据,后半部分是签名书数据,例如:
eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ.dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk
LTPA是Lightweight ThirdParty Authentication简称,轻量级第三方认证,支持在一个因特网域中的一组 Web 服务器之间使用单一登录的认证框架,即通过cookie来传输Token。
当服务器配置LTPA认证方式,用户通过浏览器成功登录,服务器会自动发送一个session cookie给浏览器,此cookie中包含一个加密和签名Security Token信息,应用服务器根据Security Token解析得到登录用户信息自动完成应用系统认证。
该技术的实现步骤是: