Возможно ли для iframe иметь другой сеанс? - PullRequest
0 голосов
/ 18 октября 2011

Я хочу создать инструмент администратора, с помощью которого я могу «выдавать себя» за пользователей своего сайта, не теряя сеанса в качестве администратора.

Я хотел бы иметь возможность открыть iframe, который будет просматривать веб-сайт "как пользователь", не меняя состояния страницы, открывшей iframe.

Это возможно? Есть ли лучший способ сделать это?

Ответы [ 2 ]

1 голос
/ 18 октября 2011

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

Во-первых, я бы сказал, что вы неправильно спланировали свое приложение, если олицетворение сеанса является единственным способом, которым вы можете просматривать свой сайт как другого пользователя, сохраняя при этом свойЛогин администратора не поврежден.

Один из способов сделать это, и опять же это предполагает, что вы используете PHP, а также функции управления сессиями по умолчанию внутри, и у вас нет собственного обработчика сессий, чтобы загрузитьURL-адрес iframe с параметром ?PHPSESSID=sessionidhere.

Лучший способ сделать это - создать свой сайт и аутентифицировать пользователей с помощью своего рода пользовательского объекта, а затем добавить некоторый параметр URL-адреса, такой как ?userbrowseid=123* 1009.*

Затем, когда вы загрузите страницу, ваш код будет проверять, существует ли параметр, если вы уже вошли в систему как администратор.Затем страница будет перезаписывать ваш текущий пользовательский объект пользовательским объектом пользователя с идентификатором 123.Необходимо предпринять шаги, чтобы убедиться, что ваши сеансовые куки-файлы не перезаписаны объектом, имитирующим пользователя.Как и в случае с iframe, ваш сайт будет работать как администратор, а iframe будет загружен как объект пользователя.

1 голос
/ 18 октября 2011

Возможно, но есть немного "но":)

Просто пара вариантов для начала:

  1. Использовать токены сеансов на основе URL (как в случае с сервлетами Java, когда у вас отключены куки)
  2. Использование разных доменов для "обычного" сайта и интерфейса администратора

iframe сам по себе вам мало чем поможет: он всегда будет делиться своими куки с браузером. Поэтому, чтобы избежать этого, вы можете использовать любой из перечисленных выше вариантов, но это не зависит от iframe.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...