首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何像第一天一样使用Apple-ID创建匿名用户帐户?

如何像第一天一样使用Apple-ID创建匿名用户帐户?
EN

Stack Overflow用户
提问于 2019-04-12 11:53:21
回答 1查看 1.3K关注 0票数 0

一个新的iOS应用程序应该能够连接到一个web服务来同步设备之间的数据。

我喜欢日记应用“第一天”解决这个问题的方式:

  • 在注册时,用户可以选择使用邮件地址来设置“真实”帐户,或者使用他的Apple 登录
  • 当使用“真实”帐户时,必须确认邮件地址,并选择用户名和密码。
  • 在使用Apple签名时,不需要额外的步骤。应用程序使用一些随机的用户ID连接到web服务。
  • 在新设备上安装时,使用Apple方法重新连接是没有问题的。

问题1:如何访问Apple?

据我所知,不可能真正访问苹果ID。或者有什么非法的方法可以做到这一点吗?,怎么可能?

我怀疑这个应用程序可能会使用iCloud来存储一些令牌?iCloud存储被链接到Apple,因此当在新设备上安装时,可以从iCloud恢复令牌并使用它重新连接。

还是有其他/更好的方法?

问题2:如何处理身份验证?

让我们把问题1放在一边,假设我们已经解决了创建跨设备用户名的问题。如何处理身份验证?

  • 解决方案1:仅令牌(Apple / iCloud存储用户名/等)用于身份验证。如果从应用程序到服务器的请求包含有效的用户名令牌访问权限。
  • 解决方案2:在创建匿名帐户时,除了用户名令牌之外,还会生成一个随机密码。这可以在设备或服务器上完成。但是由于密码必须在两端都知道,所以它需要在某个时候从一端传输到另一端。
  • 2a:信任HTTPS连接并传输普通密码
  • 2b:使用其他方法(例如Diffie-Hellman)来商定一个通用密码。

乍一看,2b似乎是最安全的解决方案,但真的是这样吗?同步数据不是加密的,而是“仅”信任HTTPS连接。会增加额外的安全性来使用另一种方法传输密码吗?

此外,是否为在所有上使用“密码”增加了额外的安全性?这不是用户为自己选择的用户名选择的密码,而是自动生成的用户名/令牌的密码。

仅仅使用生成的用户名令牌就不一样了吗?只有访问令牌/ Apple / iCloud帐户等的用户才能访问web服务。

那么,哪种解决方案是最好的呢?我是不是遗漏了什么,有更好的解决方案?

EN

回答 1

Stack Overflow用户

发布于 2020-02-04 07:57:59

从iOS 12开始,苹果就为开发者提供了一个可以访问用户Apple的SDK --显然是在用户的同意下。开发人员可以使用AuthenticationService SDK来实现这一点。请在文献资料阅读更多内容。我确信这就是第一天应用程序所做的事情。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55651045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档