【发布时间】:2015-08-27 03:01:24
【问题描述】:
我在上一小时面临 OAuth2 JWT 令牌验证异常(所以没有人可以访问我的应用程序):
java.security.SignatureException:签名长度不正确:得到 256 但预期为 128。我正在使用 google-http-client 1.20.0 和 Java 1.7.0。到目前为止,相同的配置有效 - 有什么想法吗?
Stacktrace
java.security.SignatureException: Signature length not correct: got 256 but was expecting 128
at sun.security.rsa.RSASignature.engineVerify(Unknown Source) ~[na:1.7.0_45]
at java.security.Signature$Delegate.engineVerify(Unknown Source) ~[na:1.7.0_45]
at java.security.Signature.verify(Unknown Source) ~[na:1.7.0_45]
at com.google.api.client.util.SecurityUtils.verify(SecurityUtils.java:164) ~[google-http-client-1.20.0.jar:1.20.0]
【问题讨论】:
-
使用 Java 1.8.0_45 也有同样的问题。
-
当我使用来自谷歌客户经理账户的访问令牌时,我在谷歌应用引擎上得到了这个。 (一小时前才开始搞定他们)
-
@user3686724 您为 GoogleIdTokenVerifier 设置的受众是什么?您使用客户端 ID 还是令牌 ID? (过去 60 分钟我们一直遇到同样的问题)
-
我也有同样的问题,看起来是 Google API 问题。您知道在哪里投诉并找到相关信息吗?
-
感谢大家的报告和解决方法。这已被确认为 Google 问题,我们的后端团队将优先处理。
标签: java jwt java-security google-http-client