Аутентификация CMS без базы данных для одного пользователя


Предыстория: Моему клиенту нужен однопользовательский простая система управления контентом, которая должна быть способна

  • Редактирование текстового содержимого в виде обычного текста или в стиле WYSIWYG
  • Возможно создание новых подстраниц
  • Обновить галерею изображений, т.е. загрузить файлы
  • Удалить ранее загруженные файлы

Нет необходимости в комментариях или подобных взаимодействие.

Требования:

  • PHP
  • JavaScript
  • Нет базы данных

В настоящее время я планирую закодировать его с нуля, так как функциональные возможности несколько просты.

Каков наилучший доступный метод аутентификации для этого одинокого администратора контента? Варианты, которые пришли мне в голову первыми:

  1. .решение на основе htaccess и .htpasswd
  2. жестко закодированный, засоленный, зашифрованный пароль PHP с сессий.

Хотя вариант 2 определенно более элегантен, я хотел бы, чтобы варианта 1 было достаточно. Комбинация имени пользователя и пароля будет находиться за пределами структуры папок public_html/www.


Реальный вопрос: Достаточна ли аутентификация .htaccess и .htpasswd? Достаточно ли это с точки зрения безопасности? Каковы возможные подводные камни? (Хорошо, выход из системы - это довольно серьезная ошибка, так как ее практически невозможно реализовать из-за HTTP/1.1 без сохранения состояния спецификация...)

Бонусный вопрос 1: Каковы другие хорошие варианты, о которых я не подумал? Готовые идеи всегда приветствуются. Редактирование электронной почты? Почему бы и нет:-)

Бонусный вопрос 2: Существуют ли в наличии аналогичные CMSE без базы данных?

Пожалуйста, имейте в виду, что нет необходимости в большем количестве пользователей или управлении пользователями. Я спрашиваю не о советах по программированию, а скорее о том, как это можно сделать.


RFC 2617, который я нашел по ссылке Пирса ниже, отвечает на большинство моих реальных вопросов

Author: Jari Keinänen, 2010-12-08

1 answers

Если есть только один пользователь, то подойдет какая-то HTTP-аутентификация. Я бы предложил использовать Дайджест, а не обычную аутентификацию. Я знаю, что вы не искали советов по программированию, но вы, вероятно, могли бы сэкономить себе немного времени, прочитав это.

Несколько CMSE без базы данных выглядят следующим образом:

 3
Author: Piers Karsenbarg, 2010-12-08 13:02:54