cookie не запрашивается устройством ios12 - PullRequest
0 голосов
/ 25 сентября 2018

поэтому, так как я обновил свой телефон до ios12, я не могу войти на сайт, который разрабатываю (.net core 2);Я вхожу в систему через Facebook, и когда Facebook перенаправляет на мою конечную точку, файлы cookie не входят в запрос, поэтому, когда эта строка запускается:

ExternalLoginInfo info = await _signInManager.GetExternalLoginInfoAsync();

всегда пусто, я проверил запрос, и файлы cookie отсутствуют,в то время как на других устройствах / ПК логин работает отлично, только ios12 дает мне эту проблему atm

Я видел другой пост, в котором говорилось, что для куки необходимо установить SameSite = None

services.ConfigureApplicationCookie(options =>
        {
            options.Cookie.Path = "/";
            options.Cookie.SameSite = SameSiteMode.None;
            options.ExpireTimeSpan = TimeSpan.FromMinutes(30);
            options.SlidingExpiration = true;
            options.AccessDeniedPath = "/Welcome";
        });

, но этоне сработало, что еще я мог попробовать?

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Расширение ответа Роба ...

Добавление следующего в мой блок аутентификации OpenIdConnect решило проблему:

.Services.ConfigureExternalCookie(options => {
    options.Cookie = new Microsoft.AspNetCore.Http.CookieBuilder
    {
        SameSite = Microsoft.AspNetCore.Http.SameSiteMode.None
    };
});

Похоже, исправление будет добавлено в 2.3 - Ошибка внешней аутентификации на iOS 12 # 2595

0 голосов
/ 25 сентября 2018

, поэтому я исправляю это, это аналогичное решение, но если вы используете внешний вход в систему, вы должны настроить внешний cookie на SameSite = SameSiteMode.None

services.ConfigureExternalCookie(options =>
        {
            options.Cookie.SameSite = SameSiteMode.None;
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...