某些专家说,resource owner
是不正确的身份验证方法
Scoot Brady - IdentityServer Team for example
为什么Microsoft使用resource owner
作为asp.net core 3.0
中的默认流程?
使用resource owner
安全吗?
何时使用?
何时不使用?
否,新的Angular模板(个人身份验证模板)不使用资源所有者流,实际上,它正在使用Auth Code Flow + PKCE(代码交换的证明密钥)],即已经是本机应用程序和SPA的官方推荐。您可以使用Fiddler跟踪身份验证请求:
登录请求授权端点:
检查code_challenge
和code_challenge_method
,即PKCE的代码流。另请参阅令牌请求:
注意grant_type
。
在代码流中+ PKCE:
代替client_secret
(在常规代码流中),客户端应用创建一个随机值code_verifier
,对其进行散列并编码为code_challenge
。
授权服务器存储哈希值(Code Challenge
)以供以后验证,并且在用户进行身份验证之后,使用授权码重定向回应用程序。
该应用程序发出交换令牌代码的请求,只有它发送代码验证程序而不是固定机密。
否,新的Angular模板(个人身份验证模板)不使用资源所有者流,实际上,它正在使用Auth Code Flow + PKCE(代码交换的证明密钥)],即已经是本机应用程序和SPA的官方推荐。您可以使用Fiddler跟踪身份验证请求:
登录请求授权端点:
检查code_challenge
和code_challenge_method
,即PKCE的代码流。另请参阅令牌请求:
注意grant_type
。
在代码流中+ PKCE:
代替client_secret
(在常规代码流中),客户端应用创建一个随机值code_verifier
,对其进行散列并编码为code_challenge
。
授权服务器存储哈希值(Code Challenge
)以供以后验证,并且在用户进行身份验证之后,使用授权码重定向回应用程序。
该应用程序发出交换令牌代码的请求,只有它发送代码验证程序而不是固定机密。