SpringSecurity
SpringSecurity内构于Spring Boot当中,是一套Web安全标准,其注重于为Java应用提供认证和授权功能。
JWT
means Json Web Token,是基于RFC 7519标准定义的一种可以安全传输的Json对象。
JWT的组成
主要包含header--payload--signature三部分。
Header用于存放签名是生成算法:
{"alg": "HS512"}
Payload 中用于存放用户名、token的生成时间和过期时间
{"sub":"admin","created":1489079981393,"exp":1489684781}
Signature 是以header和payload生成的签名,一旦header和payload被篡改,验证将失败。
//secret为加密算法的密钥
String signature = HMACSHA512(base64UrlEncode(header) + "." +base64UrlEncode(payload),secret)