当我们在Google开发者控制台上创建新的“客户端ID”并选择“应用程序类型”为“Web”时,我们可以选择下载包含大量键值对的JSON文件。此JSON文件用于在设置阶段使用Open-ID Web客户端。
我看到的一个关键值对是“client_x509_cert_url: https://www.googleapis.com/robo/v1/metadata/x509/ ......“。
当我在浏览器中复制粘贴上述URL时,我看到一个空的JSON响应{}。我想这里的意图是让OPEN-ID连接客户端填充公共 - 私有RSA密钥对的公共证书,以便对JWT请求对象进行签名和加密。但我没有看到任何关于如何在Google开发人员控制台中上传客户端证书的文档。
这是因为Google还不支持JWT请求对象吗?
答案 0 :(得分:0)
client_x509_cert_url是公共x509证书的URL,用于验证客户端签名的JWT。
我认为对于Web应用程序,它使用oauth2.0授权代码流,它不需要签署JWT,实际上它根本不使用JWT。
但是,如果您创建了一个服务帐户,https://developers.google.com/identity/protocols/OAuth2ServiceAccount
并且下载的json文件将包含client_x509_cert_url,该URL确实有效,并将显示证书的公钥。
比因为服务帐户使用oauth 2.0 JWT Bearer Token flow,客户端必须使用私钥进行签名。