首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >谁启动授权代码流?

谁启动授权代码流?
EN

Security用户
提问于 2020-10-22 13:22:05
回答 1查看 149关注 0票数 0

我想更详细地了解OAuth 2.0,特别是授权代码流。这可能是nit-挑选,但根据RFC6749,客户端启动流程。

(A)客户端通过将资源所有者的用户代理引导到授权端点来启动流程。

但是,当请求授权时,不是资源所有者通过单击客户端应用程序站点上的Connect with service xyzImport photos from abc按钮来启动流吗?

我的意思是,正是这个按钮单击发出了来自资源所有者计算机/IP的HTTP,对吗?

代码语言:javascript
运行
复制
GET https://www.auth-server.com/oauth2/authorize?

client_id=18f4ad63-01fa-41ae-b632-092a8f5d340b&
redirect_uri=https://www.awesome-printservice.com/callback&
scope=openid photos.read
response_type=code&
response_mode=query&
nonce=ugasq9v1bq&
EN

回答 1

Security用户

发布于 2020-10-23 22:42:00

考虑一下通过Google帐户登录到您的站点(https://example.net)的例子。

在这种情况下,您的此外,你的数字“用户代理”:火狐或Chrome是“资源所有者”;ExampleNET是“客户端”(也是“依赖方”)。

客户端ExampleNET通过指示资源所有者发出您所描述的HTTP请求来启动流。

听起来怪怪的?仔细看一下这一请求。

看到nonce字段了吗?必须由客户准备。更重要的是(尽管您的示例中缺少了),同样的,state字段:也是由客户端准备通过回复启动流,将资源所有者引导到那个大URL。

现在,他们可能已经或者没有通过预先初始化nonce (如果他们正在使用,他们应该记录它以便以后再检查它),或者在资源所有者表示打算使用该流时(例如,通过加载登录页面)快速生成该流,并且他们可能已经这样做,以响应您的活动,这显然表明了启动该流的意图(例如,通过Google链接点击.)

但是他们仍然是启动流程的人,他们给了你(可能是短暂的)必要的东西--从资源所有者的角度来看--登录流的“第一步”。这就是为什么客户端被描述为在这里启动它的原因。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/239909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档