|
DomenForum - Замечания и предложения Размещайте Ваши вопросы, замечания и предложения по работе форумов в этой категории. |
|
Опции темы |
Сегодня | |||||
|
01.09.2009, 18:30 | #11 | |||
Реноме:
2906
|
Проблема даже не в этом, а в том, что на этих форумах точно есть совпадающие логины, при этом велик шанс того, что два разных человека могут использовать один и тот же логин. Такие проблемы разрулить уже сложнее. А в том, где будет храниться авторизация, особой проблемы нет. Так что, скорее всего, это так и останется предложением. Ибо разрешить такое не так уж и просто.
А вот вопрос доверия к провайдеру авторизации стоит очень остро. И это именно вопрос доверия. Вы готову дать базу форума стороннему человеку? Конечно можно пойти по другому пути, и хранить в общей БД только хэши паролей, а при авторизации генерировать хэш на стороне клиента с помощью js. Но все это теория. На практике - это гемор, потенциальные проблемы и вообще нафиг никому не нужно
__________________
Последний раз редактировалось Jet; 01.09.2009 в 18:32. |
|||
01.09.2009, 18:41 | #12 | |||
Реноме:
5025
|
В БД и так хранятся хеши паролей, в чистом виде их никто не хранит, а вот насчет поочередной авторизации для каждой части базы, я не совсем понял, что имелось в виду? А вот различные приписки, это уже бред, путаница будет. Авторизовать по паре логин/пароль можно, тут вопросов нет, но все равно, приписки здесь не котируются.
|
|||
01.09.2009, 18:54 | #13 | |||
Реноме:
2906
|
Да, действительно... но все равно, если нет доверя к провайдеру авторизации, хэши придется генерировать на клиентской стороне.
Если продолжить идею, то можно сделать вообще распределенную систему, с поочередным опросом всех форумов в этой сети. Но все это никому не нужно. Других вариантов нет. Кроме запрета авторизации, если на конкретном форуме уже зарегистрирован такой логин.
__________________
|
|||
01.09.2009, 19:05 | #14 | |||
Реноме:
5025
|
Я про то, что можно не объединять БД в одну, а хранить раздельно (или просто в разных полях). Если логин найден в БД форума 1, но пароль не подходит, проверить в БД форума 2 и т. д.
Если продолжить идею, то можно сделать вообще распределенную систему, с поочередным опросом всех форумов в этой сети. Но все это никому не нужно. Собственно, для тех, кто не в теме, немного опишу принцип кроссдоменной авторизации, он может пригодиться просто владельцам нескольких проектов, которые хотят создать из них единый портал. Итак, у нас существует база логинов, которая хранится на одном домене, назовем его auth.tld. И есть несколько проектов, которые существуют на разных доменах. На всех этих доменах ставится форма авторизации, у которой action указывает на auth.tld, также в скрытых полях указывается обратный адрес страницы (куда пользователя надо будет перенаправить после авторизации), и, по желанию, имя проекта. Когда данные пользователя приходят на auth.tld, скрипт сверяет его данные с хранимыми в базе, а также извлекает ключ из базы, которым необходимо зашифровать ответ. В ответе шифруется идентификатор пользователя, логин, и остальные данные, которые могут вам потребоваться. Этот шифр добавляется к адресной строке редиректа. При возвращении на сайт параметр auth (или как он будет указан) дешифруется ключом, который хранится на этом сайте (ключи у разных сайтов могут быть разными, для улучшения безопасности), и в распоряжении сайта оказываются нужные данные пользователя. Собственно все, никакой сложности, и такая авторизация оказывается совершенно прозрачной для пользователя, он не будет видеть перехода между ресурсами, разве что будет внимательно следить за статусной строкой браузера. |
|||
01.09.2009, 19:11 | #15 | |||
Реноме:
2906
|
Шуранов, о масштабируемости до 40 форумов даже и речи быть не может, это были всего лишь мои размышления о том, как сделать распределенную систему без единого центра. Хотя конечно, можно посылать запросы параллельно или сделать 40 радиобатонов на форме авторизации и посылать запрос только одному конкретному участнику сети
А вообще если что-то и делать, то обычный OpenID. Но это тоже нафиг никому не нужно
__________________
Последний раз редактировалось Jet; 01.09.2009 в 19:15. |
|||
01.09.2009, 22:20 | #17 | |||
Реноме:
518
|
Речь идет о форумах владельцами которых является Маул, как минимум это DF+Maul
незнаю не купилены ли еще mmpg и sape но если +1-3 форума то можно было бы задуматься о единой авторизации для всей связки. 2 Шуранов site1.com - форум (primary) site2.com - форум (secondary) site3.com - форум (secondary) допустим у нас идеальный случай с синхронизированной бд и клонов нет кроссдоменная авторизация это хорошо но мне кажется что она полностью не рещает вопрос, легче если это всё будет реализовано на движке одного из форумов(primary/secondary), а не как "внешние хранилище" для авторизации. задачи ведь следующие: - синхронная регистрация сразу на трех форумах - синхронный логин на трех форумах - синхронное изменения данных в профиле на трех форумах если есть primary откуда берутся данные и которые изменяются то легче будет работать. давайте конкретно обсудим реализацию этого на базе какого то из форумных движков vbulletin/IPB/Phpbb - какой движок кому ближе? неважно задумается ли Маул над этой идей сейчас или через пару лет, для некоторых создание связки из форумов может быть уже актуальным вопросом, своего рода - форумный кластер. |
|||
01.09.2009, 22:29 | #18 | |||
Реноме:
5025
|
А кроссдоменная авторизация не запрещает использовать на этом-же хосте форум. Внимательно прочитайте и вдумайтесь - проблемы для хранения всех логинов на том-же DF нет, форум точно также может выступать базой для кроссдоменной авторизации.
Но здесь скорее вопрос - задумается ли Маул вообще над такой задачей? Она не настолько актуальна, как кажется. |
|||
01.09.2009, 22:45 | #19 | |||
Тех. администратор
Реноме:
8693
|
Почитал я Вас, и подумал, а зачем это, собственно, надо - чтобы школята какая-нибудь с форума не о доменах заходила на ДоменФорум, чтобы оттянутся здесь, получить бан, а на том форуме не о доменах остатся чистеньким. Конечно, при такой перекрестной авторизации форумы будут все сразу просматриваться, поднимется посещаемость, и создадут темку - типа школьник Петя - нехороший пацак - зафлудил ДФ. Опять же, это тоже некому не нужно.
Даже если чисто теоритически, вот эта идея: Собственно, для тех, кто не в теме, немного опишу принцип кроссдоменной авторизации, он может пригодиться просто владельцам нескольких проектов, которые хотят создать из них единый портал.
Итак, у нас существует база логинов, которая хранится на одном домене, назовем его auth.tld. И есть несколько проектов, которые существуют на разных доменах. На всех этих доменах ставится форма авторизации, у которой action указывает на auth.tld, также в скрытых полях указывается обратный адрес страницы (куда пользователя надо будет перенаправить после авторизации), и, по желанию, имя проекта. Когда данные пользователя приходят на auth.tld, скрипт сверяет его данные с хранимыми в базе, а также извлекает ключ из базы, которым необходимо зашифровать ответ. В ответе шифруется идентификатор пользователя, логин, и остальные данные, которые могут вам потребоваться. Этот шифр добавляется к адресной строке редиректа. При возвращении на сайт параметр auth (или как он будет указан) дешифруется ключом, который хранится на этом сайте (ключи у разных сайтов могут быть разными, для улучшения безопасности), и в распоряжении сайта оказываются нужные данные пользователя. Собственно все, никакой сложности, и такая авторизация оказывается совершенно прозрачной для пользователя, он не будет видеть перехода между ресурсами, разве что будет внимательно следить за статусной строкой браузера. Да и проблема будет такая, что сервер авторизации допустим для 10 крупных форумов будет создан, но вдруг такой сервер упадет - ведь на него нагрузка такая же, как на десять логин-форм на форумах, и значит если сервер упал, то кто не залогинился, тот лох что ли? И будет отдыхать, пока сервер не поднимется В итоге не вижу никакой необходимости объединять даже два форума, даже на одной и той же версии одного и того же движка, даже свои форумы, и даже если несколько пользователей сидят и там, и там. По-моему, никакой выгоды, никаких плюсов это не привносит... |
|||
01.09.2009, 22:52 | #20 | |||
Реноме:
5025
|
Прочтя это, я подумал, что - да, это хорошо, можно так мои форумы объединить, да и с клонами по никам бы разобраться можно было бы, но потом подумал, что какой смысл в этом? Если пользователь регистрировался на одном форуме, а я допустим потом через несколько лет делаю какой-то свой OpenID среди определенной сетки форума - зачем я буду его против его воли регистрировать на каких-то других форумах - не важно: мой это форум или просто по партнерскому соглашению решили объединится базами. И зачем вообще это надо? Чтобы пользователь ушел вообще совсем навсегда на другой форум? А в случае если клоны по никам есть, то всякие префиксы DF_, Maul_, Sape_ - это вообще бред какой-то, форум роботов получается.
Да и проблема будет такая, что сервер авторизации допустим для 10 крупных форумов будет создан, но вдруг такой сервер упадет - ведь на него нагрузка такая же, как на десять логин-форм на форумах, и значит если сервер упал, то кто не залогинился, тот лох что ли? И будет отдыхать, пока сервер не поднимется В итоге не вижу никакой необходимости объединять даже два форума, даже на одной и той же версии одного и того же движка, даже свои форумы, и даже если несколько пользователей сидят и там, и там. По-моему, никакой выгоды, никаких плюсов это не привносит... |
|||
Реклама | |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | |
|
|