背景
安全部门在做渗透测试的时候发现前端项目可以直接访问config.js文件,里面的配置信息都可以直接被查看到,要求要将敏感信息屏蔽。这里面有三个方法:1、将config.js文件在打包时变成随机名字,这是开发可以做的;2、开发打包时将js文件内容模糊化,这个也是开发做的;3、在nginx上拦截。在这里我就配置了nginx拦截,配置如下:
具体配置
在server模块下添加
if ($request_uri = /config.js) {
return 403;
}
错误配置
localtion /config.js {
return 403;
}
这个虽然也能屏蔽对config.js文件的访问,但是前端工程也需要访问带参数的config.js
直接location屏蔽了config.js导致前面访问报错,所以使用内置变量request_uri的方式屏蔽。