public class CertStore extends Object
CertificateとCRLを取得するクラスです。
このクラスは、プロバイダ・ベースのアーキテクチャを使用します。 CertStoreを作成するには、static getInstanceメソッドのうちの1つを呼び出して、作成するCertStoreの型、適用可能な初期化パラメータ、プロバイダ名(オプション)を渡します。
CertStoreを作成すると、getCertificatesとgetCRLsメソッドを呼び出すことで、CertificateとCRLを取得できます。
CertStoreは、非公開キーおよび信頼できる証明書のキャッシュへのアクセスを提供するKeyStoreとは異なり、非常に大きくなる可能性がある、信頼されない証明書およびCRLのリポジトリへのアクセスを提供するように設計されています。 たとえば、CertStoreのLDAP実装では、LDAPプロトコルとRFCサービス属性として定義されたスキーマとを使用して、1つ以上のディレクトリに格納された証明書とCRLへアクセスできます。
Javaプラットフォームの実装は、すべて次の標準のCertStoreタイプをサポートする必要があります。
Collection並行アクセス
CertStoreオブジェクトのすべてのpublicメソッドは、スレッドセーフでなければいけません。 つまり、単一の(または複数の) CertStoreオブジェクト上で、複数のスレッドがこれらのメソッドを並行して呼び出しても、悪影響はありません。 これにより、たとえばCertPathBuilderは、CRLを検索しながら同時にほかの証明書を検索できます。
また、このクラスのstaticメソッドは、スレッドセーフであることが保証されています。 このクラスで定義されているstaticメソッドは、悪影響を与えることなく、複数スレッドが並行して呼び出すことができます。
| 修飾子 | コンストラクタ | 説明 |
|---|---|---|
protected |
CertStore(CertStoreSpi storeSpi, Provider provider, String type, CertStoreParameters params) |
指定されたタイプの
CertStoreオブジェクトを作成し、指定されたプロバイダの実装(SPIオブジェクト)をそこにカプセル化します。 |
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
Collection<? extends Certificate> |
getCertificates(CertSelector selector) |
指定したセレクタに一致する
CertificateのCollectionを返します。 |
CertStoreParameters |
getCertStoreParameters() |
この
CertStoreを初期化するためのパラメータを返します。 |
Collection<? extends CRL> |
getCRLs(CRLSelector selector) |
指定したセレクタに一致する
CRLのCollectionを返します。 |
static String |
getDefaultType() |
certstore.typeセキュリティ・プロパティに指定されているデフォルトのCertStoreタイプを返します。該当するプロパティが存在しない場合は、文字列「LDAP」を返します。 |
static CertStore |
getInstance(String type, CertStoreParameters params) |
指定した
CertStore型を実装し、指定したパラメータで初期化されるCertStoreを返します。 |
static CertStore |
getInstance(String type, CertStoreParameters params, Provider provider) |
指定された
CertStoreタイプを実装するCertStoreオブジェクトを返します。 |
static CertStore |
getInstance(String type, CertStoreParameters params, String provider) |
指定された
CertStoreタイプを実装するCertStoreオブジェクトを返します。 |
Provider |
getProvider() |
この
CertStoreのプロバイダを返します。 |
String |
getType() |
この
CertStoreのタイプを返します。 |
protected CertStore(CertStoreSpi storeSpi, Provider provider, String type, CertStoreParameters params)
CertStoreオブジェクトを作成し、指定されたプロバイダの実装(SPIオブジェクト)をそこにカプセル化します。storeSpi - プロバイダの実装provider - プロバイダtype - タイプparams - 初期化パラメータ。nullも可public final Collection<? extends Certificate> getCertificates(CertSelector selector) throws CertStoreException
CertificateのCollectionを返します。 セレクタに一致するCertificateがない場合は、空のCollectionが返されます。
CertStoreのタイプによっては、セレクタに一致するCertificateのすべてが結果として得られるCollectionに含まれないことがあります。 たとえば、LDAP CertStoreは、ディレクトリ内のすべてのエントリを検索しない場合があります。 代わりに、検索するCertificateが含まれると考えられるエントリに絞って検索します。
CertStoreの実装の中には、証明書を見つけるための特定の条件を含むnull以外のCertSelectorが提供されないかぎり、CertStoreExceptionをスローするものがあります(特にLDAP CertStore)。 発行者やサブジェクトの名前は特に役立つ条件となります。
selector - 返されるCertificateを選択するために使用するCertSelector。 nullを指定すると、サポートされている場合はすべてのCertificateが返される。 CertificateのCollection。nullにはならないCertStoreException - 例外が発生する場合public final Collection<? extends CRL> getCRLs(CRLSelector selector) throws CertStoreException
CRLのCollectionを返します。 セレクタに一致するCRLがない場合は、空のCollectionが返されます。
CertStoreのタイプによっては、セレクタに一致するCRLのすべてが結果として得られるCollectionに含まれないことがあります。 たとえば、LDAP CertStoreは、ディレクトリ内のすべてのエントリを検索しない場合があります。 代わりに、検索するCRLが含まれると考えられるエントリに絞って検索します。
CertStoreの実装の中には、CRLを見つけるための特定の条件を含むnull以外のCRLSelectorが提供されないかぎり、CertStoreExceptionをスローするものがあります(特にLDAP CertStore)。 発行者の名前やチェック対象の証明書は特に役立ちます。
selector - 返されるCRLを選択するために使用するCRLSelector。 nullを指定すると、サポートされている場合はすべてのCRLが返される CRLのCollection。nullにはならないCertStoreException - 例外が発生する場合public static CertStore getInstance(String type, CertStoreParameters params) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException
CertStore型を実装し、指定したパラメータで初期化されるCertStoreを返します。
このメソッドは、最優先のProviderから順に、登録済みのセキュリティProviderのリストをトラバースします。 指定された型をサポートする最初のProviderのCertStoreSpi実装をカプセル化する新しいCertStoreオブジェクトが返されます。
登録済みプロバイダのリストは、Security.getProviders()メソッド経由で取得できます。
返されたCertStoreは指定されたCertStoreParametersで初期化されます。 必要なパラメータの型は、CertStoreのタイプによって異なります。 CertStoreParametersオブジェクトの複製を指定していることに注意してください。
type - 要求するCertStoreタイプの名前。 標準のタイプについては、Java暗号化アーキテクチャ標準アルゴリズム名のドキュメントのCertStoreのセクションを参照。 params - 初期化パラメータ。nullも可。CertStoreタイプを実装するCertStoreオブジェクト。NoSuchAlgorithmException - 指定されたタイプのCertStoreSpi実装をサポートするプロバイダが存在しない場合。InvalidAlgorithmParameterException - 指定された初期化パラメータがこのCertStoreに対して不適切な場合。Providerpublic static CertStore getInstance(String type, CertStoreParameters params, String provider) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, NoSuchProviderException
CertStoreタイプを実装するCertStoreオブジェクトを返します。
指定されたプロバイダのCertStoreSpi実装をカプセル化する新しいCertStoreオブジェクトが返されます。 指定したプロバイダは、セキュリティ・プロバイダ・リストに登録する必要があります。
登録済みプロバイダのリストは、Security.getProviders()メソッド経由で取得できます。
返されたCertStoreは指定されたCertStoreParametersで初期化されます。 必要なパラメータの型は、CertStoreのタイプによって異なります。 CertStoreParametersオブジェクトの複製を指定していることに注意してください。
type - 要求されたCertStoreタイプ。 標準のタイプについては、Java暗号化アーキテクチャ標準アルゴリズム名のドキュメントのCertStoreのセクションを参照。 params - 初期化パラメータ。nullも可。provider - プロバイダ名。CertStoreオブジェクト。NoSuchAlgorithmException - 指定されたプロバイダに指定されたタイプのCertStoreSpi実装がない場合。InvalidAlgorithmParameterException - 指定された初期化パラメータがこのCertStoreに対して不適切な場合。NoSuchProviderException - 指定されたプロバイダがセキュリティ・プロバイダ・リストに登録されていない場合。IllegalArgumentException - providerがnullまたは空の場合。Providerpublic static CertStore getInstance(String type, CertStoreParameters params, Provider provider) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
CertStoreタイプを実装するCertStoreオブジェクトを返します。
指定されたProviderオブジェクトのCertStoreSpi実装をカプセル化する新しいCertStoreオブジェクトが返されます。 指定されたProviderオブジェクトは、プロバイダ・リストに登録する必要はありません。
返されたCertStoreは指定されたCertStoreParametersで初期化されます。 必要なパラメータの型は、CertStoreのタイプによって異なります。 CertStoreParametersオブジェクトの複製を指定していることに注意してください。
type - 要求されたCertStoreタイプ。 標準のタイプについては、Java暗号化アーキテクチャ標準アルゴリズム名のドキュメントのCertStoreのセクションを参照。 params - 初期化パラメータ。nullも可。provider - プロバイダ。CertStoreオブジェクト。NoSuchAlgorithmException - 指定されたProviderオブジェクトに指定されたタイプのCertStoreSpi実装がない場合。InvalidAlgorithmParameterException - 指定された初期化パラメータがこのCertStoreに対して不適切な場合IllegalArgumentException - providerがnullの場合。Providerpublic final CertStoreParameters getCertStoreParameters()
CertStoreを初期化するためのパラメータを返します。 返される前のCertStoreParametersオブジェクトは複製です。 CertStoreを初期化するパラメータ。nullも可能public final String getType()
CertStoreのタイプを返します。CertStoreの型public final Provider getProvider()
CertStoreのプロバイダを返します。CertStoreのプロバイダpublic static final String getDefaultType()
certstore.typeセキュリティ・プロパティに指定されているデフォルトのCertStoreタイプを返します。該当するプロパティが存在しない場合は、文字列「LDAP」を返します。
デフォルトのCertStoreタイプを使用するのは、アプリケーションでgetInstanceメソッドを呼び出すときにハードコードされたタイプを使用しない場合、およびユーザーが独自のタイプを指定しないときにデフォルトのCertStoreタイプを提供する場合です。
デフォルトのCertStoreタイプは、certstore.typeセキュリティ・プロパティの値を目的のタイプに設定することで変更できます。
certstore.typeセキュリティ・プロパティに指定されているデフォルトのCertStoreタイプ、該当するプロパティが存在しない場合は文字列「LDAP」。セキュリティ・プロパティ バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。