我已经使用 Python 用 Okta 实现了 OAuth2 PKCE 流。它是一个桌面应用程序。我使用自定义 URL 方案作为重定向 URL 来接收授权代码。一切正常,浏览器在重定向 URL 中看到自定义 URL 方案时打开应用程序,但浏览器保持打开状态并显示正在进行 Okta 登录图像。可以做些什么来关闭浏览器或在浏览器中显示适当的消息?
问问题
170 次
1 回答
1
这是一个棘手的流程,很难做到完美,尽管登录后返回网页而不是直接返回应用程序会给您更大的控制权:
默认选项
使用重定向 URI,例如 x-mycompany-desktopapp:/callback,它会自动调用,但这会导致浏览器页面遗留/混乱,正如您所发现的那样。
插页式选项
将重定向 URI 更新为如下值,这是您需要托管的网页:
如果您在上面的页面上执行“查看源代码”,您将看到它在单击继续按钮时调用自定义 URI 方案。这至少可以让您控制登录后的行为和消息传递。
更多信息
我的博客文章有更多详细信息和您可以运行的 NodeJS 桌面代码示例。
于 2020-10-20T21:08:08.667 回答