Apache2 mod_dbd - указать тип шифрования для использования MySQL PASSWORD ()? - PullRequest
0 голосов
/ 20 сентября 2011

Я бы хотел защитить свою область phpmyadmin с помощью Apache2 mod_dbd Basic Auth, и я хотел бы использовать базу данных «mysql» и таблицу «user» для аутентификации.(Что, на мой взгляд, имеет смысл.)

Проблема, с которой я столкнулся, заключается в шифровании пароля для этой таблицы, в котором для хранения пароля пользователя используется функция MySQL PASSWORD ().

Я немного поработал и не могу понять, можно ли вообще использовать таблицу user 'в mysql из-за этого, поскольку Apache будет использовать только те типы шифрования, которые указаны в на этой странице .

Итак, в крайнем случае, я хотел бы знать, удалось ли кому-нибудь успешно это сделать?

1 Ответ

1 голос
/ 20 сентября 2011

К сожалению, это невозможно - mod_authn_dbd на самом деле не проверяет сам пароль, а вместо этого действует как источник для хэша пароля, который Apache позже проверяет, используя отдельный модуль авторизации, такой как mod_auth_basic или * 1003. *. Таким образом, вам нужно будет найти модуль авторизации, который напрямую поддерживает хеш-формат MySQL PASSWORD(), который, как я считаю, не существует.

Конечно, вы можете добавить дополнительный столбец в таблицу MySQL user для Apache-совместимого хэша пароля. Вряд ли это будет лучше, чем просто хранить отдельную базу данных аутентификации, хотя, например, вам придется обновлять ее вручную всякий раз, когда вы делаете новый GRANT, - так что, вероятно, это не стоит делать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...