Обновленный с разъяснениями
Здравствуйте,
Когда наши пользователи переходят в http://mysubdomain.server.com/login
они перенаправляются к https://secure.server.com/login?subdomain=mysubdomain
. Таким образом, фактическая страница входа в систему расположена на secure.server.com
субдомен.
Проблема - это, если пользователь входит в систему с учетными данными, предназначенными для subdomainA
и говорит Firefox помнить пароль, браузер автоматически заполнит форму входа в систему, даже если пользователь посетит страницу входа в систему, означающую входить subdomainB
.
Firefox предполагает, что вход в систему формируется на secure.server.com/login?subdomain=subdomainA
то же с тем на secure.server.com/login?subdomain=subdomainB
.
Сначала, я думал, что Firefox помнит пароли на основе комбинации URL и name
атрибут формы, но я попытался измениться name
на основе субдомена (name="login-<subdomain_name>"
), и это все еще не работает.
Как я могу заставить Firefox помнить пароли за subdomainA
и для subdomainB
отдельно, и не вместе?
Я не мог понять, каковы ваши настройки, но вы можете включить отладку диспетчера входа в систему и проверить, что делает Firefox. Вы также можете проверить файл signons.sqlite в своем профиле , чтобы увидеть, какие фрагменты данных сохраняются при входе в систему.
Я думал, что для веб-форм он отключал URL-адрес отправки формы, но моя память об этом сомнительна.
[edit]
source (nsLoginManager.js) говорит, что он использует только действие формы
и URL страницы, и он использует не сам URL действия / страницы, а (см. _getPasswordOrigin
) комбинацию схемы + хоста + порта.
Если они действительно вводят данные в http, чтобы их перенаправили на https после входа , разве это не плохой сценарий? Вы уже отправляете по сети самые конфиденциальные данные в незашифрованном виде.
Я считаю, что лучшим решением было бы перенаправить их на сайт https и войти там ... Что-то мне не хватает в вашей настройке? Входят ли они снова на защищенный сайт?
Если используется прекрасная абстракция базы данных, такая как ADODb , то потребуется создать запрос вставки.
Это пример вставки с использованием ADODb :
$data['col1'] = 'value1';
$data['col2'] = 'value2';
$data['col3'] = 'value3';
$result = $adodb->AutoExecute($tablename, $data, 'INSERT');
Поскольку результат json _ кодировать
уже массив
, он подходит идеально. Если определение столбца в базе данных допускает null
, то отсутствующий столбец в $ data
по-прежнему будет допустимой вставкой.
Это работает в некоторых условиях:
$ ("div [custom\\: attr]")
Однако для получения более подробной информации о методе см. данный подключаемый модуль jQuery пространства имен XML
-121--1298802- Имя домена AFAIK (полный) является текущей основой Но это было не всегда так. Я не уверен в протоколе или номере порта, но a.domain.com
отличается от b.domain.com
и domain.com
, но совпадает с a.domain.com/где-то
.