Назад | Перейти на главную страницу

Базовое управление пользователями аутентификации

У меня есть 2 вопроса относительно Apache Basic Auth, которые я сейчас использую. У меня есть веб-сайт, который после определенного действия создает имя пользователя и пароль для базовой аутентификации, которые пользователь может использовать для доступа к службе.

На данный момент это работает нормально, но веб-сайт быстро набирает трафик, поэтому сейчас в базовом файле аутентификации много записей.

Вопрос 1) Есть ли ограничение на количество пользователей базовой аутентификации, которые может обрабатывать apache?

Вопрос 2) есть ли лучший способ управлять пользователями базовой аутентификации? Или какой-то тип доступа по имени пользователя / паролю

Спасибо

Есть ли ограничение на количество пользователей базовой аутентификации, с которыми может справиться apache?

Нет, Вы можете иметь столько ценностей, сколько хотите внутри .htpasswd но со временем производительность вашего сервера будет снижаться из-за большого количества операций чтения с диска..

есть ли лучший способ управлять базовыми пользователями аутентификации?

даиспользуйте mysql db для хранения пользователя / прохода и доступа к нему с помощью mod_authn_dbd.
В качестве альтернативы вы можете использовать php для "эмуляции" HTTP-аутентификация и запросите базу данных с информацией для входа, например:

<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
    header('WWW-Authenticate: Basic realm="My Realm"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'Text to send if user hits Cancel button';
    exit;
} else {
    //place the query logic here
    echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
    echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
}
?>