mod_authnz_external является модулем Apache используется для проверки подлинности. Эти два модуля обеспечивают в основном ту же функциональность, и отличаются в основном тем, как они взаимодействовать с другим кодом аутентификации в Apache.
Для Apache 2.1 и позже, mod_authnz_external следует предпочтительнее.
Апач HTTP Демон может быть настроен требовать от пользователей, чтобы предоставить логины и пароли, прежде чем доступ к страницам в некоторых каталогах. Аутентификация это процесс проверки, если пароль правильный дано для пользователя. Apache имеет стандартные модули аутентификации из нескольких различных видов баз данных. Внешний модуль аутентификации обеспечивает гибкий инструмент для создания системы аутентификации, основанных на других базах данных.
Модуль может быть использован в любом из двух расходящихся несколько способов:
Внешняя Аутентификация:
Когда пользователь подает логин и пароль, mod_auth * _external запускает программу вы пишете, передавая ему логин и пароль. Ваша программа делает то, что проверка и лесозаготовки она должна, а затем возвращает Accept / Reject флаг Apache.
Это медленнее, чем делать аутентификацию внутри, потому что он имеет накладные расходы запуска внешней программы для каждого аутентификации. Тем не менее, есть по крайней мере две ситуации, когда это очень полезно:
Быстрое прототипирование. Mod_auth * _external делает очень хороший швейцарский армейский нож аутентификатор. Вы можете быстро собрать собственные системы аутентификации для многих странных приложений аутентификации. Внешняя программа аутентификации может быть скрипт на Perl или программа. Это можно записать, не зная много о строительстве модулей Apache. Ошибки в нем не будет угрожать общей целостности сервера Apache.
Ограничения доступа. Есть ситуации, когда вы не хотите, чтобы ваша база данных пользователя для чтения на идентификатором пользователя, что Apache работает под. В этих случаях внешняя программа аутентификации может быть SUID программы, который имеет доступ к базам данных Apache не может получить доступ. Например, если вы хотите, чтобы аутентификации из базы паролей Unix теневой, и вы не настолько глуп, чтобы запустить Apache, как корень, тщательно написанная SUID корень программа внешний аутентификации может сделать всю работу за вас. Такое аутентификации для теневых файлов паролей и PAM (pwauth) поставляется отдельно.
Запрограммированные проверки подлинности:
Некоторые крючки были вставлены в mod_auth * _external, чтобы сделать его легко заменить вызов внешней программы аутентификации с вызовом к жестко внутренним распорядком аутентификации, вы пишете.
Это своего рода полпути меры к просто писать свой собственный модуль Apache с нуля, что позволяет легко брать некоторые из логики от mod_auth * _external. Это немного более опасны, чем с использованием внешнего аутентификатор, а ошибки в модуле может привести к сбою Apache, но производительность, как правило, лучше.
Я думаю, что mod_auth * _external является лучшим решением для текущего аутентификации из тени паролем файлов и других подобных приложений. . Для быстрого прототипирования и простой способ для создания собственных модулей, mod_perl может быть лучшим решением в некоторых случаях
Требования
- Apache 2.1
Комментарии не найдены