KarleKremen
@KarleKremen
Игнорирую Bootstrap

Модульная система на PHP, как защитить?

Возникла необходимость написать проект на PHP5, так называемое ядро для последующего написания и подключения к нему модулей. Проект рассчитывается на то, чтобы модули к нему писались не только моими руками, но и другими пользователями. Если конкретнее, модуль будет скорее всего представлен в виде файла, содержащего класс модуля. Сейчас же меня интересуют следующие пункты:
  • Как ограничить модулю доступ к базе данных в пределах одной таблицы?
  • Как запретить модулю include файлов ядра?
  • Как запретить модулю выполнение некоторых функций в любом проявлении?

Не подскажете, куда курить, какие библиотеки или способы применят?
  • Вопрос задан
  • 421 просмотр
Решения вопроса 1
MetaDone
@MetaDone
Хорошо сформулированный вопрос - 50% решения
модуль будет скорее всего представлен в виде файла, содержащего класс модуля

Как ограничить модулю доступ к базе данных в пределах одной таблицы

судя по всему будет аццкая смесь из запросов к базе и логики. В общем одним классом-файлом тут не обойтись
Почитайте про инверсию контроля и внедрение зависимости, вопросы отпадут.
Получится что пользовательский модуль будет использовать только то, что ваше "ядро" ему передаст и ничего более.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@novrm
Может не совсем понял - но вы пишите свой велосипед-фреймворк...
Чем вам не угодили, например, Zend или Symfony?

Да - еще - используйте принцип: - один класс - один файл - единственная ответственность.
А то, как я понимаю, ваш класс-модуль будет и подключать другие модули и с базой данных работать и какие-то еще другие функции выполнять... Это дорога в пекло...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы