Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как привязать клиентский сертификат к логину?
 
 автор: Andre_NN   (29.06.2010 в 16:43)   письмо автору
 
 

httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.msi

Выдаю клиентский сертификат пользователю и он используя этот сертификат может авторизоваться ТОЛЬКО со своим именем, т.е. если он будет использовать сертификат другого пользователя нашей компании он не сможет авторизоваться т.к. сертификат не будет соответствовать пользователю. ¶

  Ответить  
 
 автор: Andre_NN   (29.06.2010 в 16:44)   письмо автору
 
   для: Andre_NN   (29.06.2010 в 16:43)
 

Описание:
Есть сайт x.ru . Доступ к нему разрешается только тем кому я выдам клиентский сертификат. После того как пользователь установил у себя в браузере клиентский сертификат набирает https://x.ru и получает окошко авторизации. В данном окне он вводит имя и пароль, которые привязаны к клиентскому сертификату. После успешной авторизации открывается страничка сайта.

Если человек не имеет сертификат, то он не получит ответа от сервера и ничего не сможет сделать.
Если человек имеет сертификат, но авторизуется именем которое не связано с сертификатом, то авторизация отклоняется.

Человек сможет получить доступ к сайту только при наличии клиентского сертификата и успешной авторизации учетной записью, которая привязана к выданному сертификату.

  Ответить  
 
 автор: Andre_NN   (29.06.2010 в 16:45)   письмо автору
 
   для: Andre_NN   (29.06.2010 в 16:44)
 


Пример 2. 

Предположим требуется разрешить доступ до защищенной области 
владельцам сертификатов со слишком разными данными, настолько, что их 
сложно описать с помощью директивы SSLRequire. В этом случае полезно 
использовать метод, основанный на имитации простой авторизации 
веб-сервером по паролю. 

<Directory /path/to/secure/area/> 
SSLVerifyClient require 
SSLOptions +FakeBasicAuth 
AuthName "My secure area" 
AuthType Basic 
AuthUserFile /path/to/passwd/file 
require valid-user 
</Directory> 


Содержимое файла /path/to/passwd/file 

/C=RU/L=Msk/O=My Inc./CN=user/emailAddress=user@domain.ru:xxj31ZMTZzkVA 
/C=RU/L=Sam/O=My LTD./CN=vas/emailAddress=vas@domain.ru:xxj31ZMTZzkVA 
/C=RU/L=Zel/O=My LLC./CN=prs/emailAddress=prs@domain.ru:xxj31ZMTZzkVA 
........ 


Описание директив: 

SSLOptions +FakeBasicAuth 
Имитирует простую авторизацию веб-сервером. Имя пользователя и 
пароль не запрашиваются, но сверяются данные клиентского 
сертификата с данными в файле /path/to/passwd/file. Строка 
идентифицирующая клиента может быть получена из клиентского 
сертификата с помощью команды: 

# openssl x509 -noout -subject -in client.crt 

Или взята из базы данных db/index.txt, формируемой при подписи 
CSR (см. $2.). В качестве пароля всегда используется строка 
"xxj31ZMTZzkVA", являющаяся результатом шифрования строки 
"password" с помощью алгоритма DES. 

http://opennet.ru/base/sec/ssl_cert.txt.html

В итоге идет запрос пароля, но авторизация не проходит ((( ¶

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования