我对如何安全地设置我的令牌以及 CSRF 攻击的危险感到有点困惑。
现在我在 FastAPI 中设置了一个服务器。
我有一个端点,当您登录时,我会返回以下内容。
{
"access_token": "my_token",
"token_type": "bearer".
}
第一个问题是:在session中设置cookie是后端任务吗?我问这个是因为我遇到了一些问题,例如在隐身模式下浏览器。我现在所做的是直接返回令牌并让前端进行设置。在隐身模式下保存 cookie 的正确方法是什么?
第二个问题是:cookie和本地存储有什么区别?不记名令牌应该存储在哪里?
另一个关于 CSRF 攻击的问题,在 FastAPI 中,我配置了 CORS,以便只接受来自我的前端(反应)的请求。我还为 fastapi 创建了一个中间件,用于检查请求中是否存在“Origin”标头,如果未检测到,则返回错误。 -> 这足以避免 CSRF 攻击吗?