Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Безопасный обмен данными между сайтами, нужен совет по реализации

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Needless
Отправлено: 13 Июля, 2012 - 12:28:47
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2012  


Помог: 0 раз(а)




Ситуация такая, есть около 10 сайтов(с технической точки идентичные друг другу), где в каждом есть пользовательские профили ссылающиеся друг на друга. То есть пользователь сайта 1 (смотри вложение рисунок) может быть закреплен за пользователем как своего сайта, так и за пользователем любого другого сайта, со всеми другими ситуация идентичная... Посоветуйте как лучше реализовать данную схему.

ИМХО подход с 10 сайтами сложился исторически и приходится отталкиваться от этой ситуации

Я хочу реализовать схему так:
1. На сайте 1 есть единая база всех пользователей и отношений между ними, в случае добавления пользователя на любом из сайтов там он добавляется тоже.
2. На остальных сайтах есть локальные пользователи и случае, если необходима информация о каком-то пользователе находящемся вне базы, то я делаю запрос к базе главного сайта.

Плиз скажите как лучше это было бы реализовать и обеспечить безопасную передачу данных.

Думаю о обращению к скриптам на каждом сайте, при помощи https.
Прикреплено изображение (Нажмите для увеличения)
схема.png
 
 Top
DeepVarvar Супермодератор
Отправлено: 13 Июля, 2012 - 12:38:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




С чего вы взяли что база зависима от сайта?
Делайте одну базу, которая содержит все данные.
И пусть хоть сто сайтов к ней обращаются.
Не справляется сервер с БД? Распределяйте базу на несколько серверов.
Сайты тут вообще ни при чем.
 
 Top
sheff2000
Отправлено: 13 Июля, 2012 - 15:46:24
Post Id


Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Дек. 2011  


Помог: 2 раз(а)




Needless пишет:
Плиз скажите как лучше это было бы реализовать и обеспечить безопасную передачу данных.

Думаю о обращению к скриптам на каждом сайте, при помощи https


DeepVarvar
наверное самое правильно решение Вам предлагает

1.
Делаете одну БД с пользователями
(можно и для контента всех сайтов - тогда разделяйте таблицы разных сайтов префиксами)
2. Каждого пользователя маркируете по какому то полю - выставляете принадлежность к тому или другому сайту.
Содержимым такого маркера может выступать название префикса таблиц определенного сайта (для простоты генерации скриптов выборки из БД на сайтах). Сразу зарезервируйте пару маркеров, которые буду означать "супер-пользователей" (имеют доступ на всех сайтах к примеру)

3. Непосредственно сайты могут физически находится на одном сервере (либо стойке серверов. это уже от нагрузок)
В таком случаи безопасность передачи данных от БД к сайту обеспечивается безопасностью выполнения скрипта на сервере. Передача данных по внешним каналам не происходит.

UPD.
Если я правильно понял Вашу задачу, то схема взаимосвязи у Вас должна преобразоваться примерно в такую как на рисунке (очень упрощенно конечно).
Прикреплено изображение (Нажмите для увеличения)
счема_свема.JPG

(Отредактировано автором: 13 Июля, 2012 - 15:57:09)

 
 Top
Needless
Отправлено: 14 Июля, 2012 - 10:47:13
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2012  


Помог: 0 раз(а)




вы правы, подход с одной базой будет правильнее и проще. Возникает проблема обращения к базе с других сайтов. На хостингах доступ к базе доступен только через localhost. Как лучше реализовать взаимодействие с базой из вне ? Я думаю может быть soap или xml-rpc... Подскажите как лучше будет.
 
 Top
snikers987
Отправлено: 14 Июля, 2012 - 14:52:13
Post Id



Участник


Покинул форум
Сообщений всего: 1239
Дата рег-ции: Сент. 2011  
Откуда: Крым


Помог: 25 раз(а)




Needless пишет:
вы правы, подход с одной базой будет правильнее и проще. Возникает проблема обращения к базе с других сайтов. На хостингах доступ к базе доступен только через localhost. Как лучше реализовать взаимодействие с базой из вне ? Я думаю может быть soap или xml-rpc... Подскажите как лучше будет.

Очевидно же, что проще взять хостинг на котором можно разрешить доступ к бд из вне, и разрешить обращение с нужных ip.


-----
Когда всматриваешься в тёмную бездну, учти, что кто-то может смотреть на тебя из неё...
 
My status
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB