【发布时间】:2017-03-10 22:17:02
【问题描述】:
我已经搜索了 api 文档以及 StackOverflow,但我还没有找到我的问题的答案。我可能误解了系统的工作原理。
这是我们的客户想要的场景:
- 用户登录我们的网站
- 此时我们在系统中对用户进行身份验证,并通过 api 进行一次登录。
- 用户登录到我们的仪表板后,他们可以单击一个链接并被重定向到他们的第三方分析应用程序,因为我已经使用 One Login 创建了一个新会话。
这是我已完成的步骤。
- 我已通过 --> https://developers.onelogin.com/api-docs/1/oauth20-tokens/generate-tokens 成功接收到访问令牌
- 我已经成功使用访问令牌通过 --> https://developers.onelogin.com/api-docs/1/users/create-session-login-token 生成会话登录令牌
- 我已成功使用会话登录令牌创建新会话。
在发出创建新会话请求后,我从 One Login 接收到正确的 cookie,并且 - 那时 - 如果我输入 URL onelogin.com/login,我会直接进入仪表板。
此时我知道我已通过 One Login 正确地进行了身份验证。但是,我不确定如何通过我们网站上的链接直接访问第三方应用程序。
谢谢。
【问题讨论】:
-
您有机会告诉我您是如何完成第 3 步的吗?
-
当然,@Stormcloud。仅供参考——我已经在我的系统中缓存了会话令牌,以便我可以将其返回到模板。无论如何,在Create Session VIA API Token docs 中有样品申请表。我实际上必须提交该表格才能让 OL 向我发送正确的 cookie。我尝试通过 AJAX 提交它,但它总是返回某种类型的 CORS 错误。试试看。
-
感谢您的更新。我一直在尝试 AJAX 路由(它用于无头系统)并且一直失败。是时候尝试新事物了!
-
如果你想做 CORS,有一个特定的与 CORS 相关的标头需要传递给 create token 调用。基本上 OL 会阻止对创建会话端点的 CORS 调用,除非您明确告诉它允许您的域 developers.onelogin.com/api-docs/1/users/… - Custom-Allowed-Origin-Header-1
标签: onelogin