除了大卫上面的评论外,我在苹果开发者支持网站上发现了一个相关主题,该主题获得了官方回复并确认了该问题:
官方回复:
您好,aslkdjalksdjasdasd,
此行为符合预期。用户信息仅在首次用户注册时通过 ASAuthorizationAppleIDCredential 发送。之后使用“通过 Apple 登录”以同一账户登录您的应用时,不会共享任何用户信息,ASAuthorizationAppleIDCredential 中仅会返回用户标识符。建议您安全地缓存包含用户信息的初始 ASAuthorizationAppleIDCredential,直到您能在服务器上验证账户已成功创建。
Patrick
正如一位开发者评论的那样:
等等……如果由于某些原因,来自苹果的首次重定向因多种非常常见的原因而丢失,那么我们就永久性地失去了该用户,因为没有任何其他方式可以获取他们的信息。真的没有其他方法可以获取这些信息吗?
另一位开发者则评论道:
或者,如果下游出现问题,客户会投诉,而支持人员会让他们前往 Apple ID 网站撤销权限,以便重新正确注册。我认为这将带来糟糕的体验,并导致人们在遇到此类问题时不再使用此登录机制。
因此,遗憾的是,我认为在生产环境中无法安全地使用此功能。这将会成为支持方面的噩梦。
我建议暂时搁置此问题,直到苹果意识到他们所制造的问题:在试图提高安全性的过程中,他们似乎过度牺牲了系统的健壮性。