|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
SSL では、2 つのエンティティ間で進行中の関係がセッションと呼ばれます。1 つの SSL 接続では、一度に 1 つのセッションが使用されます。ただし、そのセッションは、同じエンティティ間の複数の接続で、同時にまたは逐次的に使用されます。1 つの接続で使用されるセッションを別のセッションで置き換えることもできます。セッションの作成または参加は、SSL ハンドシェークのときに行われます。セッションを無効にするには、セキュリティまたは資源使用状況に関連するポリシーを使用するか、アプリケーションから明示的に invalidate
が呼び出します。セッション管理ポリシーは通常、パフォーマンスを調整するときに使用します。
SSL セッションには、標準セッション属性以外に、次の読み込み専用属性があります。
セッションは、明示的に無効にします。特定の種類のエラーが発生したときは、暗黙的に無効になります。
メソッドの概要 | |
String |
getCipherSuite()
このセッションのすべての接続に使用される SSL 符号化方式の名前を返します。 |
long |
getCreationTime()
このセッションが作成された時刻を、UTC 1970年 1 月 1 日 0 時からのミリ秒単位で返します。 |
byte[] |
getId()
このセッションに割り当てられた識別子を返します。 |
long |
getLastAccessedTime()
このセッションがセッションレベルのインフラストラクチャによって最後にアクセスされた時刻を、UTC 1970年 1 月 1 日 0 時からのミリ秒単位で返します。 |
Certificate[] |
getLocalCertificates()
ハンドシェーク中にピアに送信された証明書を返します。 |
X509Certificate[] |
getPeerCertificateChain()
セッションを定義するときに識別された、ピアの識別情報を返します。 |
Certificate[] |
getPeerCertificates()
セッションを定義するときに設定された、ピアの識別情報を返します。 |
String |
getPeerHost()
このセッションのピアホスト名を返します。 |
String |
getProtocol()
このセッションのすべての接続に使用されるプロトコルの標準名を返します。 |
SSLSessionContext |
getSessionContext()
このセッションがバインドされているコンテキストを返します。 |
Object |
getValue(String name)
このセッションのアプリケーション層データ内で、指定された名前にバインドされているオブジェクトを返します。 |
String[] |
getValueNames()
セッションにバインドされているアプリケーション層データオブジェクト名の配列を返します。 |
void |
invalidate()
セッションを無効にします。 |
void |
putValue(String name,
Object value)
指定された name を使用して、指定された value オブジェクトをこのセッションのアプリケーション層データにバインドします。
|
void |
removeValue(String name)
セッションのアプリケーション層データで、指定された名前にバインドされたオブジェクトを削除します。 |
メソッドの詳細 |
public byte[] getId()
public SSLSessionContext getSessionContext()
コンテキストは、一部の環境では取得できません。その場合は null を返します。
コンテキストが取得できる環境にセキュリティマネージャがインストールされている場合は、呼び出すときにコンテキストに対するアクセス権が必要になることがあります。その場合、アクセス権がないときは、セキュリティ例外がスローされます。Java 2 環境では、セキュリティマネージャの checkPermission
メソッドを呼び出すときには、SSLPermission("getSSLSessionContext")
アクセス権が必要です。
public long getCreationTime()
public long getLastAccessedTime()
アクセスとは、セッションデータを使用して新しい接続が確立されることを指します。セッション関連の値を取得または設定するなど、アプリケーションレベルの操作はこのアクセス時間に反映されません。
この情報は、特にセッション管理ポリシーで使用します。たとえば、長時間使用されていないコンテキストでセッションマネージャスレッドからセッションを解放したり、セッションを経過時間でソートしてタスクを最適化したりします。
public void invalidate()
後続の接続では、このセッションを使用できません。ただし、このセッションを使用している既存の接続は、接続が閉じるまで引き続き使用できます。
public void putValue(String name, Object value)
name
を使用して、指定された value
オブジェクトをこのセッションのアプリケーション層データにバインドします。
同じ name
を使用している既存のバインディングは置き換えられます。新しい (または既存の) value
が SSLSessionBindingListener
インタフェースを実装している場合、value
によって表されるオブジェクトには適切な方法で通知されます。
セキュリティ上の理由から、同じ名前の値は複数のアクセス制御コンテキストをまたがって表示できません。
name
- データオブジェクトがバインドされる名前。null は不可value
- バインドされるデータオブジェクト。null は不可
IllegalArgumentException
- どちらかの引数が null の場合public Object getValue(String name)
セキュリティ上の理由から、同じ名前の値は複数のアクセス制御コンテキストをまたがって表示できません。
name
- 検索するバインディングの名前
IllegalArgumentException
- 引数が null の場合public void removeValue(String name)
SessionBindingListener
インタフェースを実装している場合は、そのインタフェースに適切な方法で通知されます。
セキュリティ上の理由から、同じ名前の値は複数のアクセス制御コンテキストをまたがって表示できません。
name
- 削除するオブジェクトの名前。複数のアクセス制御コンテキストをまたがって表示できる
IllegalArgumentException
- 引数が null の場合public String[] getValueNames()
セキュリティ上の理由から、同じ名前の値は複数のアクセス制御コンテキストをまたがって表示できません。
public Certificate[] getPeerCertificates() throws SSLPeerUnverifiedException
SSLPeerUnverifiedException
- ピアの識別情報が確認できなかった場合public Certificate[] getLocalCertificates()
public X509Certificate[] getPeerCertificateChain() throws SSLPeerUnverifiedException
注: このメソッドは、以前のリリースとの互換性を確保するために組み込まれています。新しいアプリケーションでは、getPeerCertificates()
を使用してください。
X509Certificate
形式である
SSLPeerUnverifiedException
- ピアの識別情報が確認できなかった場合public String getCipherSuite()
SSL 符号化方式は、使用される暗号の種類や認証方法の設定など、接続時に送信されるデータに適用される保護のレベルを決定します。
public String getProtocol()
このプロトコルには、接続で使用されるプロトコルを定義します。
public String getPeerHost()
サーバの場合は、クライアントのホスト名になります。クライアントの場合は、サーバのホスト名になります。この名前は、完全指定のホスト名や実際のホスト名ではなく、ピアホストのネットワークアドレスの文字列エンコーディングです。完全指定のホスト名や実際のホスト名が必要な場合は、このメソッドから返された値に基づいてネームサービスを使用すれば解決できます。
この値は認証されていないため、実際に使用することはできません。
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.