Рейтинг:-2

Как сделать так, чтобы пользователи оставались авторизованными на разных устройствах?

флаг pe

https://api.drupal.org/api/drupal/core!modules!user!user.module/function/user_login_finalize/9.2.x восстанавливает сеансы каждый раз, когда пользователь входит в систему. Это может стать небольшой проблемой, если пользователь, например, переключается между работой между разными устройствами (например, мобильным телефоном + ноутбуком). Есть ли способ заставить пользователя оставаться в системе на разных устройствах?

4uk4 avatar
флаг cn
Вы можете оставаться в системе на любом количестве устройств/браузеров. На уровне пользователя все, что вы храните в одном месте, будет доступно везде. Однако невозможно совместно использовать сеанс PHP. Но в Drupal мало что зависит от сеанса PHP. Можете ли вы уточнить, что вы имеете в виду под небольшими проблемами?
apaderno avatar
флаг us
Drupal не уничтожает существующую сессию; он просто копирует данные из существующего сеанса в новый. В противном случае в нем будет строка `\Drupal::service('session')->migrate(TRUE);`. (`migrate()` использует `FALSE` в качестве значения по умолчанию для `$destroy`, первого параметра.)
apaderno avatar
флаг us
Если вы имеете в виду, что пользователи, которые входят в систему с другого устройства, выходят из системы с устройства, которое они использовали ранее, это может быть следствием вызова [`session_regenerate_id()`](https://www.php.net/session_regenerate_id). : * В настоящее время session_regenerate_id плохо справляется с нестабильной сетью, например. Мобильная и Wi-Fi сеть. Таким образом, вы можете столкнуться с потерей сеанса, вызвав session_regenerate_id.*
apaderno avatar
флаг us
`\Drupal::service('session')->migrate()` вызывает `NativeSessionStorage::regenerate()`, который вызывает `session_regenerate_id()`, что может привести к потере сеанса при использовании мобильного или Wi-Fi сеть.
4uk4 avatar
флаг cn
Здесь Drupal переносит анонимный сеанс в аутентифицированный. Вы не можете потерять другие сеансы, это влияет только на данные сеанса, которые пользователь мог сгенерировать при посещении сайта в новом браузере без немедленного входа в систему.
Рейтинг:2
флаг id

Нет, не совсем. Здесь нет практичный способ поделиться одним и тем же сеансом между устройствами или между разными браузерами на одном устройстве.

Если вы хотите упростить переход между устройствами, интеграция единого входа (SSO), которая использует популярные источники учетных записей (например, Google) май улучшить пользовательский опыт. Существуют различные варианты SSO.

флаг id
Это не ограничение Drupal.Именно так работают браузеры и файлы cookie.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.