LINUX.ORG.RU

Не понимаю аутентификацию/авторизацию в Apache


0

1

Вот в апаче есть модуль mod_auth ( http://httpd.apache.org/docs/2.2/howto/auth.html ).
В зависимости от директивы AuthType он использует один из нескольких других модулей, например
mod_auth_basic
mod_auth_digest
mod_auth_kerberos (http://modauthkerb.sourceforge.net/)

Вопрос 1:
а где, собственно
mod_auth_ssl (mod_ssl - это про транспорт, а здесь я имею ввиду спрашивание клиентских сертификатов)
mod_auth_ntlm
mod_auth_negotiate

Вот дальше, от пользователя получается нечто, что можно проверять в некоторой базе данных. И делается это при помощи модулей mod_authn_XXX

Вопрос 2:
почему модуль mod_auth_sspi ( http://sourceforge.net/projects/mod-auth-sspi/ ) называется не mod_authn_sspi

Дальше, после того, как пользователь доказал, что он - это он,
происходит проверка прав доступа на конкретные объекты, делается это при помощи модулей mod_authz_XXX

Вопрос 3:
А зачем mod_authnz_ldap собран в один модуль, а не в два. Что делать, если я хочу определить имя пользователя по сертификату SSL, а права пользователя получить из LDAP ?

Вопрос 4:
А где модули типа mod_authz_postgres чтобы права доступа хранились в БД?

И шо он дает?

Большое подозрение, что он таки не нужен. Ведь три строчки на пхп (железная проверка):

session_start(); $u=false; $pwd = 'password';
if ($_POST['pwd']!=$pwd and $_SESSION['pwd']!=$pwd and ($_POST['pwd'] or $_SESSION['pwd'])) {header("location: adm.html"); echo 'Перейдите на <a href="adm.html">страницу входа</a>.'; exit ();}
Elseif ($_POST['pwd']  == $pwd) {$_SESSION['pwd']=$_POST['pwd']; $u=true;}
Elseif ($_SESSION['pwd'] == $pwd ) {$u=true;}
Если многопользовательская аутентификация, то будет четыре строчки, еще с обращением к бд...

moscwich ()

считай эволюция

переименование модулей относительно жизни апачи недавно задумали http://httpd.apache.org/docs/2.2/new_features_2_2.html#module, еще не все переименовали-перепилили, про mod_authnz_ldap там же упоминается.

«*-nz» - значит модуль и юзера определаяет и права его проверяет, можно и по отдельности эти функции запользовать.

стороние модули живущие своей жизнью так и остались не переименованными.

у нас все виды аутентификации одновременно (в разных хостах-локейшенах) используются - и сертификаты и digest и basic.

и сертификаты и пароли в ldap-е живут, и права доступа там же.

dab18 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.