sso实现原理解析
.net5 如何自己写身份认证:
1、首先需要自己实现鉴权中间件,继承自 AuthenticationHandler<XXXOptions> 泛型基类,XXXOptions为参数类,在拿到header中的token后,解析该token,正确的获取到用户数据
2、需要实现自己的Token 管理类,继承自 SecurityToken ,用于授权,在用户请求Token的时候,调用此类方法生成并返回
3、扩展AuthenticationBuilder类,添加注册自定义鉴权代码 builder.AddScheme<XXXOptions, XXXHandler>(authenticationScheme, displayName, configureOptions);
4、最后在Startup中添加 services.AddAuthentication().addXXXAuthentication()
jwtBearer实现原理:
1、颁发token:客户端发送请求获取Token,服务器验证用户身份成功后颁发token,返回给用户
jwt使用继承自 SecurityToken 的 JwtSecurityToken类颁发token
(token生成逻辑及加密方式占位)
2、身份鉴定:客户端拿到token后,调用业务接口时放入header中,后台获取并解析token
jtw使用基于AuthenticationHandler<JwtBearerOptions>的实现类JwtBearerHandler,服务端接收到请求时,先由HandleAuthenticateAsync方法进行处理,解析出用户信息(claims)
(解析的详细逻辑及解密方式占位)
基于saml2.0协议实现的sso:
版权声明
作者:も不秃不秃
地址:https://www.cnblogs.com/Newd/p/15592248.html
© Newd 尊重知识产权,引用请注出处
广告位
(虚位以待,如有需要请私信)