繁体   English   中英

为什么用于PHP的Google API要求一个“客户端密码”,而对于Javascript却不需要?

[英]Why does the Google API for PHP requires a Client Secret while the one for Javascript does not?

我感到困惑的是,当我第一次在php环境中尝试使用google api时,它要求我使用通过api控制台获取的“客户端秘密”密钥。 在Javascript api示例中,不需要这样的密钥,并且我知道,如果存在,则代码将不再是秘密的。

有什么原因为什么Google仍然需要php代码中的密钥? JS和PHP API之间是否有区别,是否有只能在PHP中完成的事情?

OAuth2规范区分客户端类型并为其提供不同的工作流程。

通常,该规范建议使用成熟的“授权代码授予”方案。 当您的PHP应用程序在远离最终用户的Web服务器上运行时,PHP应用程序可以保护其客户端机密不受外界的攻击。

相反,嵌入式客户端(例如在手机上运行的应用程序或浏览器中的javascript)无法保护客户端机密,因为可以从外部轻松访问其环境。 因此,规范具有完全不同的“隐式授予”方案,不需要使用客户机密。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM