Ошибка корреляции в .NET Core в настройках Chrome по умолчанию SameSite при использовании на http://localhost с OAuth

Требования:

  1. Используйте http://localhost, а затем перенаправьте для завершения процесса OAuth и перенаправьте обратно.
  2. Используйте Chrome с настройками по умолчанию. Я знаю, что могу просто изменить некоторые флаги, чтобы исправить это.
  3. Используйте библиотеку .NET Core для предоставления кода аутентификации. Я также знаю, что могу написать свой собственный код для этого.

Вы можете увидеть весь наш код в этом репозитории, а вот прямая ссылка на startup.cs.

Код, связанный с файлом cookie, выглядит следующим образом:

services.Configure<CookiePolicyOptions>(options =>
        {
            // This lambda determines whether user consent for non-essential cookies is needed for a given request.
            options.CheckConsentNeeded = context => true;
            options.MinimumSameSitePolicy = SameSiteMode.None;
        });

Пробовал либо удалить вышеуказанный код, либо изменить его по-разному - не выходит. Я также прочитал эту статью и попытался использовать код что предлагалось там - не сработало. Я также попробовал все различные решения, предлагаемые в этой теме. . Опять же, казалось, что ничего не работает. Есть ли возможность по-прежнему использовать файлы cookie http и samesite с Chrome и предотвратить появление этой ошибки в .NET Core?


person Inbar Gazit    schedule 03.09.2020    source источник


Ответы (1)


Не могли бы вы зафиксировать и опубликовать запрос на предоставление кода авторизации и детали ответа? Неясно, связана ли ваша проблема с SSL.

ДОПОЛНИТЕЛЬНО: РЕАЛЬНАЯ НАСТРОЙКА OAUTH ДЛЯ РАЗРАБОТЧИКОВ

При работе с технологией OAuth я всегда работаю с реальными URL-адресами на ПК разработчика:

Это приводит к наименьшему количеству технических проблем / проблем с доверием - я никогда не использую URL-адреса, такие как http://localhost:3000.

Это не слишком сложно, и этот подход может решить ваши проблемы. Если это поможет, вот несколько ресурсов:

person Gary Archer    schedule 04.09.2020
comment
Гэри, спасибо, но это абсолютное требование — мы должны использовать локальный хост. Я написал это очень рано в вопросе. Это не проект реального мира, это образовательный проект в помощь начинающим разработчикам. Так что ваш ответ не очень помог, но я все равно ценю его. - person Inbar Gazit; 04.09.2020