モジュール java.base
パッケージ javax.net.ssl

クラスTrustManagerFactory


  • public class TrustManagerFactory
    extends Object
    このクラスは、信頼データのソースに基づいて、信頼マネージャのファクトリとして機能します。 各信頼マネージャは、セキュア・ソケットが使用する信頼データを管理します。 信頼リアルは、KeyStoreおよび/またはプロバイダ固有のソースに基づいています。

    Javaプラットフォームのすべての実装は、次の標準のTrustManagerFactoryアルゴリズムをサポートする必要があります:

    • PKIX
    このアルゴリズムはJavaセキュリティ標準アルゴリズム名仕様の「TrustManagerFactoryセクション」に記述されています。 サポートされているその他のアルゴリズムについては、実装のリリース・ドキュメントを参照してください。

    導入されたバージョン:
    1.4
    関連項目:
    TrustManager
    • コンストラクタの詳細

      • TrustManagerFactory

        protected TrustManagerFactory​(TrustManagerFactorySpi factorySpi,
                                      Provider provider,
                                      String algorithm)
        TrustManagerFactoryオブジェクトを生成します。
        パラメータ:
        factorySpi - 委譲先
        provider - プロバイダ
        algorithm - アルゴリズム
    • メソッドの詳細

      • getDefaultAlgorithm

        public static final String getDefaultAlgorithm()
        デフォルトのTrustManagerFactoryアルゴリズム名を取得します。

        実行時にデフォルトのTrustManagerを変更するには、ssl.TrustManagerFactory.algorithmセキュリティ・プロパティの値を目的のアルゴリズム名に設定します。

        戻り値:
        ssl.TrustManagerFactory.algorithmセキュリティ・プロパティにより指定されているデフォルトのアルゴリズム名。そのようなプロパティが存在しない場合は実装固有のデフォルト。
        関連項目:
        security properties
      • getAlgorithm

        public final String getAlgorithm()
        このTrustManagerFactoryオブジェクトのアルゴリズム名を返します。

        これは、このTrustManagerFactoryオブジェクトを作成したgetInstance呼出しのいずれかに指定された名前と同じです。

        戻り値:
        このTrustManagerFactoryオブジェクトのアルゴリズム名
      • getInstance

        public static final TrustManagerFactory getInstance​(String algorithm)
                                                     throws NoSuchAlgorithmException
        キー・マネージャのファクトリとして機能するTrustManagerFactoryオブジェクトを返します。

        このメソッドは、最優先のProviderから順に、登録済みのセキュリティProviderのリストをトラバースします。 指定されたアルゴリズムをサポートする最初のプロバイダからのTrustManagerFactorySpiの実装をカプセル化する新しいTrustManagerFactoryオブジェクトが返されます。

        登録済みプロバイダのリストは、Security.getProviders()メソッド経由で取得できます。

        実装上のノート:
        JDKリファレンス実装では、jdk.security.provider.preferred Securityプロパティを使用して、指定されたアルゴリズムの優先プロバイダの順序を決定します。 これは、Security.getProviders()によって返されるプロバイダの順序とは異なる場合があります。
        パラメータ:
        algorithm - 要求された信頼管理アルゴリズムの標準名。 標準的なアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」のドキュメントを参照してください。
        戻り値:
        新しいTrustManagerFactoryオブジェクト
        例外:
        NoSuchAlgorithmException - Providerが、指定されたアルゴリズムのTrustManagerFactorySpi実装をサポートしていない場合
        NullPointerException - algorithmnullである場合
        関連項目:
        Provider
      • getInstance

        public static final TrustManagerFactory getInstance​(String algorithm,
                                                            String provider)
                                                     throws NoSuchAlgorithmException,
                                                            NoSuchProviderException
        キー・マネージャのファクトリとして機能するTrustManagerFactoryオブジェクトを返します。

        指定されたプロバイダからのKeyManagerFactorySpiの実装をカプセル化する新しいKeyManagerFactoryオブジェクトが返されます。 指定したプロバイダは、セキュリティ・プロバイダ・リストに登録する必要があります。

        登録済みプロバイダのリストは、Security.getProviders()メソッド経由で取得できます。

        パラメータ:
        algorithm - 要求された信頼管理アルゴリズムの標準名。 標準的なアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」のドキュメントを参照してください。
        provider - プロバイダ名。
        戻り値:
        新しいTrustManagerFactoryオブジェクト
        例外:
        IllegalArgumentException - プロバイダ名がnullまたは空の場合
        NoSuchAlgorithmException - 指定されたアルゴリズムのTrustManagerFactorySpi実装が、指定されたプロバイダから利用可能でない場合
        NoSuchProviderException - 指定されたプロバイダがセキュリティ・プロバイダ・リストに登録されていない場合
        NullPointerException - algorithmnullである場合
        関連項目:
        Provider
      • getInstance

        public static final TrustManagerFactory getInstance​(String algorithm,
                                                            Provider provider)
                                                     throws NoSuchAlgorithmException
        キー・マネージャのファクトリとして機能するTrustManagerFactoryオブジェクトを返します。

        指定されたProviderオブジェクトからのTrustManagerFactorySpiの実装をカプセル化する新しいTrustManagerFactoryオブジェクトが返されます。 指定されたProviderオブジェクトは、プロバイダ・リストに登録する必要はありません。

        パラメータ:
        algorithm - 要求された信頼管理アルゴリズムの標準名。 標準的なアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」のドキュメントを参照してください。
        provider - プロバイダのインスタンス。
        戻り値:
        新しいTrustManagerFactoryオブジェクト
        例外:
        IllegalArgumentException - プロバイダがnullの場合
        NoSuchAlgorithmException - 指定されたアルゴリズムのTrustManagerFactorySpi実装が、指定されたProviderオブジェクトから使用できない場合
        NullPointerException - algorithmnullである場合
        関連項目:
        Provider
      • getProvider

        public final Provider getProvider()
        このTrustManagerFactoryオブジェクトのプロバイダを返します。
        戻り値:
        このTrustManagerFactoryオブジェクトのプロバイダ
      • init

        public final void init​(KeyStore ks)
                        throws KeyStoreException
        証明書発行局と関連する信頼データのソースを使用して、このファクトリを初期化します。

        プロバイダは通常、キーストアを使用して、信頼を判断します。

        より柔軟に初期化を行うには、init(ManagerFactoryParameters)を参照してください。

        パラメータ:
        ks - キーストアまたはnull
        例外:
        KeyStoreException - この操作が失敗した場合
      • init

        public final void init​(ManagerFactoryParameters spec)
                        throws InvalidAlgorithmParameterException
        プロバイダ固有の信頼データのソースを使用して、このファクトリを初期化します。

        一部のプロバイダでは、キーストア以外に、初期化パラメータを必要とすることがあります。 特定のプロバイダの利用者は、プロバイダによる定義に従って、適切なManagerFactoryParametersの実装を渡す必要があります。 そのあと、プロバイダはManagerFactoryParameters実装の特定のメソッドを呼び出し、必要な情報を取得できます。

        パラメータ:
        spec - プロバイダ固有のパラメータ仕様の実装
        例外:
        InvalidAlgorithmParameterException - エラーが検出された場合
      • getTrustManagers

        public final TrustManager[] getTrustManagers()
        信頼データの種類ごとに1つの信頼マネージャを返します。
        戻り値:
        信頼マネージャ
        例外:
        IllegalStateException - ファクトリが初期化されていない場合。