Flask - Как получить доступ к токену Remember_me во всех поддоменах - PullRequest
1 голос
/ 23 апреля 2019

Я пытаюсь создать приложение, используя Flask с более чем 9 контроллерами, некоторые из них находятся в разных поддоменах.

Я использую Flask_Login , чтобы разрешить пользователям вход в систему, контроллер пользователей существует в отдельном поддомене, проблема возникает, если я посетил этот поддомен, в моей консоли отображается перенаправление для входа пользователя в систему первым получить доступ к этому поддомену, а внутри куки я не вижу токен Remember_me.

Вот конфигурации для расширения:

SERVER_NAME = 'localhost:5000'

# Login configurations
REMEMBER_COOKIE_DURATION = timedelta(seconds=7*24*60*60)
REMEMBER_COOKIE_NAME = 'myapp.remember'
REMEMBER_COOKIE_SECURE = True
REMEMBER_COOKIE_HTTPONLY = True
REMEMBER_COOKIE_REFRESH_EACH_REQUEST = True
REMEMBER_COOKIE_DOMAIN = '.localhost:5000'

from .controllers.client import client_route

app.register_blueprint(client_route, subdomain='client')

Домен внутри куки: localhost , как я могу изменить его на что-то вроде .localhost ??

1 Ответ

0 голосов
/ 24 апреля 2019

Вам необходимо установить REMEMBER_COOKIE_SECURE в вашей конфигурации на False

Согласно документации Flask-Login :

Ограничивает область действия cookie «Запомнить меня» для защиты каналов (обычно HTTPS).

Он устанавливает cookie только для HTTPS-версии вашего приложения.

...