鉴权授权JWT
目录
前言
一、JWT是什么?
JWT由三部分组成 :Header,Payload,Signature
二、校验
校验说明
总结
前言
随着微服务的普及,传统的session/cookie越来越无法满足我们的需求,于是 我们发现了 JSON Web Tokens-JWT
一、JWT是什么?
官网:https://jwt.io/
JWT由三部分组成 :Header,Payload,Signature
- Header
只是一个标识,记录加密方式,格式说明
- Payload
有效载荷,主要记录需要传递的信息,但默认不是加密的
- Signature
签名,防止抵赖,篡改。由私钥加密后的字符串,里面包含:header,payload,和公钥
因为由私钥进行的加密,其他人无法修改里面的内容。其他人用公钥解密后,将里面的信息和外面信息进行对比,可以说明信息的有效性
二、校验
校验说明
- Authorization server 鉴权中心
根据账号密码颁发token,带着Token就可以访问API,API认可token,不需要去鉴权中心校验
- API
检查Token,如果Token有效说明已经登录
- Third-Party 第三方 API
第三方API也认可Token
而这个就是单点登录 SSO: Single Sign On 。防止抵赖-防止篡改-信息传递
总结
- 授权:这是使用JWT的最常见方案。一旦用户登录,每个后续请求将包括JWT,允许用户访问该令牌允许的路由,服务和资源。Single Sign On是一种现在广泛使用JWT的功能,因为它的开销很小,并且能够在不同的域中轻松使用。
- 信息交换:JSON Web令牌是在各方之间安全传输信息的好方法。因为JWT可以签名 - 例如,使用公钥/私钥对 - 您可以确定发件人是他们所说的人。此外,由于使用标头和有效负载计算签名,您还可以验证内容是否未被篡改。
- 若使用.net core推荐使用IdentityServer4,IdentityServer4是ASP.NET CORE量身定制的,并是实现了OpenId Connect和OAuth2.0协议的认证授权中间件。
还没有评论,来说两句吧...