public class KerberosTicket extends Object implements Destroyable, Refreshable, Serializable
KDCに対してユーザーを認証するすべてのKerberos JAASログイン・モジュールで、このクラスを使用する必要があります。利用可能な場合、ログイン・モジュールは、KDCと直接通信するのではなくオペレーティング・システムのチケット・キャッシュから、この情報を読み取ることもあります。JAAS認証プロセスのコミット・フェーズ中に、JAASログイン・モジュールがこのクラスをインスタンス化し、インスタンスをSubject
の非公開資格セットに格納するようにしてください。
アプリケーションがSubjectオブジェクトからKerberosTicketインスタンスにアクセスする必要がある場合は、アプリケーションにPrivateCredentialPermission
を与えることが必要な場合があります。アプリケーションがKerberosTicketにアクセスするのにデフォルトのJGSS Kerberosメカニズムに依存している場合、このアクセス権は必要ありません。ただしその場合、アプリケーションには適切なServicePermission
が必要です。
このクラスは、チケットを付与するチケットと、そのほかの一般サービス・チケットとの両方に適用可能です。チケットを付与するチケットは、より一般化されたサービス・チケットの特殊な例にすぎません。
Subject
, PrivateCredentialPermission
、LoginContext
、GSSCredential
、GSSManager
、直列化された形式コンストラクタと説明 |
---|
KerberosTicket(byte[] asn1Encoding, KerberosPrincipal client, KerberosPrincipal server, byte[] sessionKey, int keyType, boolean[] flags, Date authTime, Date startTime, Date endTime, Date renewTill, InetAddress[] clientAddresses)
クライアントがKDCから取得した、またはキャッシュから読み取った資格情報を使用して、KerberosTicketを構築します。
|
修飾子と型 | メソッドと説明 |
---|---|
void |
destroy()
チケットと、チケットに格納されている重要な情報を破棄します。
|
boolean |
equals(Object other)
指定されたObjectがこのKerberosTicketと等しいかどうか比較します。
|
Date |
getAuthTime()
クライアントが認証された時間を返します。
|
KerberosPrincipal |
getClient()
このチケットに関連付けられたクライアント主体を返します。
|
InetAddress[] |
getClientAddresses()
このチケットを使用可能なアドレスのリストを返します。
|
byte[] |
getEncoded()
チケット全体のASN.1エンコーディングを返します。
|
Date |
getEndTime()
このチケットの有効期間の期限切れ時間を返します。
|
boolean[] |
getFlags()
このチケットに関連付けられたフラグを返します。
|
Date |
getRenewTill()
すべての更新を含む、このチケットの最新の有効期限を返します。
|
KerberosPrincipal |
getServer()
このチケットに関連付けられたサービス主体を返します。
|
SecretKey |
getSessionKey()
このチケットに関連付けられたセッション鍵を返します。
|
int |
getSessionKeyType()
Kerberosプロトコル仕様で定義された、このチケットに関連付けられたセッション鍵の鍵タイプを返します。
|
Date |
getStartTime()
このチケットの有効期間の開始時間を返します。
|
int |
hashCode()
このKerberosTicketのハッシュ・コードを返します。
|
boolean |
isCurrent()
このチケットが最新のままであるかどうかを判定します。
|
boolean |
isDestroyed()
このチケットが破棄されたかどうかを判定します。
|
boolean |
isForwardable()
このチケットが転送可能であるかどうかを判定します。
|
boolean |
isForwarded()
このチケットが転送されてきたか、認証によって発行されたかどうかを判定します(転送されてきたチケット認可チケットを含む)。
|
boolean |
isInitial()
このチケットがKerberos AS-Exchangeプロトコルを使用して発行されていて、チケット認可チケットを元に発行されていないかどうかを判定します。
|
boolean |
isPostdated()
このチケットが事後の日付であるかどうかを判定します。
|
boolean |
isProxiable()
このチケットがプロキシ可能であるかどうかを判定します。
|
boolean |
isProxy()
このチケットがプロキシ・チケットであるかどうかを判定します。
|
boolean |
isRenewable()
このチケットが更新可能であるかどうかを判定します。
|
void |
refresh()
このチケットの有効期間を延長します。
|
String |
toString()
オブジェクトの文字列表現を返します。
|
public KerberosTicket(byte[] asn1Encoding, KerberosPrincipal client, KerberosPrincipal server, byte[] sessionKey, int keyType, boolean[] flags, Date authTime, Date startTime, Date endTime, Date renewTill, InetAddress[] clientAddresses)
asn1Encoding
- Kerberosプロトコル仕様に定義された、チケットのASN.1エンコーディング。client
- このサービス・チケットを所有するクライアントserver
- このチケットが使用されるサービスsessionKey
- サーバーに送信されるオーセンティケータを暗号化するために使用する必要があるセッション鍵のrawバイトkeyType
- Kerberosプロトコル仕様で定義された、セッション鍵の鍵タイプ。flags
- チケット・フラグ。この配列の各要素は、チケット・フラグを表すASN.1 BitStringの対応するビットの値を示す。この配列の要素数がKerberosプロトコルで使用されるフラグの数よりも少ない場合、足りないフラグはfalseになる。authTime
- クライアントを初期認証した時間startTime
- チケットが有効になる時間。authTimeの値がstartTimeとして扱われる場合は、nullも可。endTime
- チケットが無効になる時間renewTill
- 可能なすべての更新を含めた、チケットの絶対有効期限。更新不可能なチケットでは、このフィールドはnullも可。clientAddresses
- クライアントがチケットを使用できるアドレス。チケットを任意のアドレスで使用できるとき、このフィールドはnullになる。public final KerberosPrincipal getClient()
public final KerberosPrincipal getServer()
public final SecretKey getSessionKey()
public final int getSessionKeyType()
getSessionKey()
public final boolean isForwardable()
public final boolean isForwarded()
public final boolean isProxiable()
public final boolean isProxy()
public final boolean isPostdated()
public final boolean isRenewable()
refresh
メソッドを呼び出すことができます。public final boolean isInitial()
public final boolean[] getFlags()
public final Date getAuthTime()
public final Date getStartTime()
public final Date getEndTime()
public final Date getRenewTill()
public final InetAddress[] getClientAddresses()
public final byte[] getEncoded()
public boolean isCurrent()
isCurrent
、インタフェース: Refreshable
Object
が現在最新である場合はtrue、そうでない場合はfalse。public void refresh() throws RefreshFailedException
refresh
、インタフェース: Refreshable
RefreshFailedException
- チケットが更新可能ではない場合、最後の更新可能な時間が過ぎている場合、またはKDCがエラーを返す場合。isRenewable()
, getRenewTill()
public void destroy() throws DestroyFailedException
destroy
、インタフェース: Destroyable
DestroyFailedException
- 破棄処理が失敗した場合。 public boolean isDestroyed()
isDestroyed
、インタフェース: Destroyable
Object
が破棄された場合はtrue、そうでない場合はfalse。public String toString()
Object
toString
メソッドは、このオブジェクトを「テキストで表す」文字列を返します。この結果は、人間が読める簡潔で有益な情報であるべきです。すべてのサブクラスで、このメソッドをオーバーライドすることをお勧めします。
クラスObject
のtoString
メソッドは、オブジェクトがインスタンスになっている元のクラスの名前、アットマーク文字「@
」、およびオブジェクトのハッシュ・コードの符号なし16進数表現から構成される文字列を返します。つまり、このメソッドは次の値と等しい文字列を返します。
getClass().getName() + '@' + Integer.toHexString(hashCode())
public int hashCode()
hashCode
、クラス: Object
KerberosTicket
のhashCode()Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object other)
KerberosTicket
であり、2つのKerberosTicket
インスタンスが等価である場合、trueを返します。equals
、クラス: Object
other
- 比較対象のObjectObject.hashCode()
、HashMap
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.