Angular(2)如何处理XSS和CSRF?它是否能够处理这些攻击?如果可以,我需要做什么来使用此保护?如果不行,我需要在服务器端或前端的TypeScript中处理所有这些攻击吗?我已经阅读了“withCredentials:true”,但是我不确定要将此代码放在哪里,或者这是否是我正在寻找的内容。在https://angular.io/网页中,我没有找到任何关于此问题的信息(或者我可能错过了)。
app.use(express.csrf())
app.use(function (req, res, next) {
res.cookie('XSRF-TOKEN', req.session._csrf);
res.locals.csrftoken = req.session._csrf;
next();
})
不确定在新的HttpClientXsrfModule中是否仍然需要。可能只需要在客户端的app.module中添加以下内容(但需要确认):
HttpClientXsrfModule.withOptions({
cookieName: 'XSRF-TOKEN',
headerName: 'X-XSRF-TOKEN'
})
.csrfTokenRepository(new CookieCsrfTokenRepository())
.csrfTokenRepository(new HttpSessionCsrfTokenRepository())
即使我们需要跳过特定的URL等,也可以通过实现CsrfTokenRepository来创建自定义CSRF令牌存储库
所有上述内容都可以在重写WebSecurityConfigurerAdapter的configure方法时使用