The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Аутентификация с помощью x509"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [ Отслеживать ]

"Аутентификация с помощью x509"  
Сообщение от aborilov email(ok) on 07-Фев-08, 14:08 
Добрый день!
Необходимо сделать аутентификацию с помощью Х509 на веб-сервере(томкат).
например как это сделано в вебмани, просто подпихиваешь свой сертификат в браузер и все,
ни каких логинов и паролей.

Подскажите пожалуйста кто проделывал это, каков план действий?
Я просто пока не могу точно понят картину действий...

что должно быть на сервере в keystone, как сгенерить клиентский сертификат и тп.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Аутентификация с помощью x509"  
Сообщение от domas email(ok) on 12-Фев-08, 01:30 
План действий:
1. настраиваешь соответствующий коннектор в томкэте. Коннектор - это то, что принимает непосредственно клиентские подключения и авторизует.
2. создаешь keystore - это хранилище ключей. В твоем случает минимум двух - ключ сервера и клиента.
3. Добавляешь в хранилище ключи клиентов. Ключ сервера уже там будет, т.к. при создании первого ключа хранилище создается автоматом.
4. Нарезаешь привелегии, в которых именем пользователя являются атрибуды сертификата.

Пример для простого случая, без CA, когда не нужно импортировать, подписавать и т.д.

Коннектор в server.xml. Важен ригистр букв, это пример для 6 версии, для 5.5 кое-какие параметры должны быть полностью в нижнем регистре.


<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
                address="192.168.0.1"
                maxHttpHeaderSize="8192" minSpareThreads="25" maxSpareThreads="75"
                enableLookups="false" disableUploadTimeout="true"
                acceptCount="100"
                keystoreFile="${catalina.home}/conf/ssl/key_store.p12"
                keystorePass="qwerty"
                truststoreFile="${catalina.home}/conf/ssl/key_store.p12"
                truststorePass="qwerty"
                keyAlias="server"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="true" sslProtocol="TLS" />

Делаешь kestore и генерируешь сертификаты.Например:


keytool --genkey -alias server -keystore $CATALINA_HOME/conf/ssl/key_store.p12 -storepass qwerty
keytool --genkey -alias client1 -keystore $CATALINA_HOME/conf/ssl/key_store.p12 -storepass qwerty
keytool --genkey -alias client2 -keystore $CATALINA_HOME/conf/ssl/key_store.p12 -storepass qwerty

Смотрим что получилось:


keytool --list -keystore $CATALINA_HOME/conf/ssl/key_store.p12 -storepass qwerty

Теперь настройка ролей(tomcat-users.xml):


<tomcat-users>
  <role rolename="manager"/>
  <role rolename="simpleuser"/>
  <user username="CN=1, OU=2, O=3, L=4, ST=5, C=6" password="null" roles="manager"/>
  <user username="CN=a, OU=b, O=c, L=d, ST=e, C=f" password="null" roles="simpleuser"/>
</tomcat-users>

Подробности тут: http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html
Желательно еще конвертировать клиентские сертификаты из PKCS#12 в PEM - это уже к openssl.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Аутентификация с помощью x509"  
Сообщение от 7ft on 10-Дек-08, 18:14 
полезная статья
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру