ROBOWEB : Документация : Установление подлинности HTTP : html, perl, cgi, php, css, 3dmax - 3D Studio русская документация с примерами программ, RTFM и описание протоколов, описание dreamweaver, все для вебдизайнера
Разработка сайтов, web дизайн - Центр Русского Дизайна HOD.RU
FLASH
3D Studio MAX
DreamWeawer FAQ
Изучение HTML
META тэги
CSS
Руководство по стилям
Спецификация WML (WAP)
Язык DHTML
Спецификация XML
Руководство по Java
Документация по JavaScript
Язык HOD Text Processor
Интерфейс CGI
Документация по Perl 5
Perl FAQ
Документация по PHP
PHP/FI 2.0
Документация по SQL
Базы данных
Доступ к БД

Рейтинг@Mail.ru Rambler's Top100

Веб дизайнеру
Каталог сайтов Axes.ru


Установление подлинности HTTP

Ловушки HTTP аутентикации в PHP/FI доступны только в случае, если пакет выполняется как модуль Apache. В программе для PHP/FI в виде модуля Apache , возможно использование команда Header() , чтобы послать сообщение "Authentication Required" к броузеру пользователя, которое приведет к появлению окна ввода с запросом Пользователь/Пароль (Username/Password). Как только пользователь ввел свое имя и пароль, URL, содержащий PHP/FI скрипт будет вызыван снова с переменными, $PHP_AUTH_USER, $PHP_AUTH_PW и $PHP_AUTH_TYPE установленными соответственно имени пользователя, его паролю и типу аутентикации. Только На текущий момент поддерживается только "Базовая"("Basic") аутентикация.

Фрагмент примерa скрипта , который запросит аутентикацию пользователя при обращении к странице:

<?
if(!$PHP_AUTH_USER) {
Header("HTTP/1.0 401 Unauthorized");
Header("WWW-authenticate: basic realm=\"My Realm\"");
exit;
} else {
     echo "Hello $PHP_AUTH_USER.<P>";
     echo "You entered $PHP_AUTH_PW as your password.<P>";
}
>

Вместо простого вывода $PHP_AUTH_USER и $PHP_AUTH_PW, вам возможно захочется проверить правильность имени пользователя и пароля. Возможно, посылая запрос к базе данных, или, осуществляя поиск пользователя в dbm файле.

Чтобы предотвратить вариант что кто-либо напишет скрипт, который показывает пароль для страницы, аутентикация которой была через традиционный внешний механизм, переменные PHP _AUTH не будут установлены в том случае, если рарешена внешняя аутентикация для этой конкретной страницы.

Обратите внимание однако, что вышесказанное не мешает кому-либо, кто контролировал не-аутентифицированные URL украсть пароль от аутентифицированных URL на том же самом сервере. PHP_AUTH_VARS определяется в php.h, может быть установлена в "неопределена", для того чтобы быть уверенным, что эти переменные никогда не будут установлены и таким образом отключить возможность использования mod_php для того чтобы пытаться украсть пароли.

[Назад] [Содержание] [Вперед]