我在尝试在RoR应用程序中集成apple登录时使用了apple auth令牌.我需要从中提取电子邮件ID



在jwt.io网站解码时,我可以在那里看到电子邮件ID信息,但jwt-gems没有得到我想要的。如何在ROR应用程序中提取这些信息的想法。

为了解码,我尝试了这个

decode_token=JWT.decode-apple_token&";,true,{算法:"HS256"}

Apple令牌是用RS256算法签名的,因此您应该使用该算法来验证和解码它们的令牌。您还需要苹果的公钥来验证签名。

苹果公司公开了一个JWKS url,在那里发布他们的公钥:https://appleid.apple.com/auth/keys

您可以使用此示例了解如何使用从JWKS端点下载的公钥对令牌进行解码。

你也可以跳过签名验证,只解码令牌:jwt.decode(apple_token, options={"verify_signature": False}),但你应该小心这种方法——任何人都可以伪造苹果令牌,并能够模拟任何用户。例如,您可以将此方法用于开发目的。

相关内容

  • 没有找到相关文章