项目上有一个请求,它映射了以下案例:
客户端可以使用页面保存Google Analytics跟踪代码。然后,此代码将在运行时动态插入到主页面网站中。
将脚本插入主页面的过程非常简单。我遇到的一件事就是需要创建一个用户可以通过Google Analytics javascript代码并将其保存到sql server表的页面。
不是页面本身,而是安全问题。如果我让用户输入任何javascript代码,将其保存到数据库,那么这段代码会在运行时注入主页面,我相信那里存在巨大的安全漏洞。
我的问题是,如何通过安全性实现此功能,但仍然允许用户自由插入脚本?有没有办法检查插入的脚本是否是真正的谷歌分析而不是一些恶意脚本?我已经做了很多研究,但找不到任何有用的东西,所以我相信这是我最后的选择。
答案 0 :(得分:0)
我认为您最好的选择是始终保留GA模板,只允许"管理员"传入GA帐户变量,以及任何进入"中间" - 例如,事件跟踪代码等。
话虽如此......我理解你的担忧..它们是有效的......但这段代码多久会改变一次?而且由于它的代码,在实施之前不应该进行测试吗?也许最好的方法是让任何这些请求通过开发团队,源代码控制,QA,然后生产发布?在这方面,你可以只注射"这个代码来自本地的txt文件等,所以它仍然有点即插即用,但有一些源代码管理...