在开发bookmarklet时需要考虑哪些设计和安全注意事项?

时间:2009-01-22 02:43:05

标签: javascript security bookmarklet

我正在尝试设计一些书签,连接回服务器(比如玉兰花),但就其本质而言,书签似乎是面对互联网安全所建立的,它们基本上交叉根据定义,脚本编写,但它们也是功能强大且很酷的工具,符合我的要求,因此我想使用它们。

然而,由于他们可能是Javascript使用的丑陋小鸭子,我想知道应该在他们的设计和安全性方面应该采用哪些特殊考虑因素和常识。

谢谢!

编辑:我的一个政策是,如果用户位于https页面内,则不会启动书签。

1 个答案:

答案 0 :(得分:3)

用户必须担心的是其他人的书签。如果它来自不受信任的来源,您不知道激活时可能会做什么(窃取cookie或抓取敏感信息。)因为您的代码是跨站点注入的,所以对您没有真正的危险,并且只对您的用户如果你故意把它们放在那里。

编辑:

我会避免可能会干扰主机页面全局范围的代码,例如重新定义全局对象和原型。您可以将所有bookmarlet代码放在功能块中以限制其范围:

(function(){

// your code

})()

该块中定义的任何变量和函数都不会干扰主页,除非您涉及全局对象和原型,DOM等。如果您发布了可能需要执行此操作的示例,我们可能会提供帮助重构。