1、什么是IdentityServer4
IdentityServer4是依赖于asp.net core来实现openId和oauth2.0协议的身份认证框架。
2、OpenId和OAuth2.0概念
要想理解这个之前,先看asp.net core中
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
app.UseAuthentication(); //认证,判断是否合法用户
app.UseAuthorization(); //授权,判断是否有具体功能合法操作权限
...
}
UseAuthentication在UseAuthorization之前
2.1、OpenId
关于这个解释网上有很多,我就不赘述了。按照我的理解,openId关注的是表明用户是谁。
2.2、OAuth2.0
OAuth更关注Authorization(授权)。
比如:
比如可以通过A网站授权B网站,获取A网站身份资源,如昵称、头像等信息。
3、IdentityServer4使用场景
- 单点登录,比如vue、react实现oidc功能
- 接口保护
- 支持openId登录
- 统一登录
- 自定义登录,比如接入微信的openId登录
4、IdentityServer4主要接口
4.1、获取配置
/.well-known/openid-configuration
4.2、获取加密密钥
/.well-known/openid-configuration/jwks
4.3、获取token
/connect/token
4.4、获取身份信息
/connect/userinfo
网友评论