当前位置: 首页 > 知识库问答 >
问题:

Google OAuth 2.0请求格式

上官砚文
2023-03-14

web应用程序如何将用户重定向到Google进行身份验证,并在Google的OAuth 2.0endpoint的URL参数中包含已签名的请求?

例如,如何将以下明文请求转换为已签名和加密的请求?

https://accounts.google.com/o/oauth2/auth?client_id=424911365001.apps.googleusercontent.com

共有2个答案

缑智敏
2023-03-14

目前无法将签名(或加密)的身份验证请求发送到Google的授权endpoint,因为Google不支持这一点。

然而Google的身份验证协议是OpenID Connect兼容的,该规范有一个可选功能,允许发送JWTs中表示的身份验证请求,可以是签名和/或加密的JSON对象。见:http://openid.net/specs/openid-connect-core-1_0.html#RequestObject 未来谷歌可能会开始支持这一功能,但目前还没有。

高寒
2023-03-14

您不能重定向URI,它只是返回身份验证的页面的位置,即可以处理调用的位置。它必须是静态页面、路径。

它在Google开发者控制台中明确指出

每行一个URI。需要有一个协议,没有URL片段,没有相对路径。不能是非专用IP地址。

有效的重定向URI

http://localhost/authorize/ 
http://localhost/google-api-php-client-samples/PlusLogin/index.php 
http://test.daimto.com/Oauth2.php 
http://WWW.daimto.com/Oauth2.php 

Oauth2示例:

https://accounts.google.com/o/oauth2/auth?client_id={clientid}.apps.googleusercontent.com&redirect_uri=http://localhost/google-api-php-client-samples/Analytics/Oauth2.php &scope=https://www.googleapis.com/auth/analytics.readonly&response_type=code
 类似资料: