保护Chrome扩展中公开的API

时间:2013-09-09 20:55:30

标签: api security google-chrome-extension

当前状态:

我正在开发Chrome扩展程序。我的扩展程序向我的Web服务器发出请求并显示获取的结果。

缺点:

  1. 我公开了我的API,因此任何第三方(不一定是)扩展程序的所有者都可以在我的服务器上发出大量请求。这将允许他访问我的所有数据
  2. 如果通过机器人非常频繁地发出请求,这也可能导致我的服务器崩溃。
  3. 那么,是否有任何方法可以授权对相应服务器句柄发出的请求仅通过chrome扩展。可以通过设置一些cookie并在发送结果之前检查它来完成吗?

    谢谢!

1 个答案:

答案 0 :(得分:2)

不,您无法确保只有Chrome扩展程序发出请求。一旦您的代码离开您的控制(即客户端拥有它),就不能保证它不被篡改或反向工程。但是,您可以做的是让用户在访问API之前登录。

通过身份验证,您未验证用户是否正在使用Chrome扩展程序,但如果您的服务器成为大流量主题,您确实有人要将其列入黑名单。您可以让chrome扩展程序的用户创建一次帐户,然后扩展程序可以在每次请求时将这些凭据发送到您的服务器。

你可能想尝试嵌入一个秘密令牌或密码短语,但这只能阻止懒惰的攻击者。此外,它可能会给你一种虚假的安全感。如果您担心拒绝服务攻击,请使用身份验证。