インタフェースExtendedGSSContext
- すべてのスーパー・インタフェース:
GSSContext
org.ietf.jgss.GSSContextで定義されていない追加機能(コンテキスト固有の属性の問合せなど)をサポートするように拡張されたGSSContextインタフェース。- 導入されたバージョン:
- 1.7
-
フィールドのサマリー
インタフェースで宣言されたフィールド GSSContext
DEFAULT_LIFETIME, INDEFINITE_LIFETIME修飾子と型フィールド説明static final intコンテキストのデフォルトの寿命を表す寿命定数です。static final intコンテキストの寿命が無期限であることを表す寿命定数です。 -
メソッドのサマリー
修飾子と型メソッド説明boolean委譲ポリシーの応答を返します。inquireSecContext(InquireType type) typeに関連したメカニズム固有の属性を返します。voidrequestDelegPolicy(boolean state) 委譲ポリシーに遵守するように要求します。インタフェースで宣言されたメソッド GSSContext
acceptSecContext, acceptSecContext, dispose, export, getAnonymityState, getConfState, getCredDelegState, getDelegCred, getIntegState, getLifetime, getMech, getMIC, getMIC, getMutualAuthState, getReplayDetState, getSequenceDetState, getSrcName, getTargName, getWrapSizeLimit, initSecContext, initSecContext, isEstablished, isInitiator, isProtReady, isTransferable, requestAnonymity, requestConf, requestCredDeleg, requestInteg, requestLifetime, requestMutualAuth, requestReplayDet, requestSequenceDet, setChannelBinding, unwrap, unwrap, verifyMIC, verifyMIC, wrap, wrap修飾子と型メソッド説明byte[]acceptSecContext(byte[] inToken, int offset, int len) ピアからトークンが着信したときに、コンテキストの受け入れ側によって呼び出されます。voidacceptSecContext(InputStream inStream, OutputStream outStream) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。voiddispose()コンテキスト・オブジェクトに格納されているシステム資源と暗号化情報をすべて解放し、そのコンテキストを無効にします。byte[]export()このコンテキストをエクスポートして、別のプロセスでインポートできるようにします。booleanコンテキストの起動側がコンテキストの受け入れ側に匿名として認証されているかどうかを判定します。booleanこのコンテキストでデータの機密性を利用できるかどうかを検査します。booleanこのコンテキストで資格の委譲が有効になっているかどうかを判定します。コンテキストの起動側からコンテキストの受け入れ側に委譲された資格を取得します。booleanこのコンテキストでデータの整合性を利用できるかどうかを検査します。intこのコンテキストの残りの寿命を検査します。getMech()このコンテキストに使用されているメカニズムを検査します。byte[]getMIC(byte[] inMsg, int offset, int len, MessageProp msgProp) 指定されたメッセージの暗号化MIC (メッセージ整合性コード)を含むトークンを返します。このトークンは、ピア・アプリケーションに転送されます。voidgetMIC(InputStream inStream, OutputStream outStream, MessageProp msgProp) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。booleanこのコンテキストで相互認証が有効になっているかどうかを判定します。booleanこのコンテキストのメッセージごとのセキュリティ・サービスでリプレイ検出が有効になっているかどうかを判定します。booleanこのコンテキストのメッセージごとのセキュリティ・サービスでシーケンス・チェックが有効になっているかどうかを判定します。コンテキストの起動側の名前を返します。コンテキストの受け入れ側の名前を返します。intgetWrapSizeLimit(int qop, boolean confReq, int maxTokenSize) wrapに渡すことができるメッセージ・サイズの制限を決めるときに使用します。byte[]initSecContext(byte[] inputBuf, int offset, int len) コンテキストの起動側によって呼び出されます。コンテキストの作成処理を開始し、ピアのacceptSecContextメソッドによって生成されたトークンを処理します。intinitSecContext(InputStream inStream, OutputStream outStream) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。booleanコンテキストを確立する前に、コンテキストの状態を確認するときに使用します。booleanこのピアがコンテキストの起動側であるかどうかを検査します。booleanこのコンテキストでメッセージごとの操作をすぐに開始できるかどうかを検査します。booleanexportメソッドを使用して、このコンテキストをほかのプロセスに転送できるかどうかを検査します。voidrequestAnonymity(boolean state) 起動側の資格を受け入れ側に公開しないように要求します。voidrequestConf(boolean state) wrapメソッドでデータの機密性を有効にするように要求します。voidrequestCredDeleg(boolean state) コンテキストの確立の際に起動側の資格を受け入れ側に委譲するように要求します。voidrequestInteg(boolean state) wrapメソッドとgetMICメソッドでデータの整合性を有効にするように要求します。voidrequestLifetime(int lifetime) コンテキストの寿命を秒単位で要求します。voidrequestMutualAuth(boolean state) コンテキストが確立しているときに、相互認証が行われるように要求します。voidrequestReplayDet(boolean state) コンテキストが確立したあとで、メッセージごとのセキュリティ・サービスのリプレイ検出が有効になるように要求します。voidrequestSequenceDet(boolean state) コンテキストが確立したあとで、メッセージごとのセキュリティ・サービスのシーケンス・チェックが有効になるように要求します。voidコンテキストが確立しているときにチャネル・バインディングが使用されるように設定します。byte[]unwrap(byte[] inBuf, int offset, int len, MessageProp msgProp) コンテキストの相手側でwrapメソッドによって生成されたトークンを処理するために使用します。voidunwrap(InputStream inStream, OutputStream outStream, MessageProp msgProp) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。voidverifyMIC(byte[] inToken, int tokOffset, int tokLen, byte[] inMsg, int msgOffset, int msgLen, MessageProp msgProp) トークン・パラメータに含まれる暗号化MICを、指定されたメッセージに対して検査します。voidverifyMIC(InputStream tokStream, InputStream msgStream, MessageProp msgProp) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。byte[]wrap(byte[] inBuf, int offset, int len, MessageProp msgProp) 確立されたセキュリティ・コンテキストに対してメッセージごとのセキュリティ・サービスを適用します。voidwrap(InputStream inStream, OutputStream outStream, MessageProp msgProp) 非推奨。ストリーム・ベースのメソッドはRFC 8353から削除されました。
-
メソッドの詳細
-
inquireSecContext
typeに関連したメカニズム固有の属性を返します。例:
GSSContext ctxt = m.createContext(...) // Establishing the context if (ctxt instanceof ExtendedGSSContext) { ExtendedGSSContext ex = (ExtendedGSSContext)ctxt; try { Key key = (key)ex.inquireSecContext( InquireType.KRB5_GET_SESSION_KEY); // read key info } catch (GSSException gsse) { // deal with exception } }- パラメータ:
type- 要求された属性の型- 戻り値:
- 属性。詳細は、メソッド・キュメンテーションを参照してください。
- スロー:
GSSException- 次のメジャー・エラー・コードを含みます。メカニズムがこのメソッドをサポートしない場合はGSSException.BAD_MECH、指定された型がサポートされない場合はGSSException.UNAVAILABLE、セキュリティ・コンテキストが無効な場合はGSSException.NO_CONTEXT、その他の不明な障害の場合はGSSException.FAILURE。- 関連項目:
-
requestDelegPolicy
void requestDelegPolicy(boolean state) throws GSSException 委譲ポリシーに遵守するように要求します。 trueの値が要求されるときは、基本となるコンテキストは、環境によって定義される委譲ポリシーをヒントとして使用して、資格の委譲を実行するかどうかを判断します。 この要求は、コンテキストの起動側からのみ行うことができ、initSecContextを最初に呼び出すより前に行う必要があります。このフラグがfalseのとき、
credentials delegation flagがtrueの場合にかぎり委譲が試行されます。このフラグがtrueでも、
credentials delegation flagがfalseのときは、委譲ポリシーで委譲が許可される場合にかぎり委譲が試行されます。このフラグと
credentials delegation flagの両方がtrueのときは、委譲は常に試行されます。 ただし、委譲ポリシーで委譲が許可されない場合、委譲が正常に実行されてもgetDelegPolicyState()の値はfalseになります。いずれにしても、委譲が正常に行われない場合、
GSSContext.getCredDelegState()によって返される値はfalseで、getDelegPolicyState()によって返される値もfalseです。メカニズムによっては、委譲ポリシーがサポートされていないことがあります。 そのため、アプリケーションは
getDelegPolicyStateメソッドを使用して、この要求が受け付けられたかどうかを確認するようにしてください。 委譲ポリシーがサポートされていないときは、requestDelegPolicyは何もせずに復帰し、例外はスローされません。ノート: Kerberos 5メカニズムの場合、委譲ポリシーはサービス・チケットのOK-AS-DELEGATEフラグによって表されます。 これがtrueのときは、KDCではターゲット・サーバーへの委譲が許可されます。 相互レルム環境では、委譲を許可するには、認証パス上のすべての相互レルムTGTでOK-AS-DELAGATEフラグも設定されている必要があります。
- パラメータ:
state- ポリシーを遵守する場合はtrue- スロー:
GSSException- 次のメジャー・エラー・コードを含む。GSSException.FAILURE
-
getDelegPolicyState
boolean getDelegPolicyState()委譲ポリシーの応答を返します。 セキュリティ・コンテキストの確立後に呼び出されます。 このメソッドは、起動側のみで呼び出すことができます。requestDelegPolicy(boolean)を参照してください。- 戻り値:
- 委譲ポリシーの応答
-