URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 5392
[ Назад ]

Исходное сообщение
"Надежность аутентификации по сертификату в httpd"

Отправлено MarvinD , 27-Окт-16 12:04 
Изучаю вопрос замены запроса логин/пароль при авторизации на странице php с логин/пароль на запрос сертификата. Насколько я понимаю, после того, как httpd принял сертификат пользователя, можно в полной мере доверять переменным $_SERVER[SSL_CLIENT_*], полученным от сертификата? Ну там [SSL_CLIENT_S_DN_CN] в качестве username, [SSL_CLIENT_I_DN_Email] в качестве email и прочее (там уж по желанию).

Ошибиться нельзя, т.к. в данном случае я не просто разрешаю/отклоняю доступ к какой-то директории на сервере, а пускаю пользователя на основании данных от его сертификата к его переписке.

Я правильно понимаю, что эти переменные ($_SERVER[SSL_CLIENT_*]) подделать нельзя, они устанавливаются только если сервер признал сертификат пользователя?


Содержание

Сообщения в этом обсуждении
"Надежность аутентификации по сертификату в httpd"
Отправлено вотак , 28-Окт-16 08:25 
это прописано в переменных среды процесса соединения, имея соответствующие права их можно изменить

"Надежность аутентификации по сертификату в httpd"
Отправлено MarvinD , 28-Окт-16 11:05 
Имеется ввиду доверие к процессу веб-сервера?

Т.е. если считать, что серверу, получившему клиентский сертификат, мы доверяем, то на основании переменной $_SERVER['SSL_CLIENT_I_DN_Email'] можно давать браузеру-клиенту доступ к данным аккаунта (уникальность SSL_CLIENT_I_DN_Email в сертификате, конечно же, должна быть)?


"Надежность аутентификации по сертификату в httpd"
Отправлено ПавелС , 28-Окт-16 13:36 
> Имеется ввиду доверие к процессу веб-сервера?
> Т.е. если считать, что серверу, получившему клиентский сертификат, мы доверяем, то на
> основании переменной $_SERVER['SSL_CLIENT_I_DN_Email'] можно давать браузеру-клиенту
> доступ к данным аккаунта (уникальность SSL_CLIENT_I_DN_Email в сертификате, конечно же,
> должна быть)?

Можно. А как по другому бы работало. Все auth* включая kerberos собственно усанавливают $REMOTE_USER  - это тоже только переменная окружения.


"Надежность аутентификации по сертификату в httpd"
Отправлено MarvinD , 28-Окт-16 14:08 
> Можно. А как по другому бы работало.

Логично. Спасибо!