モジュール java.naming
パッケージ javax.naming.ldap

クラスStartTlsRequest

  • すべての実装されたインタフェース:
    Serializable, ExtendedRequest

    public class StartTlsRequest
    extends Object
    implements ExtendedRequest
    このクラスは、Lightweight Directory Access Protocol (v3): Extension for Transport Layer Securityで定義された、StartTLSのLDAPv3拡張要求を実装します。StartTLSのオブジェクト識別子は1.3.6.1.4.1.1466.20037です。拡張要求の値は定義されていません。

    StartTlsRequest/StartTlsResponseは、TLS接続を確立するときに使用します。TLS接続は、xtendedOperation()を呼び出したJNDIコンテキストに関連付けられている既存のLDAP接続上に確立されます。 通常、JNDIプログラムでは、これらのクラスを次のように使用します。

     import javax.naming.ldap.*;
    
     // Open an LDAP association
     LdapContext ctx = new InitialLdapContext();
    
     // Perform a StartTLS extended operation
     StartTlsResponse tls =
         (StartTlsResponse) ctx.extendedOperation(new StartTlsRequest());
    
     // Open a TLS connection (over the existing LDAP association) and get details
     // of the negotiated TLS session: cipher suite, peer certificate, etc.
     SSLSession session = tls.negotiate();
    
     // ... use ctx to perform protected LDAP operations
    
     // Close the TLS connection (revert back to the underlying LDAP association)
     tls.close();
    
     // ... use ctx to perform unprotected LDAP operations
    
     // Close the LDAP association
     ctx.close;
     

    導入されたバージョン:
    1.4
    関連項目:
    StartTlsResponse, 直列化された形式
    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      static String OID
      StartTLS拡張要求に割り当てられているオブジェクト識別子は1.3.6.1.4.1.1466.20037です。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      StartTlsRequest()
      StartTLS拡張要求を構築します。
    • フィールドの詳細

      • OID

        public static final String OID
        StartTLS拡張要求に割り当てられているオブジェクト識別子は1.3.6.1.4.1.1466.20037です。
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • StartTlsRequest

        public StartTlsRequest()
        StartTLS拡張要求を構築します。
    • メソッドの詳細

      • getID

        public String getID()
        StartTLS要求のオブジェクト識別子の文字列を取得します。
        定義:
        getID、インタフェース: ExtendedRequest
        戻り値:
        オブジェクト識別子の文字列、1.3.6.1.4.1.1466.20037。
      • getEncodedValue

        public byte[] getEncodedValue()
        StartTLS要求のASN.1 BERでエンコードされた値を取得します。 要求には定義済みの値がないため、常にnullが返されます。
        定義:
        getEncodedValue、インタフェース: ExtendedRequest
        戻り値:
        null値。
      • createExtendedResponse

        public ExtendedResponse createExtendedResponse​(String id,
                                                       byte[] berValue,
                                                       int offset,
                                                       int length)
                                                throws NamingException
        LDAP StartTLS拡張要求に対応する拡張応答オブジェクトを作成します。

        この結果は、引数なしのpublicコンストラクタを持つ、StartTlsResponseの具象サブクラスである必要があります。

        このメソッドは、実装クラスを検索するために、次の名前の構成ファイルを検索します。

        META-INF/services/javax.naming.ldap.StartTlsResponse
        構成ファイルおよび対応する実装クラスは、呼出し側スレッドのコンテキスト・クラス・ローダーからアクセスできる必要があります。

        それぞれの構成ファイルには、完全指定クラス名が1行に1つずつ指定されているリストが含まれている必要があります。 それぞれの名前を囲む空白文字とタブ文字、および空白行は無視されます。 コメント文字は#(0x23)です。各行では、最初のコメント文字以降の文字はすべて無視されます。 ファイルはUTF-8で符号化されている必要があります。

        このメソッドは、構成ファイルから収集したクラス名のリストから、最初にロードおよびインスタンス化できた実装クラスのインスタンスを返します。 このメソッドは、呼出し側スレッドのコンテキスト・クラス・ローダーを使用して構成ファイルを検索し、実装クラスをロードします。

        上記の方法でクラスが見つからなかった場合は、実装固有の方法で実装を検索します。 実装が見つからなかった場合はNamingExceptionがスローされます。

        定義:
        createExtendedResponse、インタフェース: ExtendedRequest
        パラメータ:
        id - 拡張応答のオブジェクト識別子。 値は1.3.6.1.4.1.1466.20037またはnullでなければならない。 この2つの値は等価である。
        berValue - nullの可能性のある拡張応答のASN.1 BERでエンコードされた値。 この値は、応答値のタグと長さを含むraw BERバイトである。 ただし、応答OIDは含まない。 Start TLS応答は応答値を含まないため、この値は無視される。
        offset - 使用するバイトのberValue内の開始位置。 Start TLS応答は応答値を含まないため、この値は無視される。
        length - 使用するberValue内のバイト数。 Start TLS応答は応答値を含まないため、この値は無視される。
        戻り値:
        StartTLS拡張応答オブジェクト。
        例外:
        NamingException - StartTLS拡張応答オブジェクトの作成中にネーミング例外が発生した場合。
        関連項目:
        ExtendedResponse