|
|
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте профи Кто просветит как к MySQL организовать подключение с SSL из java приложения? В доках по MySQL есть описание http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-using-ssl.html но я не пойму куда надо прописывать это: -Djavax.net.ssl.keyStore=path_to_keystore_file -Djavax.net.ssl.keyStorePassword=********* -Djavax.net.ssl.trustStore=path_to_truststore_file -Djavax.net.ssl.trustStorePassword=********* и что это за пароли? Если это пароли к сертификатам, то в чем смысл такого SSL? А если это вообще не то, то как мне все-таки организовать защищенное соединение с сервером MySQL? (сервер на SSL настроен сертификаты проверил) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 11:56:25 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
Почитайте внмательно: keyStorePassword - это пароль для доступа к хранилищу ключей и сертификатов, которые в Java хранятся в специальном файле, создаваемом и упрправляемым с помощью утилиты keytool входящей в состав JDK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 13:09:36 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
keytool подходит если серверная часть тоже моя А если сервер не мой и сертификаты к MySQL мне уже дали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 13:44:29 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
keytool создает хранилище ключей и сертификатов и управляет им. Физически хранилище представляет собой файл. На своем "домашнем" компьтере Вы можете создать такой файл и импортировать в него предоставленный Вам сертификат. При запуске своего приложения Вы указывате с помощью приведенных Вами в первом посте ключей путь к хранилищу и пароль для доступа к нему: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 13:52:39 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
Почти верно только надо указывать не хранилище закрытых ключей (keystore) а хранилище открытых ключей (truststore). Поскольку именно сервер коннектится БД, а не наоборот некто коннектится к серверу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 14:56:14 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
А при последующей эксплуатации программы мне что каждому юзеру отдельно ходить генерить эти хранилища? Я думал создать какой-то ключ, вставить его в прогу и пусть по шифрованному каналу работает с базой, а уровень доступа уже в зависимости от логина. Может я вообще тогда не ту технологию применяю? Кто направит на путь истинный? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 16:55:37 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
Да. Причём эта проблема практически не зависит от архитектуры/технологии. Так если бы например пользователь работал через Веб-интерфейс, то пришлось бы на каждой рабочей машине установить сертификат для работы через Https (либо купить его у соответствующей организации). Но может быть кто-нибудь подскажет более простые и столь же безопасные решения? Но скажите, неужели это настолько серьёзная проблема для техника/администратора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 17:31:01 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
tigerkvvА при последующей эксплуатации программы мне что каждому юзеру отдельно ходить генерить эти хранилища? - а в чем проблема? Если Вы хотите для каждого клиента отдельный сертификат, то генерите его для каждого клиента, пихаете в индивидуальное хранилище, копируете файл хранилище вместе с программой для доступа к БД и bat/sh скриптом запуска этой программы, где указан относительный путь к хранилищу, на машину клиента. Клиент запускает скрипт и все работает. А если сделать один клиентский сертификат (одинаковый для всех клиентов), то хранилище надо будет создать только один раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2007, 17:48:44 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
Не получается что-то. Вот например мне не понятно почему при генерации хранилища и ключей не используется сертификат выданный для клиента из openssl на серваке где БД крутится? В конфиге MySQL для клиента прописано ssl-ca=/home/client/ca.crt ssl-cert=/home/client/test.crt ssl-key=/home/client/test.key Или надо то, что получилось от keytool влить куда-то на сервак ? Куда его тогда прописывать там? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 20:46:54 |
|
||
|
Как соединиться с БД через SSL?
|
|||
|---|---|---|---|
|
#18+
С помощью keytool Вы создаете файл хранилище сертификатов, которые будут использоваться JVM. Т. к. у Вас имеются готовые сертификаты Вам необходимо импортировать их в хранилище с помощью этой утилиты. Сертификаты должны быть оформлены в формате PKCS7. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 23:40:46 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34334417&tid=2146615]: |
0ms |
get settings: |
21ms |
get forum list: |
32ms |
check forum access: |
9ms |
check topic access: |
9ms |
track hit: |
95ms |
get topic data: |
23ms |
get forum data: |
6ms |
get page messages: |
102ms |
get tp. blocked users: |
2ms |
| others: | 349ms |
| total: | 648ms |

| 0 / 0 |
