使用 OAuth 和 javascript 的应用程序

IT技术 javascript oauth
2021-03-07 23:33:00

我打算创建一个使用 JavaScript 的应用程序,它需要使用 OAuth 来验证网站用户的身份。有人可以帮我吗?任何示例代码?我知道 Google Code Javascript OAuth 库,但我不确定如何实现它。

4个回答

这里有一个 OAuth 的 JS 客户端实现:https : //developers.google.com/identity/protocols/OAuth2UserAgent

它包含让您运行的示例代码。基本上,你要做的是:

var url = "...";
var accessor = {
  token: "...",
  tokenSecret: "...",
  consumerKey : "...",
  consumerSecret: "..."
};

var message = {
  action: url,
  method: "GET",
  parameters: {...}
};

OAuth.completeRequest(message, accessor);        
OAuth.SignatureMethod.sign(message, accessor);
url = url + '?' + OAuth.formEncode(message.parameters);

// send request to 'url'
...

干杯,马蒂亚斯

为什么?为什么“秘密”是来自用户的秘密。它与存储在 cookie 中的 session_id 没有什么不同。仅仅因为它被命名为“秘密”并不能使它成为每个人的秘密。
2021-04-20 23:33:00
即使你使用SSL,有什么区别?发出 SSL 请求并将响应保存到硬盘驱动器的人可以轻松读取所有内容。对于公共应用程序,任何人都可以提出此类请求。在 JavaScript 中使用秘密变量是完全不安全的。
2021-04-24 23:33:00
1.0(一)。不过你说得很好。如果您也可以控制服务提供者,我建议您选择 OAuth 2,因为它简化了开发人员和协议实现者所面临的许多问题。
2021-05-05 23:33:00
我认为 tokenSecret 和 consumerSekret 参数应该是秘密的!下载到浏览器时,它们怎么能保密?!!!
2021-05-06 23:33:00
例如,通过使用 SSL。但是,是的,浏览器环境中的 OAuth 肯定存在安全问题。
2021-05-09 23:33:00

提到的安全问题可以通过 YQL 解决:http : //derek.io/blog/2010/how-to-secure-oauth-in-javascript/

至少在某种程度上。但是随后您依赖于其他人的后端技术,而不是您自己的或不依赖您的后端技术——这是最初的目标。
2021-04-20 23:33:00

我编写了一个通用的 OAuth 2.0 javascript 库。

你能发布一个如何对自定义 Google App Engine 应用程序进行身份验证的示例吗?我已经为此苦苦挣扎了 2 天了。您的库似乎不支持 3 个回调 url OAuthGetRequestTokenOAuthAuthorizeToken和 'OAuthGetAccessToken`?
2021-04-17 23:33:00

如果您正在编写 Firefox(或其他 Mozilla)插件,请考虑oauthorizer我将它用于最新版本的 goo.gl lite。但是,在 Mozilla 附加组件站点获得批准时,我确实遇到了一些问题,我目前正在处理该站点。