微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

授权服务器如何验证Oauth2.0中的client_secret

如何解决授权服务器如何验证Oauth2.0中的client_secret

在OAuth2.0上下文中,RO(Resource Owner)批准同意后(点击“允许”)——AS(授权服务器)将客户端重定向到客户端传递的redirect_uri并添加查询参数例如(代码和状态):

https://example-app.com/redirect?code=<the auth code>&state=<state>

然后客户端应该交换(将这些发送到 AS):authorization_code + client_id + client_secret 以获得访问令牌

Okta 定义了 client_secret as such

client_secret - 应用程序的客户端密码。这确保了 获取访问令牌的请求仅来自应用程序,并且 不是来自可能拦截了 授权码

但是授权服务器到底怎么知道如何验证客户端创建的这个client_secret???

解决方法

客户端未创建客户端密钥。当您在授权服务器上创建新客户端时,授权服务器会生成客户端机密(如果客户端类型是机密,则公共客户端没有机密)。您从授权服务器获取 client_id 和 client_secret 并在您的客户端中使用它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。