【问题标题】:Error: OAuth 2 parameters can only have a single value: hd错误:OAuth 2 参数只能有一个值:hd
【发布时间】:2013-04-10 02:42:18
【问题描述】:

限制应用使用 OAuth 登录到一个域(例如 abc.com)。 通过以下步骤获取错误:

  1. 在谷歌浏览器中使用多个帐户登录。
  2. 尝试使用未提及域的用户登录时,没有任何反应(没有错误消息)。尝试使用无效用户登录两次。
  3. 现在尝试使用有效用户登录。

这样做会发生以下错误:

OAuth 2 参数只能有一个值:hd

在错误堆栈跟踪中,客户端 ID 是可见的。这会带来安全风险吗?

如何解决这个错误?

【问题讨论】:

标签: security oauth-2.0


【解决方案1】:

根据documentation the hd parameter 是针对 G Suite 的,因此您可能正在重复 hd 参数,一个是 hd=*,另一个是您的托管域。还声明您不应依赖此 UI 优化来控制对您的应用的访问。

在错误堆栈跟踪中,客户端 ID 是可见的。那是安全吗 风险?

没有。 It is not a secret。它用于调试目的。

如何解决这个错误?

尝试替换参数hd 而不是添加一个新参数。一般来说,这应该与您请求的每个参数一起完成。当您重复一个参数时,OAuth2 documentation 还会指出 invalid_request 错误。

【讨论】:

    猜你喜欢
    • 2018-03-10
    • 1970-01-01
    • 2017-01-15
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 1970-01-01
    相关资源
    最近更新 更多