JAASおよびJava GSS-APIチュートリアルの紹介
このページは、JAAS (Java認証・承認サービス)およびJava GSS-APIのさまざまな使用方法を示す一連のチュートリアルにリンクしています。
JAASは、ユーザーの認証に使用でき、現在Javaコードを実行しているユーザーを確実かつ安全に特定できます。
Java GSS-APIは、通信アプリケーション間のセキュアなメッセージ交換に使用されます。Java GSS-APIには、RFC 5653で定義されたGSS-API (Generic Security Services Application Program Interface)用のJavaバインディングが含まれます。GSS-APIは、アプリケーション・プログラマに対し、Kerberosを含む基盤となるさまざまなセキュリティ・メカニズム上のセキュリティ・サービスへの統一されたアクセスを提供します。
ノート: JSSEは、セキュアな通信に使用可能な別のAPIです。2つの相違点の詳細は、Java GSS-APIおよびJSSEをいつ使用するかを参照してください。
JAASとJava GSS-APIのチュートリアルが両方提供されている理由は、JAAS認証は、通常Java GSS-APIを使用したセキュアな通信の前に行われるためです。JAASおよびJava GSS-APIは、関連しており、しばしば併用されます。ただし、アプリケーションから、Java GSS-APIなしでJAASを使用することも、JAASなしでJava GSS-APIを使用することも可能です。
次に示すチュートリアルでは、上述のシナリオすべての実例を示します:
-
Java GSS-APIを使用した、JAASプログラミングなしのセキュアなメッセージ交換
Java GSS-APIを使用して、クライアント・アプリケーションとサーバー・アプリケーション間のセキュアなメッセージ交換を行う方法を示します。
-
JAASを使用して、アプリケーションからユーザーの認証を行う方法を説明します。
-
JAASを使用してユーザーを認証し、そのユーザーでアプリケーションを実行するユーティリティ・プログラムについて説明します。このユーティリティは、便宜上、基本的に「JAAS認証チュートリアル」で説明した操作をユーザーに代わって実行します。したがって、直接JAAS認証を実行する方法を知る必要がない場合は、このチュートリアルに直接進んでください。
-
JAAS LoginユーティリティおよびJava GSS-APIを使用したセキュアなメッセージ交換
もっとも総合的なチュートリアルです。Loginユーティリティは、サービスのユーザーを認証し、そのユーザーでサーバー・アプリケーションを起動するために使用します。Loginユーティリティは、クライアントのユーザーを認証し、そのユーザーでクライアント・アプリケーションを起動する場合にも使用します。最後に、クライアントおよびサーバー・アプリケーションは、認証されたクライアントおよびサービスのユーザーの代わりに、Java GSS-APIを使用してセキュアなメッセージを交換します。
このシリーズのすべてのチュートリアル内のアプリケーションはすべて、認証およびセキュアな通信用の基盤となるテクノロジとして、Kerberos Version 5を使用します。「Kerberos要件」を参照してください。チュートリアル全体で使われている「Kerberos」という語はKerberos Version 5を指します。