使用平台特定提供商登录的常见问题解答
本节介绍可能返回的常见错误。
任何错误都以 RFC 7807 格式返回。有关更多详细信息,请参阅RFC 7807 文档。
- status:这是 HTTP 状态码。
- title:这是身份验证服务定义的自定义错误代码。
- detail:这是一条可读的错误信息,其中可能包含有关问题是什么的详细信息。此字段旨在用于开发过程中的调试。
对于错误代码路径,仅使用status或title字段来确定后续操作。不要使用detail字段来确定后续代码路径。
如果status处于 400-499 范围内,则错误很可能位于客户端,并且您很可能可以采取措施来纠正问题,无论是对 Unity 身份验证的 API 调用还是对平台特定提供商的身份验证。请检查 API 输入以确保它们是正确的。
通过查看detail字段,您可以找到有关所面临问题的更详细描述。您可以在下面找到按描述列出的最常见错误以及您可以采取的解决措施。
对于所有这些问题,您可以查看如何使用平台特定登录和身份提供商部分以获取有关特定身份提供商的更多详细信息。
详情:
- 令牌已过期
- 尚未生效
- 令牌颁发时间声明在未来
描述:这些错误表明令牌在当前时刻无效,无论是因为它是在现在之后或之前的一段时间内颁发的。
解决步骤
- 刷新外部令牌
- 再次登录或关联。
详情:
- 无效的受众
描述:这通常适用于基于 ID 令牌的身份验证。它表明您在 Unity 身份验证中注册的应用程序或客户端 ID 与令牌上列出的应用程序 ID 之间存在不匹配,后者通常位于受众字段中。
解决步骤:
- 检查身份提供商部分以获取相关 ID 提供商,并注意应用程序或客户端 ID 的预期格式。
- 验证您在编辑器设置页面或 Unity 云仪表板中在 Unity 身份验证中注册的应用程序或客户端 ID 是否与您的身份提供商中的应用程序 ID 相匹配。
注意:有时 ID 提供商会以不同的格式提供多个应用程序 ID,输入错误的类型会导致此错误。
详情:
- 无效的发行者
- 无效的签名
描述:这些错误表明 ID 令牌不是由预期来源颁发的。
解决步骤:
- 验证 ID 令牌是如何以及从哪里获取的,以及它是否与 Unity 身份验证支持的內容相匹配。
详情:
- 格式错误的令牌
- 验证失败
- 无效的令牌
描述:这表明令牌输入存在一些问题。
解决步骤:
- 验证令牌是否为 ID 提供商的预期令牌类型。
- 验证令牌是否在从 ID 提供商获取后以任何方式被操纵。一般来说,令牌不应被操纵。
- 获取新令牌。