如何在iOS上实现单点登录

7

我是一名新的企业iOS开发者。我们正在开发一个管理我们企业应用程序的应用程序(有点像应用商店和MDM)。

我遇到了一个问题:

我想为我们的企业应用程序实现单点登录(不使用相同的开发者ID),这意味着如果应用商店应用程序已经登录,其他应用程序(涉及我们的企业应用平台)就不需要用户再次输入ID和密码。

我搜索到了一些信息,提到了共享钥匙串和iOS Kerberos SSO。但是共享钥匙串对于由不同开发人员开发的应用程序不可用,而我找不到关于iOS SSO的Kerberos的详细资源。

因此,我需要的是:

  • Kerberos SSO是否适用于我的情况?
  • 我想要一些详细的教程或文章,通过它们我可以学习如何制作SSO服务器以及如何配置我的iOS应用程序?

您不能与不属于相同开发者ID的其他应用程序共享任何钥匙串数据。 - nswamy
是的,这就是我正在苦恼的问题。 - Yue Kong
1
好的,就像@nanjunda告诉你的那样,你会继续挣扎,因为这是不可能的。 - Lefteris
创建一个通用的应用程序,允许用户登录,并在需要登录时将用户重定向到该应用程序(网页)怎么样?您不能与越狱共享钥匙串,除此之外的任何内容都是不安全的(有时甚至没有越狱)。 - Nat
@YueKong,你实现了这个吗? - Ashish Langhe
1个回答

7

显然,iOS 8包括证书支持,允许使用基于证书的单点登录来验证企业应用程序的用户。

账户框架

账户框架(Accounts.framework)为某些用户帐户提供了单点登录模型。单点登录通过消除单独提示用户多个帐户而改善用户体验。它还通过管理应用程序的帐户授权过程简化了您的开发模型。您与社交框架一起使用此框架。

因此,您应该查看账户框架参考


谢谢Niko,这很有帮助。 - Yue Kong
@Niko 你好,正如你所说,某些用户帐户采用单一登录模型。你能否提供一份文档,证明苹果公司只支持特定的帐户类型?因为@property(readonly, nonatomic) NSString *identifier; 只接受字符串而不是枚举类型。我需要这份文档来证明其他帐户类型不支持此功能。 - utkal patel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接