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

クラスCertStoreSpi

java.lang.Object
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 - 例外が発生する場合