首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在chrome扩展中嵌入客户端Id

在chrome扩展中嵌入客户端Id
EN

Stack Overflow用户
提问于 2012-07-28 14:49:56
回答 3查看 1.8K关注 0票数 7

我正在构建一个chrome扩展,它将与salesforce-chatter api交互。但是对于使用oAuth(用户代理流)身份验证的用户,我需要将客户端密钥嵌入到我的扩展中。

这会导致任何安全问题吗?或者,有没有一种方法可以使用oAuth而不在我的扩展中嵌入客户端id?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-06 21:48:41

正如@Matt Lacey已经指出的那样,客户端id必须包含在请求中,以便提供商知道请求来自您。通常,提供商还会发布一个机密客户端机密,该机密客户端机密会被附加到访问令牌请求中,因此提供商可以验证您的应用程序是否被允许使用该客户端id。

Chrome扩展运行在一个开放的平台上,平台本身没有提供任何方法来根据服务器( salesforce也必须支持)或安全地存储属性(很难,如果在开放平台上不是不可能的话)来验证扩展,所以不幸的是,不可能对客户端保密。

由于这是一个常见问题,因此在OAuth规范(请参阅section 10.1 Client Authentication10.2 Client Impersonation)中已经考虑到了这一点。因此,提供者需要做额外的检查,但在客户端,您无法做任何事情来有效地提高安全性。

如果你想更深入地了解未来安卓设备将如何处理这一问题,请查看我的答案here

票数 6
EN

Stack Overflow用户

发布于 2012-07-30 10:40:32

您必须在扩展中嵌入客户端ID,以让Salesforce知道正在尝试进行身份验证的应用程序是什么。这些客户端in总是被存储并传递给服务器,所以只要您以安全的方式存储它,就不会有问题。

票数 2
EN

Stack Overflow用户

发布于 2012-08-01 15:41:21

正如Matt解释的那样,如果你正在创建一个打包的应用程序,你将被强制包括客户端id。另一种解决方案是将应用程序编写为托管应用程序:

What is the difference between packaged apps and hosted apps?

这样做的缺点是增加了管理web服务器的复杂性。但它将允许更高的安全性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11698968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档