Существует простая аунтентификация пользователей средствами Apache
Пример: .htaccess
AuthType Basic
AuthName «Administrator area:»
AuthUserFile /home/test/.users
AuthGroupFile /home/test/.groups
require valid-user
Местонахождение .htaccess — /home/test/public_html
Аутентификация происходит нормально, но я немогу узнать принадлежность аутунтифицированного пользователя к его группе, которая в свою очередь прописана в /home/test/.groups.
Содержание /home/test/.users
user_name:password_hash
Содержание ./home/test/.groups
100: user_name
/etc/groups
users::100:
Не могу получить принадлежность пользователя к группе.
вывожу: <?php echo $_SERVER; ?>
Array
(
[AUTH_TYPE] => Basic
[DOCUMENT_ROOT] => /home/test/public_html
[HTTP_ACCEPT] => text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
[HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.7
[HTTP_ACCEPT_ENCODING] => gzip,deflate
[HTTP_ACCEPT_LANGUAGE] => en-us,en;q=0.5
[HTTP_CONNECTION] => keep-alive
[HTTP_COOKIE] => PHPSESSID=07010e509a2d0552e134e1b184870863
[HTTP_HOST] => info
[HTTP_KEEP_ALIVE] => 300
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20040913 Firefox/0.10
[PATH] => /sbin:/bin:/usr/sbin:/usr/bin
[REMOTE_ADDR] => 192.168.0.27
[REMOTE_PORT] => 4959
[REMOTE_USER] => user_name
[SCRIPT_FILENAME] => /home/test/public_html/view
[SERVER_ADDR] => 192.168.0.1
[SERVER_ADMIN] => admin@test
[SERVER_NAME] => test
[SERVER_PORT] => 80
[SERVER_SIGNATURE] =>
Apache/1.3.31 Server at test Port 80
[SERVER_SOFTWARE] => Apache/1.3.31 (Unix) PHP/4.3.7
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /view/test
[SCRIPT_NAME] => /view
[PATH_INFO] => /test
[PATH_TRANSLATED] => /home/test/public_html/test
[PHP_SELF] => /view/test
[PHP_AUTH_USER] => user_name
[PHP_AUTH_PW] => password
)
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Насколько я понял, Apache не передает группу пользователя вместе с его логином и паролем. Точнее будет сказать, группа пользователя не присутствует в перемменных окружения Apache.
Для получения группы необходимого пользователя можно написать клас, который будет обрабатывать файл .groups и возвращать группу для конкретного пользователя.