为什么谷歌原生oauth2stream程需要客户端的秘密?

根据facebook oauth2文档,客户端stream程不需要客户端秘密参数。 客户端stream程可用于本地和移动networking应用程序。

但谷歌的本地oauth2stream程需要客户端的秘密http://code.google.com/apis/accounts/docs/OAuth2.html#IA 。

在这种情况下,客户端的秘密可以被黑客利用反向工程工具来窃取。

有人可以澄清为什么这样做吗?

Solutions Collecting From Web of "为什么谷歌原生oauth2stream程需要客户端的秘密?"

根据谷歌的一个post,主要原因是他们使用相同的库服务器端的应用程序和本地应用程序。 这听起来像他们不认为client_secret在本地应用程序的上下文中是敏感的,但他们计划最终淘汰安装的应用程序stream程。

https://groups.google.com/group/oauth2-dev/browse_thread/thread/1e714924ebcc7e60/edfaaad5830ff2e8

我们并不期望这些秘密保密 – 到目前为止,我们大部分都包括在内,所以今天和图书馆一起使用会很方便,并且期望在将来某个时候不再需要它们。

虽然这可能听起来不错,但请记住,OAuth从未打算防止恶意用户在您的移动/桌面应用上下文中伪造请求。

如果您担心公开client_secret,那么这里还描述了客户端stream程: http : //code.google.com/apis/accounts/docs/OAuth2.html#CS据我所知,客户端边stream不需要client_secret,并能从桌面或移动应用程序正常工作。

-克里斯