传统用户识别
基于cookie-session
是把用户信息保存在服务器,每次请求带上标识匹配资源
没有分布式架构,无法支持横向扩展。
Token校验
鉴权授权:
鉴权中心—根据账号密码颁发token
带着Token就可以访问API,API认可token,不需要去鉴权中心校验
第三方API也认可Token
SSO: Single Sign On
防止抵赖-防止篡改-信息传递
JWT-Json Web Token
官网:https://jwt.io/
1 授权:这是使用JWT的最常见方案。一旦用户登录,每个后续请求将包括JWT,允许用户访问该令牌允许的路由,服务和资源。Single Sign On是一种现在广泛使用JWT的功能,因为它的开销很小,并且能够在不同的域中轻松使用。
2 信息交换:JSON Web令牌是在各方之间安全传输信息的好方法。因为JWT可以签名 - 例如,使用公钥/私钥对 - 您可以确定发件人是他们所说的人。此外,由于使用标头和有效负载计算签名,您还可以验证内容是否未被篡改。
JWT令牌结构
Header 头
{ "alg": "HS256", "typ": "JWT"}
Payload 有效载荷
JWT 默认是不加密的,任何人都可以读到
Signature 签名--防止抵赖-防止篡改
=HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)
xxxxx.yyyyy.zzzzz
私钥加密,只有对应的公钥才能解密
令牌示例 https://jwt.io/ debuger
后续分享下 IdentityServer4 ASP.NET CORE量身定制, 实现了OpenId Connect和OAuth2.0协议认证授权中间件
版权声明:本文由Contione原创出品,转载请注明出处!
暂无评论,大侠不妨来一发?