在运行托管用户生成内容(包括 HTML 和 JavaScript)的站点时,有哪些最佳实践可以帮助确保主机和站点访问者的安全性和完整性?
在此处添加一些可能的技术示例。技术选择:
- 独立域:使用与主站点不同的域来托管用户生成的内容。Github是这样做的,jsFiddle 也是如此
- 限制标签:限制用户可以输入的 HTML 标签。最大的一个是 <script>,这对于 JS 托管显然是不可能的。但是,可以想象也可以限制 JS(尽管这可能不切实际)。
手动/半手动模式:
- 内容审核
- 用户标记:为用户提供一种标记恶意内容以进行删除的方法