2

Sign in with Apple 在一台设备 (iPhone X iOS 13.3.1) 上返回 nonce,但在其他设备 (iPhone iOS 13.3、iPad iOS 13.1.3、iOS 13.2.3) 上不返回。根据https://forums.developer.apple.com/thread/125419上的讨论,似乎所有未更新到 iOS 13.3.1 并且使用本机流程的 iOS 13 设备都不能使用随机数。通过本机流程,我指的是在 Apple 的原生界面上输入您的 Apple ID 和密码.

注意:网络流程在上述设备上运行良好。通过网络流,我指的是在 Apple 的 Web 界面上输入您的 Apple ID 和密码.

但是,我确信情况并非如此,因为 Sign in with Apple 在具有 Kayak 等应用程序的 PRE-iOS 13.3.1 设备上运行良好(假设 Kayak 使用随机数)。

为什么在 Apple 的 JWT 中返回 nonce_supported: false?

根据https://developer.apple.com/documentation/signinwithapplerestapi/authenticating_users_with_sign_in_with_apple

"nonce_supported 一个布尔值,指示交易是否在 nonce 支持的平台上。如果您在授权请求中发送了 nonce,但在 ID 令牌中没有看到 nonce 声明,请检查此声明以确定如何继续。如果这样声明返回 true,您应该将 nonce 视为强制性并失败交易;否则,您可以继续将 nonce 视为可选。" 13.3.1 之前的 iOS 13 设备是否不支持随机数?

4

0 回答 0