JavaTM Platform
Standard Ed. 6

パッケージ org.ietf.jgss

このパッケージは、Kerberos などのさまざまな配下のセキュリティー機構の統合された API を使用して、認証、データの整合性、データの機密性などのセキュリティーサービスをアプリケーション開発者が利用できるフレームワークを提供します。

参照先:
          説明

インタフェースの概要
GSSContext このインタフェースは、GSS-API のセキュリティーコンテキストをカプセル化し、そのコンテキストで利用できるセキュリティーサービスを提供します。
GSSCredential このインタフェースでは、エンティティーの GSS-API 資格をカプセル化します。
GSSName このインタフェースは、単一の GSS-API 主体エンティティーをカプセル化します。
 

クラスの概要
ChannelBinding このクラスは、呼び出し側から提供されるチャネルバインディング情報の概念をカプセル化します。
GSSManager このクラスは、ほかの重要な GSS-API クラスのファクトリとして機能し、サポートされている機構に関する情報も提供します。
MessageProp このユーティリティークラスは、メッセージごとの GSSContext メソッド内で使用して、メッセージごとのプロパティーを設定します。
Oid このクラスは、OID (Universal Object Identifier) とそれに関連付けられた操作を表します。
 

例外の概要
GSSException この例外は、GSS-API 機構固有のエラーを含む GSS-API エラーが発生したときにスローされます。
 

パッケージ org.ietf.jgss の説明

このパッケージは、Kerberos などのさまざまな配下のセキュリティー機構の統合された API を使用して、認証、データの整合性、データの機密性などのセキュリティーサービスをアプリケーション開発者が利用できるフレームワークを提供します。アプリケーションから選択できるセキュリティー機構は、一意のオブジェクト識別子によって識別されます。たとえば、Kerberos v5 GSS-API 機構は、オブジェクト識別子 1.2.840.113554.1.2.2 によって識別されます。この機構は、GSSManager クラスのデフォルトインスタンスを介して利用できます。

GSS-API は、RFC 2743 で定義されている、言語に依存しない API です。Java 言語バインディングは RFC 2853 で定義されています。

アプリケーションでは、最初に GSSManager のインスタンスを作成します。 このインスタンスは、セキュリティーコンテキストのファクトリとして機能します。アプリケーションで使用する特定の主体名や資格も、GSSManager を使って作成します。 コンテキストをインスタンス化するときは、システムのデフォルトを使用することもできます。次に、コンテキストの確立ループを実行します。ピアとのコンテキストが確立されると、認証が完了します。整合性や機密性などのデータ保護は、このコンテキストから取得できます。

GSS-API では、ピアとの通信は行いません。アプリケーションから相手方のピアに転送するトークンを作成するだけです。

資格の取得

GSS-API 自体は、配下の機構が認証に必要な資格を取得する方法を規定していません。GSS-API を呼び出す前に必要な資格を取得し、機構プロバイダが認識している場所に格納しておくことが前提となっています。ただし、Java プラットフォームのデフォルトモデルでは、機構プロバイダは現在のアクセス制御コンテキストの Subject に関連付けられている公開または非公開の資格セットからのみ資格を取得する必要があります。Kerberos v5 機構は非公開の資格セットを検索して必要な INITIATE 資格と ACCEPT 資格 (KerberosTicket および KerberosKey) を取得しますが、機構によっては、公開資格セットを検索するものや、公開セットと非公開セットの両方を検索するものもあります。必要な資格が現在の Subject の該当する資格セットに見つからない場合、GSS-API の呼び出しは失敗します。

このモデルには、アプリケーションの観点から資格管理が単純で予測可能であるという利点があります。アクセス権が付与されたアプリケーションでは、標準の Java API を使用して、Subject の資格をパージまたは更新できます。 資格をパージすると、JGSS 機構は失敗します。 時間ベースの資格を更新すると、JGSS 機構は成功します。

このモデルでは、JAAS login を実行して Subject を認証し、必要な情報を設定し、JGSS 機構があとで使用できるようにしておく必要があります。ただしアプリケーションでは、システムプロパティー javax.security.auth.useSubjectCredsOnly を使ってこの制限を調整できます。デフォルトではこのシステムプロパティーは true と見なされ (未設定の場合でも)、プロバイダは現在の Subject に入っている資格しか使用できません。しかし、アプリケーションがこのプロパティーを明示的に false に設定した場合、プロバイダは任意の資格キャッシュを選択して使用できます。たとえば、ディスクキャッシュ、メモリー内キャッシュ、現在の Subject 自体などから選択できます。

関連ドキュメント

Java GSS-API の使い方に関するオンラインチュートリアルは、「JAAS および Java GSS-API のチュートリアルの紹介」を参照してください。

導入されたバージョン:
1.4

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。