Последнее Chrome обновление блокирует незащищенные куки в Angular - PullRequest
0 голосов
/ 14 марта 2020

Мы используем ngx-cookie-service для установки файлов cookie сеанса для вошедшего в систему пользователя. Все работало нормально, до вчерашнего дня, когда последний выпуск Chrome начал блокировать небезопасные куки-файлы и отображал в консоли следующее сообщение:

    A cookie associated with a resource at http://tradmin.novlence.com/ was set with `SameSite=None` 
    but without `Secure`. It has been blocked, as Chrome now only delivers cookies marked 
   `SameSite=None` if they are also marked `Secure`. You can review cookies in developer tools under 
    Application>Storage>Cookies and see more details at 
    https://www.chromestatus.com/feature/5633521622188032.

Мы изучили документацию и нашли способ создать безопасный печенье с помощью опции cook ie, переданное в сервисе cook ie. Но сейчас куки не создаются вообще. Ниже приведен фрагмент кода, который мы пытались реализовать.

    let domain = "localhost";
    let path = '/';
    let secure = true;
    let expiry = new Date();
    expiry.setDate(expiry.getDate()+365);
    this.cookieService.set( 'token', user.accessToken,expiry,path,domain,secure,'None'); 
    this.cookieService.set( 'currentUser', JSON.stringify(user.admin),expiry,path,domain,secure,'None'); 

Кто-нибудь может показать нам правильное направление относительно того, куда мы идем не так? Это может быть полезно для всего сообщества, так как многие разработчики также могут решить эту проблему. Заранее спасибо.

1 Ответ

1 голос
/ 14 марта 2020

Проблема, о которой вы говорите, может быть легко найдена, посмотрев репозитории на github:

https://github.com/stevermeister/ngx-cookie-service/issues/76

До недавнего времени эта проблема оставалась открытой. В настоящее время вы используете версию 2.2, которая была опубликована 10 месяцев назад go. Исправление было опубликовано через 2 месяца go.

Вы сможете исправить эту проблему, обновившись до версии 2.4. Если это по-прежнему не решает проблему, вам следует поднять новую проблему.

Редактировать. Перед обновлением следует проверить совместимость версий. Похоже, v2.3 поддерживает Angular <9, а v2.4 + поддерживает Angular 9. </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...