OAuth2 模式介绍

1. 客户端模式 AllowedGrantTypes = GrantTypes.ClientCredentials
应用场景:服务与服务之间的交互访问资源,token代表客户端的请求,而不是用户
使用过程:会向token endpoint发送token请求,并获得代表客户机的access token,客户端通常必须使用token endpoint的Client ID和secret进行身份验证

2. 密码模式(ClientAllowedGrantTypes = GrantTypes.ResourceOwnerPassword)
应用场景:用于当前的APP是专门为服务端设计
使用过程:用户名和密码到token endpoint,向资源服务器请求令牌。这是一种“非交互式”授权方法

3. 混合模式和客户端模式(ClientAllowedGrantTypes =GrantTypes.HybridAndClientCredentials)
应用场景:用于MVC框架,服务器端 Web 应用程序和原生桌面/移动应用程序
使用过程:Hybrid是由Implicit和Authorization code结合起来的一种授权方式。其中Implicit用于身份认证,ID token被传输到浏览器并在浏览器进行验证;而Authorization code使用反向通道检索token和刷新token

4. 简化模式(ClientAllowedGrantTypes =GrantTypes.Implicit)
应用场景:JavaScript应用程序
使用过程:用于服务端和JavaScript应用程序端进行身份认证,要么用于身份身份验证和access token的传输,token都是基于浏览器传输

猜你喜欢

转载自www.cnblogs.com/ingstyle/p/12515435.html