sso实现原理解析
.net5 如何自己写身份认证:
1、首先需要自己实现鉴权中间件,继承自 AuthenticationHandler
2、需要实现自己的Token 管理类,继承自 SecurityToken ,用于授权,在用户请求Token的时候,调用此类方法生成并返回
3、扩展AuthenticationBuilder类,添加注册自定义鉴权代码 builder.AddScheme
4、最后在Startup中添加 services.AddAuthentication().addXXXAuthentication()
jwtBearer实现原理:
1、颁发token:客户端发送请求获取Token,服务器验证用户身份成功后颁发token,返回给用户
jwt使用继承自 SecurityToken 的 JwtSecurityToken类颁发token
(token生成逻辑及加密方式占位)
2、身份鉴定:客户端拿到token后,调用业务接口时放入header中,后台获取并解析token
jtw使用基于AuthenticationHandler
(解析的详细逻辑及解密方式占位)
基于saml2.0协议实现的sso: