acacode / acacode/swagger-typescript-api

Cannot apply `require-trusted-types-for 'script'` Content-Security-Policy

未关闭
#985 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
enhancement
主要语言
TypeScript
星标
4.1k
派生
436
PR 合并指标
30 天内没有已合并 PR

描述

Our SOC-2 auditor identified a vulnerability risk with our content security policy because we didn't have explicit list of `trusted-types` in our application's Content-Security-Policy. In theory, if a 0-day exploit was found, someone could inject malicious javascript into the page and the Content-Security-Policy would block ordinary users from seeing it unless they manually edited the local response headers. The CSP acts as a last line of defense against XSS.

The usual fix is to add `require-trusted-types-for 'script'` to our CSP, find which elements it is blocking and whitelist them. However, this does not work on the docs page because the elements rendered by the Swagger Docs do not have a `trustedType` associated with them to whitelist.

We do not have a lot of frontend resources available at the moment, so wrapping everything in the frontend code in our own trusted types would be a heavy lift as a workaround. What I would like is for the swagger components to have their own trustedType(s) that I can whitelist on the `trusted-types` section of the CSP so the docs page will actually render instead of looking like this:

![Screenshot 2024-11-18 at 1 03 49 PM](https://github.com/user-attachments/assets/9246fe80-cc07-4445-982d-d693a287e34c)

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。