2020-05-21 11:46:40 2314次浏览 2条回答 0 悬赏 10 金钱

前后端分离如何处理 csrf?

补充于 2020-05-21 11:56

设置 cookie 的 samesite 为 Strict

补充于 2020-05-21 12:56

使用 set-cookie

最佳答案

  • 蓝色主旋律 发布于 2020-05-21 13:57 举报

    楼主很是激动。
    任何一种观点的提出都有其传承来源,楼主可以将 来源 说一下,也好知道你提出的场景。

    在我认为的前后端分离,分离彻底一点,就前端在三亚,后端在黑河,两者可能都在两台服务器上,基本上已经告别了 cookie

    可以参考 https://www.yiichina.com/doc/guide/2.0/rest-authentication 第一句话。

    他人提到的 restful,可参考 https://www.yiichina.com/doc/guide/2.0/rest-quick-start, 也是可以追溯 yii\rest\Controller

    class Controller extends \yii\web\Controller
    {
        /**
         * @var string|array the configuration for creating the serializer that formats the response data.
         */
        public $serializer = 'yii\rest\Serializer';
        /**
         * {@inheritdoc}
         */
        public $enableCsrfValidation = false;
    
    
    https://www.yiiframework.com/doc/guide/2.0/zh-cn/security-best-practices
    
    警告: 禁用 CSRF 将允许任何站点向您的站点发送 POST 请求。在这种情况下,实施额外验证非常重要,例如检查 IP 地址或秘密令牌。
    
    1 条回复
    回复于 2020-05-21 14:06 回复

    是的 在不使用cookie做认证的时候的确不需要考虑csrf,你的回答很正确

您需要登录后才可以回答。登录 | 立即注册
小祥哥哥
经理

小祥哥哥 杭州

注册时间:2016-10-31
最后登录:2020-09-04
在线时长:21小时58分
  • 粉丝1
  • 金钱1040
  • 威望20
  • 积分1450

热门问题