SSLを使用してJBossを実行しています。証明書は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" />
私のクライアントは、GraniteDSを介してJavaEEサーバーと対話するAIRアプリケーションです。Flex / AIR側では、services-config.xmlでチャネルをSecureAMFChannelに更新しました。
<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の概念全体に不慣れですが、いくつかのドキュメントを読みました。私が今理解しようとしているのは、サーバーが安全であることをアプリに知らせる方法です(この場合はローカルホスト)。これまでのところ、クライアントアプリケーションは「サーバーをCAとして信頼する」か、特定のサーバーからの証明書を信頼する必要があります。
AIRクライアント側アプリケーションでこれをどこから実装し始めるかについての手がかりを教えてください。