假设有一个Web服务器在某些路径下托管任意用户控制的内容 - 公共IPFS网关是让我思考这个问题的例子。该服务器是否可以阻止它所服务的页面在客户端上安装服务工作进程(从而欺骗非用户控制的路径的内容(?
服务工作进程规范中有一些有用的信息:
获取服务工作线程脚本资源的 HTTP 请求将 包括以下标头:
Service-Worker
指示此请求是服务工作进程的脚本 资源请求。注意:此标头可帮助管理员记录请求并检测 威胁。
如果你想确保你的 Web 服务器不允许任何服务工作进程注册,一种方法是检查传入请求上的Service-Worker
标头,并让你的 Web 服务器在检测到时返回适当的 HTTP 错误响应(任何4xx
或5xx
都可以工作 - 可能是403
或412
?