Flex / AIR + GraniteDS через SSL - PullRequest
1 голос
/ 02 июня 2010

Я использую JBoss с SSL, сертификат генерируется с помощью openssl:

      <Connector protocol="HTTP/1.1" SSLEnabled="true" 
       port="8443" address="${jboss.bind.address}"
       scheme="https" secure="true" clientAuth="false" 
       keystoreFile="${jboss.server.home.dir}/conf/chap8.keystore"
       keystorePass="password" sslProtocol = "TLS" />

Мой клиент - это приложение AIR, которое взаимодействует с сервером Java EE через GraniteDS. На стороне Flex / AIR я обновил канал до SecureAMFChannel в services-config.xml:

<channel-definition id="myApp-graniteamf" class="mx.messaging.channels.SecureAMFChannel">
        <endpoint uri="https://localhost:8443/myApp/graniteamf/amf"
        class="flex.messaging.endpoints.SecureAMFEndpoint" />
    </channel-definition>

Теперь, когда я подключаюсь с моего клиента, AIR спрашивает меня, хочу ли я продолжить подключение (просмотреть сертификат и т. Д.).

Я новичок во всей концепции SSL / HTTPS, но я прочитал несколько документов. Сейчас я пытаюсь выяснить, как заставить мое приложение знать, что сервер безопасен (в данном случае localhost). Из того, что я получил, клиентское приложение должно «доверять серверу как CA» или просто доверять сертификатам определенного сервера.

Не могли бы вы дать мне несколько подсказок относительно того, с чего начать реализовывать это в моем клиентском приложении AIR?

1 Ответ

2 голосов
/ 03 июня 2010

Если я правильно понимаю, вы используете самозаверяющий сертификат. Исходя из этого предположения, вы не можете заставить пользователя принять сертификат через приложение AIR, что было бы дырой в безопасности. Чтобы получить доверие к вашему приложению AIR для доверия, пользователю потребуется импортировать ваш сертификат (или ненадежный центр сертификации, с которым вы подписали свой сертификат) в свое собственное хранилище ключей.

То, как вы делаете это, отличается для каждой ОС, но пример того, как это сделать в Windows, - это просмотреть ваш сервер в IE, получить предупреждение о сертификате, просмотреть сведения о сертификате и затем экспортировать сертификат в файл (X509 IIRC). Затем вы можете щелкнуть правой кнопкой мыши файл сертификата и выбрать установку сертификата.

Все последующие вызовы к этому защищенному серверу должны быть доверенными.

...