qkowlew: На Зилантконе меня сфоткали мыльницей. Мыльницам не позирую! (Default)
[personal profile] qkowlew
Из всех поставленных в разное время на мои сервера клиентами CMS я так и не нашёл ни одной, которая удовлетворяла бы специфическому набору требований параноика:

Все CMS построены как один движок, в который может залогиниться в одном и том же поле как админ, так и модератор, так и посетитель.

С моей же точки зрения правильно построенная CMS обязана иметь иерархическую структуру следующего типа:

  1. Анонимному пользователю показывается сайт domain.ru, движок которого не имеет прав на запись в файловую систему своего каталога, имеет доступ к SQL базе как user1 с отдельным паролем и имеет права в базе ТОЛЬКО НА ЧТЕНИЕ.
  2. Залогиненный посетитель попадает на сайт www.domain.ru, движок которого "держит авторизацию" и имеет доступ к SQL базе как user2 с возможностью писать только в строго определённые таблицы.
  3. Модераторы попадают на сайт (случайное имя).domain2.ru, движок которого "держит авторизацию" и имеет доступ к SQL базе как user3 с возможностью писать только в строго определённые таблицы, более широкого списка, нежели простой посетитель.
  4. Администратор имеет вход на специальный сайт В ДРУГОМ ДОМЕНЕ И НА ДРУГОМ IP, доступ к которому по умолчанию закрыт для всех IP вообще, и только после предварительного входа для его текущего IP открывается правило файрволла, по которому уже логинится отдельным логином и паролем админ. Этот движок имеет как user4 полный доступ ко всей базе и ко всей файловой структуре всех четырёх движков.


Зачем разные и, особенно, СЛУЧАЙНЫЕ доменные имена?
Чтобы ворованные куки не могли быть использованы напрямую, кроме как в тот же момент времени.

При таком построении SQL Injection были бы просто невозможны.
Заметим, что технически всё это на современном mySQL реализуется тривиально.

Но никто так не делает. :(
This account has disabled anonymous posting.
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org