使用SFSafariViewController进行SSO体验

时间:2018-01-09 16:28:04

标签: ios sfauthenticationsession

SFSafariViewController描述中,它写了

您将使用SFAuthenticationSession的两种情况是:

  

使用身份验证协议登录第三方的服务   (例如OAuth)。此选项适用于社交网络应用程序。

     

为应用程序提供单点登录(SSO)体验。这个   选项适用于具有许多应用程序的企业公司   安装在同一设备上。

我想实现第二种方案。我有不同的应用程序,并使用SFSafariViewController实现SSO。问题是在我的测试中,cookie不是在不同的应用程序之间共享的。我在一个应用程序中登录,然后当我尝试使用相同的登录URL登录另一个应用程序时,我必须再次写入我的凭据,即使会话在第一个应用程序中仍处于活动状态。这是正常的行为吗?如果我的应用程序之间没有共享cookie,我应该如何实施SSO体验?

1 个答案:

答案 0 :(得分:1)

在iOS 11中,SFSafariViewController不再共享cookie。您可能应该考虑使用SFAuthenticationSession代替OAuth SSO方案。