支持Django内容安全策略(CSP)的Nextjs

hivapdat  于 2023-01-08  发布在  Go
关注(0)|答案(1)|浏览(211)

在一个Nextjs作为前端,Django作为后端的API中,内容安全策略(CSP)应该设置在哪里?我在例子中看到,CSP规则可以在nextjs的下一个配置文件中设置,而在Django中可以在www.example.com中设置settings.py
我仍然试图把我的头缠在csp和安全相关的东西上。不确定这是否重要,但我没有使用Nextjs中的API特性,只有django作为api。

6ie5vjzr

6ie5vjzr1#

要在Next.js应用中设置内容安全策略(CSP)规则,您需要执行以下操作:
1.如果您还没有_document. js文件,请在Next.js应用的pages目录中创建一个_document. js文件。
1.在_document. js文件中,将以下行添加到Head组件以设置Content-Security-Policy标头:

<Head>
  <meta httpEquiv="Content-Security-Policy" content="your CSP rule here" />
</Head>

然后用您要设置的实际CSP规则替换此处的CSP规则。例如,要阻止所有内联脚本和样式,可以使用以下规则:

"default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline'"

保存更改并重新启动Next.js应用程序。

相关问题