单点登录(SSO) - 工作流程

时间:2014-09-11 14:48:04

标签: php angularjs oauth single-sign-on

我希望在所有未来的php / angular应用程序中实现SSO。我看到有些服务(Auth0,oauth.io等)是SSO应用程序的中间人,有OAuth 1.0 / 2.0等协议,但是关于创建自定义SSO解决方案(使用上述OAuth协议,我假设,我对这个过程的完整流程有点模糊。

我得到了什么:

  • App获取访问令牌
  • (可选)App验证访问令牌
  • App(带有访问令牌)可以访问特定的API并返回结果。对于 例如,Facebook个人资料信息。

我没有得到:

一旦有了这些信息该怎么处理。每次登录时,我是否会保留访问令牌并从API源请求信息?如何将自己的应用程序数据与API数据相关联?我是否会创建一个仅包含访问令牌和应用程序的用户ID的其他类型的用户记录?

1 个答案:

答案 0 :(得分:1)

我每次登录时都会保留访问令牌并从API源请求信息吗?

如果令牌未过期,您可以在数据存储中保留它并将其与每个请求一起使用。但很多时候,令牌将过期,每次启动会话时都需要申请一个新令牌。在这种情况下,您可能会将令牌存储在内存中而不是永久存储位置。

如何将自己的应用程序数据与API数据相关联?

我认为我们需要更多地了解您的应用程序来回答这个问题。

我是否会创建一种仅包含访问令牌和应用程序的用户ID的其他类型的用户记录?

同样,我们可能需要更多关于您的应用程序的信息。如果您持久化令牌(如果它没有过期),那么您需要考虑如何存储它。如果没有,您可以将其放入局部变量或会话中。

相关问题