Задать вопрос

Как правильно установить HttpOnly куки для сессий в symfony4?

Здравствуйте, в symfony4 в framework.yaml есть такая настройка:
session:
        handler_id: ~
        cookie_secure: auto
        cookie_samesite: lax
        cookie_httponly: true # <--- вот эта


В качестве эксперимента в index.php стартую сессию:
$session = new Session();
$session->start();


Открываю страницу в хроме, смотрю куки через document.cookie, PHPSESSID видно.
Так и должно быть? что я делаю не правильно? Или это баг симфони? Или устаревший файл настроек, который более не используется?

И второй вопрос:
В контроллере можно получить экземпляр сессии следующими путями:
1) $session = $request->getSession();
2) через SessionInterface $session
3) $session = new Session();
Интересует, можно ли делать третьим способом, особенно в классах, а не в контролерах, что бы не передавать в каждый класс параметр $session, использующий к примеру логин пользователя.
Третий способ работает, но смущает что в документации, в примерах сессию получают только первыми двумя способами.
  • Вопрос задан
  • 281 просмотр
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
Minifets
@Minifets
Hello world!!!
1) cookie_httponly по умолчанию стоит true. Не нужно ее прописывать в конфиг.
2) У меня на версии 4.2 все работает. PHPSESSID создается с параметром http и не доступна через js. Так что проблема локальная, и помочь вам вретли кто-то сможет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы