五、协议
1、HTTPS
认证的问题:HTTP中,敏感信息以明文传递,可以通过抓包抓取
安全版HTTP(HTTP over Secure Socket Layer),整个通信过程加密,使用对称加密和数字证书的技术
SLL/TLS机制:复杂的握手协议
SLL/TLS机制下的加密通信过程
JSSE(Java Security Socket Extension):SLL/TLS机制的一种实现
功能:数据加密、服务器、客户端验证;消息完整性
生成私钥和证书:OpenSSL,KeyStore
使用客户端/服务端API:SSLContext、KeyManagerFactory、TrustManagerFactory
HTTPS部署:Tomcat
2、OAuth
Open Authorization
类似QQ号的多个不同网站登录?
背景:在分布式场景下开放和消费第三方接口(SAO架构,ESB架构),平台商保证用户私有数据访问合法访问
授权方式:不需要账户信息访问第三方应用(ISV),平台厂商通过OAuth协议对第三方应用授权
体系复杂:综合一个用摘要验证、签名认证、HTTPS等;开发者入住;权限粒度控制Token生成和校验;分布式Session;公私钥管理
实现框架: