プロトコルサポート: HTTP、HTTPS、FTP、GOPHER、および SOCKS
この章では、次のトピックについて説明します。
HTTP、FTP、および GOPHER
Java Plug-in は、HTTP、FTP、および GOPHER プロトコルをサポートします。この中には、組み込みプロキシ構成サポートも含まれています。
HTTPS
はじめに
Java Plug-in では、HTTPS が Java Secure Socket Extension (JSEE) を介してサポートされています。JSEE は、Java プラットフォームに対して SSL と HTTPS の Java 実装を提供しています。
エラー処理のサポート
HTTPS サーバーへのアクセス時に、エラーが発生する場合があります。Java Plug-in は、JSSE にフックすることにより、次のタイプのエラー処理を提供します。
- ホスト名の不一致: HTTPS サーバーのホスト名がサーバー証明書の名前と一致しない場合、警告ダイアログが表示されます。
- 信頼されないサーバー証明書: SSL ハンドシェーク時にサーバー証明書を検証できない場合、警告ダイアログが表示されます。
- 信頼されないクライアント証明書: サーバーによりクライアント認証が必要とされ、かつクライアント証明書を検証できない場合、警告ダイアログが表示されます。
- サーバー認証: クライアントが HTTPS サーバー上の保護されたディレクトリにアクセスする場合、ユーザー名およびパスワードの入力が求められます。 注: 現在のところ、基本的な認証のみがサポートされています。
JSSE を利用する HTTPS の潜在的な問題点
JSSE を介した HTTPS サポートにより、ブラウザ固有の問題の多くが取り除かれますが、開発者が留意する必要のあるいくつかの問題が存在します。
- 信頼されないサーバー証明書: HTTPS 接続の確立時に SSL ハンドシェークが行われると、サーバー証明書の検証が Java SE のルート CA ストアに対して行われます。ただし、Java SE がサポートするルート CA 証明書の数は、ブラウザがサポートするルート CA 証明書の数ほど多くありません。このため、信頼されないサーバー証明書で問題が発生する場合があります。
- クライアント認証: Java Plugin は、JRE 1.5 以降でブラウザキーストアをサポートしています。ブラウザキーストアを使用して、HTTPS サーバーのクライアント認証は、Internet Explorer と Mozilla ファミリのブラウザとで異なった方法で実行されます。Internet Explorer では、証明書は JRE キーストアにインポートされません。Mozilla ファミリのブラウザでは、Mozilla キーストアから証明書を読み込むために JSS パッケージをインストールする必要があります。デフォルトでは、ブラウザキーストアのサポートはオンになっています。
- エラー処理のレベル: Java Plug-in は、現在のところ、前のセクションに挙げたエラータイプを処理します。ただし、Java Plug-in の認識しない他のエラータイプが存在する場合、Java アプレットの処理は中断されます。
Socks
現在、Java Plug-in は SOCKS バージョン 4 をサポートします。
注: HTTP/HTTPS の場合、SOCKS プロキシサーバーを Web プロキシサーバーと併用して、キャッシュを追加できます。ただし、この動作は、ブラウザ内の同様の構成を Java Plug-in を使用せずに実行する場合の動作とは異なる可能性があります。
NTLM 認証
Java Plug-in では、HTTP/HTTPS 用の NTLM 認証プロトコルがサポートされています。NTLM 認証を要求するサーバーにユーザーがアクセスしようとすると、次のダイアログが表示されます。
![NTLM 認証が必要です。ユーザー名、パスワード、およびドメイン名を指定します。](images/NTLMauthentication.jpg)
認証を行うには、「ユーザー名」、「パスワード」、および「ドメイン」の各フィールドに入力を行います。