我有点意外,之前没有问过这个问题,但目前我们正在使用服务器端渲染的项目,我们需要在初始加载时调用我们经过验证的API。
为了以经过身份验证的方式获取数据,我们需要从服务器端发送Cookie,并在我设置标头Cookie时执行此操作,
fetch(`${ API_SERVER }`, {
headers: {
Accept: 'application/json',
Cookie: 'User-Session-Token=' + cookie,
},
credentials: 'include',
}
一切正常。只是想检查是否存在这可能导致的任何安全相关问题,因为浏览器不是发送它而是我们手动执行。
答案 0 :(得分:-2)
Cookie首先由服务器设置,然后浏览器会在每个请求中将其发送回该域。 如果cookie不打算被任何脚本使用,您可以将其设置为“HttpOnly”cookie,这将保护您免受跨站点脚本(XSS)的攻击。
Set-Cookie: <name>=<value>[; <Max-Age>=<age>]
[; expires=<date>][; domain=<domain_name>]
[; path=<some_path>][; secure][; HttpOnly]
但是,cookie仍然容易受到跨站点跟踪(XST)和跨站点请求伪造(XSRF)攻击的攻击。</ p>
用于担保索赔时,Cookie已被json网络令牌取代。
“JSON Web令牌是一种开放的,行业标准的RFC 7519方法,用于在双方之间安全地表示索赔。”
请参阅: