我已经使用 Python 使用 Okta 实现了 OAuth2 PKCE 流程。它是一个桌面应用程序。我使用自定义 URL 方案作为重定向 URL 来接收授权代码。一切正常,浏览器在重定向 URL 中看到自定义 URL 方案时打开应用程序,但浏览器保持打开状态并显示正在进行的 Okta 登录图像。如何关闭浏览器或在浏览器中显示适当的消息?
这是一个棘手的流程,很难做到完美,但登录后返回网页而不是直接返回应用程序会给你更好的控制:
默认选项
使用重定向 URI,例如 x-mycompany-desktopapp:/callback,它会自动调用,但这会导致浏览器页面剩余/混乱,正如您所发现的。
插页式选项
将重定向 URI 更新为这样的值,这是您需要托管的网页:
如果您在上述页面上执行“查看源代码”,您将看到它在单击“继续”按钮时调用自定义 URI 方案。这至少可以让您控制登录后的行为和消息传递。
更多信息
我的博客文章有更多详细信息和您可以运行的 NodeJS 桌面代码示例。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句