Авторизация
168 повідомлень
#15 років тому
Привет всем! 
Вот сейчас возник вопрос.
К примеру имеется 3 сайта:
на 3 сайтах есть определённых javascript код, который вызывается окно авторизации. расположенное окно на 4-ом. главном домене.
Юзер заполняет информацию и отправляет её, по идее он находится на 4-ом домене сейчас. И авторизироваться там же, не должно быть проблем.
Вопрос такой, CMS Joomla.
Как должно отправляться? метод: POST action: http://www.домен.ru/component/option,com_comprofiler/task,login/ - где домен.ru - это и есть 4-ый домен (глвный).
Можно начало на другую страницу, которая будет через curl отправлять данные.
Но что-то я уже сплю, и чего-то не понимаю, разве тогда запишется сессия юзеру? %)
П.С. не судите строго, что-то я запутался. :!:
168 повідомлень
22 повідомлення
#15 років тому
Если я правильно понял, нужно :Создать скрытый iframe, загрузить туда форму авторизации с 4 сайта, присвоить полям значения и отправить данные на 4 сайт. После чего удалить методами js скрытый фрейм со страницы.
168 повідомлень
#15 років тому
Цитата ("man777"):Если я правильно понял, нужно :
Создать скрытый iframe, загрузить туда форму авторизации с 4 сайта, присвоить полям значения и отправить данные на 4 сайт. После чего удалить методами js скрытый фрейм со страницы.
аа, точно!
Спасибо!)
3195 повідомлень
#15 років тому
Цитата ("man777"):Создать скрытый iframe
Предположу, что некоторые браузеры будут блокировать такие фреймы...
168 повідомлень
#15 років тому
Цитата ("AlekartRu"):Цитата ("man777"):Создать скрытый iframe
Предположу, что некоторые браузеры будут блокировать такие фреймы...
И как с этим бороться?
22 повідомлення
#15 років тому
Это же твой сайт. При загрузке у тебя будет просто div. Потом ты этому диву по ид меняешь содержимое, ставишь ему плавающий фрейм и далее по списку. Может, тебе еще и код готовый нужен? 
263 повідомлення
#15 років тому
Цитата ("snoop15"):Цитата ("man777"):Если я правильно понял, нужно :
Создать скрытый iframe, загрузить туда форму авторизации с 4 сайта, присвоить полям значения и отправить данные на 4 сайт. После чего удалить методами js скрытый фрейм со страницы.
аа, точно!
Спасибо!)
Не сочтите за труд, напишите если получится. А то "загрузить туда форму", наверное, еще можно, а вот "присвоить полям значения" уже, наверное, не выйдет - иначе это был бы прекрасный способ для атак XSS.
22 повідомлення
263 повідомлення
#15 років тому
Цитата ("man777"):... посилання
Да, интересная статья, особенно понравилась фраза:
Цитата:
Основной реальный минус, ... - это конкретный хак.
Сильно, сказано, конкретно сильно. Правда, вот такое утверждение:
Цитата:
...обход ограничения HTTP 1.1 на соединения: не более двух одновременных запросов к серверу(домену/порту/протоколу).
уже наводит на мысль о том, что маленькая некомпетентность рождает большое недоверие - слегка перефразируя старую поговорку. А так, следуя этим советам, вполне можно сделать замечательный JS скрипт который кое-где будет работать, кое-где - нет. Но ведь это это делает жизнь пользователя и ярче и интереснее.
205 повідомлень
#15 років тому
Цитата ("snoop15"):Цитата ("AlekartRu"):Цитата ("man777"):Создать скрытый iframe
Предположу, что некоторые браузеры будут блокировать такие фреймы...
И как с этим бороться?
просто делать ифрейм больше чем 1*1 px
22 повідомлення
#15 років тому
Причем тут размер фрейма?
<div id="edit"></div>
<script>
mid=document.getElementById('edit');
mid.innerHTML='<iframe src="site2.ru/auth.php">'
//... Далее, по тексту...
</script>
584 повідомлення
#15 років тому
Оффтопик
Не советовал бы, страдать этим.
Завтра обновят политику безопасности броузера и половина костылей вылетят,
а это будет проблема и для Вас и для ваших пользователей, т.к. они привыкнут к этой фишке.
Гораздо лучше использовать:
запомнить
плюс ко всему во всез браузерах есть опция автозаполнения, кому надо, тот ей пользуется..
Думаю, даже на 10 сайтах, можно раз в месяц сделать 10 логинов.
Завтра обновят политику безопасности броузера и половина костылей вылетят,
а это будет проблема и для Вас и для ваших пользователей, т.к. они привыкнут к этой фишке.
Гораздо лучше использовать:
запомнить
плюс ко всему во всез браузерах есть опция автозаполнения, кому надо, тот ей пользуется..
Думаю, даже на 10 сайтах, можно раз в месяц сделать 10 логинов.
Ну, а по теме, не мешало бы сходить в поиск по ключу: "кросс доменная авторизация" и
прочитать хотя-бы первые 10 постов. Имхо информации вполне достаточно.
584 повідомлення
#15 років тому
Цитата ("man777"):Если я правильно понял, нужно :
Создать скрытый iframe...
Все верно, примерно так:
1. Авторизация на сайте - А
2. Формирование скрытого фрейма с полями авторизации для других сайтов:
- microsoft.com/auth.php?userid=15&authhash=C2A5E12A56C2E
- yandex.ru/auth.php?userid=15&authhash=B2F5E12A56C2E
- google.com/auth.php?userid=15&authhash=AA8B5E12A56C2E
3. На этом этапе мы авторизованы на 4х сайтах...
Разумеется на 3х остальных нужно иметь обработчик auth.php
22 повідомлення
#15 років тому
Ну, с get-авторизацией тоже можно, правда, как правильно заметил SField , желательно еще передавать параметр, указывающий, что это автоматическая авторизация, а не кто-то от пытается напрямую войти.Хеш может быть типа md5($login.$pass.$date.$salt), где $data - текущая дата, а $salt - параметр, известный обоим сайтам и меняемый каждый день.
168 повідомлень
#15 років тому
Если честно, то мне не нужно авторизировать пользователя на всех сайтах.А на одном с других :idea:
22 повідомлення
#15 років тому
Ну, к другим то доступ у тебя есть? Юзай технологию OpenID. Можешь даже свою реализацию написать.