モジュール java.base
パッケージ java.security.cert

クラスCertStoreSpi


  • public abstract class CertStoreSpi
    extends Object
    CertStoreクラスのサービス・プロバイダ・インタフェース (SPI)です。 CertStoreのすべての実装には、このCertStoreSpiクラスを拡張して、CertStoreParametersタイプの引数を1つ持つコンストラクタを提供し、すべてのメソッドを実装するクラス(SPIクラス)が含まれていなければいけません。 一般に、このクラスのインスタンスには、CertStoreクラスを介してアクセスする必要があります。 詳細は、「Java暗号化アーキテクチャ」を参照してください。

    並行アクセス

    すべてのCertStoreSpiオブジェクトのpublicメソッドは、スレッドに対して安全である必要があります。 つまり、単一の(または複数の) CertStoreSpiオブジェクト上で、複数のスレッドがこれらのメソッドを並行して呼び出しても、悪影響はありません。 これにより、たとえばCertPathBuilderは、CRLを検索しながら同時にほかの証明書を検索できます。

    簡単なCertStoreSpiの実装では、synchronizedキーワードをengineGetCertificatesメソッドとengineGetCRLsメソッドに追加することで、スレッドに対して安全であることが保証されます。 高度な実装では、真の並行アクセスが可能になります。

    導入されたバージョン:
    1.4
    • メソッドの詳細

      • engineGetCertificates

        public abstract Collection<? extends Certificate> engineGetCertificates​(CertSelector selector)
                                                                         throws CertStoreException
        指定したセレクタに一致するCertificateCollectionを返します。 セレクタに一致するCertificateがない場合は、空のCollectionが返されます。

        CertStoreのタイプによっては、セレクタに一致するCertificateすべてが結果として得られるCollectionに含まれないことがあります。 たとえば、LDAP CertStoreは、ディレクトリ内のすべてのエントリを検索しない場合があります。 代わりに、検索するCertificateが含まれると考えられるエントリに絞って検索します。

        CertStoreの実装の中には、証明書を見つけるための特定の条件を含むnull以外のCertSelectorが提供されないかぎり、CertStoreExceptionをスローするものがあります(特にLDAP CertStore)。 発行者やサブジェクトの名前は特に役立つ条件となります。

        パラメータ:
        selector - 返されるCertificateを選択するために使用するCertSelector nullを指定すると、サポートされている場合はすべてのCertificateが返される。
        戻り値:
        指定したセレクタに一致するCertificateCollectionnullにはならない
        例外:
        CertStoreException - 例外が発生する場合
      • engineGetCRLs

        public abstract Collection<? extends CRL> engineGetCRLs​(CRLSelector selector)
                                                         throws CertStoreException
        指定したセレクタに一致するCRLCollectionを返します。 セレクタに一致するCRLがない場合は、空のCollectionが返されます。

        CertStoreのタイプによっては、セレクタに一致するCRLすべてが結果として得られるCollectionに含まれないことがあります。 たとえば、LDAP CertStoreは、ディレクトリ内のすべてのエントリを検索しない場合があります。 代わりに、検索するCRLが含まれると考えられるエントリに絞って検索します。

        CertStoreの実装の中には、CRLを見つけるための特定の条件を含むnull以外のCRLSelectorが提供されないかぎり、CertStoreExceptionをスローするものがあります(特にLDAP CertStore)。 発行者の名前やチェック対象の証明書は特に役立ちます。

        パラメータ:
        selector - 返されるCRLを選択するために使用するCRLSelector nullを指定すると、サポートされている場合はすべてのCRLが返される
        戻り値:
        指定したセレクタに一致するCRLCollectionnullにはならない
        例外:
        CertStoreException - 例外が発生する場合