В приложении есть особый тип юзеров, у которых отсутствует логин и пароль, при этом запись в табличке users для них создается. Смысл таких юзеров - демо доступ без регистрации, после ознакомления они могут завершить уже регистрацию.
Сейчас добавил листенер и перед заходом в контроллер пытаюсь сделать так:
$user = $this->userService->createDemoUser();
$token = new UsernamePasswordToken($user, 'main');
$this->storage->setToken($token);
$event = new InteractiveLoginEvent(Request::createFromGlobals(), $token);
$this->eventDispatcher->dispatch($event, 'security.interactive_login');
$session = $this->requestStack->getSession();
$session->set('_security_main', serialize($token));
После отрисовки странички видно что пользователь аутентифицирован (дебаг панель пишет Authenticated = true), но при обновлении страницы юзер теряется либо не распознается и считается что больше его нет.
Подскажите как сохранить сессию при обновлении страницы либо как аутентифицировать таких юзеров без кредов.