クラスPKIXParameters
- すべての実装されたインタフェース:
Cloneable,CertPathParameters
- 直系の既知のサブクラス:
PKIXBuilderParameters
CertPathValidatorアルゴリズムの入力で使用されるパラメータです。
PKIX CertPathValidatorではこれらのパラメータを使用し、PKIX証明書パス検査アルゴリズムに従ってCertPathを検査します。
PKIXParametersオブジェクトをインスタンス化するには、アプリケーションでPKIX証明書パス検査アルゴリズムで定義されるもっとも信頼できるCAを1つ以上指定しなければいけません。 もっとも信頼できるCAは、2つのコンストラクタのどちらかを使用して指定されます。 PKIXParameters(Set)を呼び出す場合は、TrustAnchorオブジェクトのSetを指定します。それぞれのTrustAnchorオブジェクトではもっとも信頼できるCAを特定します。 またアプリケーションは、信頼できる証明書エントリが含まれるKeyStoreインスタンスを指定してPKIXParameters(KeyStore)を呼び出すことができます。それぞれの証明書エントリがもっとも信頼できるCAになります。
PKIXParametersオブジェクトが作成されると、(たとえばsetInitialPoliciesまたはsetDateを呼び出して)ほかのパラメータを指定し、PKIXParametersが検査対象のCertPathとともにCertPathValidator.validateに渡されます。
設定されていない(またはnullに設定されている)パラメータは、それぞれのデフォルト値に設定されます。 dateパラメータのデフォルト値はnullで、パスが検証されたときの現在時刻を示します。 そのほかのパラメータのデフォルト値はほとんど制約されません。
並行アクセス
特に断らないかぎり、このクラスで定義されているメソッドはスレッドセーフではありません。 単一のオブジェクトに並行アクセスする必要のある複数スレッドは、スレッド間で同期をとり、必要に応じてロックする必要があります。 複数のスレッドがそれぞれ個別のオブジェクトを処理する場合、それらのスレッドは同期する必要はありません。
- 導入されたバージョン:
- 1.4
- 関連項目:
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明PKIXParameters(KeyStore keystore) もっとも信頼できるCAのセットを、指定したKeyStoreに含まれる信頼できる証明書エントリから生成する、PKIXParametersのインスタンスを作成します。PKIXParameters(Set<TrustAnchor> trustAnchors) もっとも信頼できるCAからなる指定したSetで、PKIXParametersのインスタンスを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明voidaddCertPathChecker(PKIXCertPathChecker checker) PKIXCertPathCheckerを証明書パス・チェッカのリストに追加します。voidaddCertStore(CertStore store) CertStoreを、証明書とCRLを見つけるために使用されるCertStoreのリストの最後に追加します。clone()このPKIXParametersオブジェクトのコピーを作成します。証明書パス・チェッカのListを返します。証明書とCRLを見つけるために使用されるCertStoreの不変なListを返します。getDate()証明書パスの妥当性が判断される時刻を返します。どの初期ポリシーも証明書パス処理のために証明書ユーザーにとって許容できるような初期ポリシー識別子(OID文字列)の不変なSetを返します。booleanPolicyQualifiersRejectedフラグを取得します。署名プロバイダの名前を返します。設定されていない場合はnullを返します。ターゲット証明書に要求された制約を返します。もっとも信頼できるCAの不変なSetを返します。boolean任意のポリシーOIDが証明書に含まれるとき、そのポリシーOIDが処理されるべきかどうかをチェックします。boolean明示的なポリシーが要求されているかどうかをチェックします。booleanポリシー・マッピングが抑制されているかどうかをチェックします。booleanRevocationEnabledフラグをチェックします。voidsetAnyPolicyInhibited(boolean val) 任意のポリシーOIDが証明書に含まれるときに、そのポリシーOIDが処理されなければならないかどうかを判断する状態を設定します。voidsetCertPathCheckers(List<PKIXCertPathChecker> checkers) 追加の証明書パス・チェッカのListを設定します。voidsetCertStores(List<CertStore> stores) 証明書とCRLを見つけるために使用されるCertStoreのリストを設定します。void証明書パスの妥当性が判断される時刻を設定します。voidsetExplicitPolicyRequired(boolean val) ExplicitPolicyRequiredフラグを設定します。voidsetInitialPolicies(Set<String> initialPolicies) 初期ポリシー識別子(OID文字列)のSetを設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。voidsetPolicyMappingInhibited(boolean val) PolicyMappingInhibitedフラグを設定します。voidsetPolicyQualifiersRejected(boolean qualifiersRejected) PolicyQualifiersRejectedフラグを設定します。voidsetRevocationEnabled(boolean val) RevocationEnabledフラグを設定します。voidsetSigProvider(String sigProvider) 署名プロバイダの名前を設定します。voidsetTargetCertConstraints(CertSelector selector) ターゲット証明書に要求された制約を設定します。voidsetTrustAnchors(Set<TrustAnchor> trustAnchors) もっとも信頼できるCAのSetを設定します。toString()パラメータを説明する書式付き文字列を返します。
-
コンストラクタの詳細
-
PKIXParameters
public PKIXParameters(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException もっとも信頼できるCAからなる指定したSetで、PKIXParametersのインスタンスを作成します。 セットの各要素はTrustAnchorです。以後の変更から保護するために、
Setは複製されています。- パラメータ:
trustAnchors-TrustAnchorのSet- スロー:
InvalidAlgorithmParameterException- 指定されたSetが空((trustAnchors.isEmpty()== true))である場合NullPointerException- 指定されたSetがnullである場合ClassCastException-Setの要素のいずれかがjava.security.cert.TrustAnchor型ではない場合
-
PKIXParameters
public PKIXParameters(KeyStore keystore) throws KeyStoreException, InvalidAlgorithmParameterException もっとも信頼できるCAのセットを、指定したKeyStoreに含まれる信頼できる証明書エントリから生成する、PKIXParametersのインスタンスを作成します。 信頼できるX509Certificatesを含むキーストア・エントリだけが対象となり、それ以外の証明書タイプはすべて無視されます。- パラメータ:
keystore- もっとも信頼できるCAのセットが生成されるKeyStore- スロー:
KeyStoreException- キーストアが初期化されていない場合InvalidAlgorithmParameterException- キーストアに信頼できる証明書エントリが1つも含まれない場合NullPointerException- キーストアがnullである場合
-
-
メソッドの詳細
-
getTrustAnchors
public Set<TrustAnchor> getTrustAnchors()もっとも信頼できるCAの不変なSetを返します。- 戻り値:
TrustAnchorの不変のSet。nullにはならない- 関連項目:
-
setTrustAnchors
public void setTrustAnchors(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException もっとも信頼できるCAのSetを設定します。以後の変更から保護するために、
Setは複製されています。- パラメータ:
trustAnchors-TrustAnchorのSet- スロー:
InvalidAlgorithmParameterException- 指定されたSetが空((trustAnchors.isEmpty()== true))である場合NullPointerException- 指定されたSetがnullである場合ClassCastException- セットの要素のいずれかが型java.security.cert.TrustAnchorではない場合- 関連項目:
-
getInitialPolicies
-
setInitialPolicies
初期ポリシー識別子(OID文字列)のSetを設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。 デフォルトでは、どのポリシーも(つまりすべてのポリシーを)許容できるため、どのポリシーも許容できるようにしたいユーザーはこのメソッドを呼び出す必要はありません。または、空のSet(またはnull)で呼び出すことができます。以後の変更から保護するために、
Setは複製されています。- パラメータ:
initialPolicies-String形式の初期ポリシーOIDのSet(またはnull)- スロー:
ClassCastException- セットの要素のいずれかが型Stringではない場合- 関連項目:
-
setCertStores
証明書とCRLを見つけるために使用されるCertStoreのリストを設定します。 使用されるCertStoreがない場合には、nullになります。 リスト中の最初のCertStoreは、後のエントリに優先します。以後の変更から保護するために、
Listは複製されています。- パラメータ:
stores-CertStoreのList、またはnull- スロー:
ClassCastException- リストの要素のいずれかが型java.security.cert.CertStoreではない場合- 関連項目:
-
addCertStore
public void addCertStore(CertStore store) CertStoreを、証明書とCRLを見つけるために使用されるCertStoreのリストの最後に追加します。- パラメータ:
store- 追加されるCertStore。nullの場合、ストアは無視される(リストに追加されない)。
-
getCertStores
-
setRevocationEnabled
public void setRevocationEnabled(boolean val) RevocationEnabledフラグを設定します。 このフラグがtrueの場合、PKIXRevocationCheckerがCertPathChecker(詳細は、次の説明を参照してください)として渡されないかぎり、基礎となるPKIXサービス・プロバイダのデフォルト取消しチェック・メカニズムが使用されます。 falseの場合、デフォルトの取消しチェック・メカニズムは無効にされます(使用されない)。PKIXParametersオブジェクトが作成されると、このフラグはtrueに設定されます。 各サービス・プロバイダではPKIXに準拠するために取消しチェックをサポートする必要があるので、この設定は取消しをチェックするもっとも一般的な方法を反映しています。 PKIXサービス・プロバイダのデフォルトの取消しチェック・メカニズムを使用することが実際的でないときや、代替の取消しチェック・メカニズムが代わりをするときは(addCertPathCheckerまたはsetCertPathCheckersメソッドを呼び出すことによっても)、高度なアプリケーションでこのフラグをfalseに設定する必要があります。PKIXRevocationCheckerがaddCertPathCheckerまたはsetCertPathCheckersメソッドを介してパラメータとして渡される場合、RevocationEnabledフラグの設定に関係なく失効をチェックするために使用されます。- パラメータ:
val- RevocationEnabledフラグの新しい値
-
isRevocationEnabled
public boolean isRevocationEnabled()RevocationEnabledフラグをチェックします。 このフラグがtrueの場合、PKIXRevocationCheckerがCertPathCheckerとして渡されないかぎり、基礎となるPKIXサービス・プロバイダのデフォルト取消しチェック・メカニズムが使用されます。 falseの場合、デフォルトの取消しチェック・メカニズムは無効にされます(使用されない)。 このフラグの値の設定の詳細は、setRevocationEnabledメソッドを参照してください。- 戻り値:
- RevocationEnabledフラグの現在の値
-
setExplicitPolicyRequired
public void setExplicitPolicyRequired(boolean val) ExplicitPolicyRequiredフラグを設定します。 このフラグがtrueの場合、許容できるポリシーがそれぞれの証明書で明示的に特定されている必要があります。 デフォルトでExplicitPolicyRequiredフラグはfalseです。- パラメータ:
val- 明示的なポリシーが要求されている場合はtrue、そうでない場合はfalse
-
isExplicitPolicyRequired
public boolean isExplicitPolicyRequired()明示的なポリシーが要求されているかどうかをチェックします。 このフラグがtrueの場合、許容できるポリシーがそれぞれの証明書で明示的に特定されている必要があります。 デフォルトでExplicitPolicyRequiredフラグはfalseです。- 戻り値:
- 明示的なポリシーが要求されている場合は
true、そうでない場合はfalse
-
setPolicyMappingInhibited
public void setPolicyMappingInhibited(boolean val) PolicyMappingInhibitedフラグを設定します。 このフラグがtrueの場合、ポリシー・マッピングは抑制されています。 デフォルトでポリシー・マッピングは抑制されていません(フラグはfalse)。- パラメータ:
val- ポリシー・マッピングが抑制されている場合はtrue、そうでない場合はfalse
-
isPolicyMappingInhibited
public boolean isPolicyMappingInhibited()ポリシー・マッピングが抑制されているかどうかをチェックします。 このフラグがtrueの場合、ポリシー・マッピングは抑制されています。 デフォルトでポリシー・マッピングは抑制されていません(フラグはfalse)。- 戻り値:
- ポリシー・マッピングが抑制されている場合はtrue、そうでない場合はfalse
-
setAnyPolicyInhibited
public void setAnyPolicyInhibited(boolean val) 任意のポリシーOIDが証明書に含まれるときに、そのポリシーOIDが処理されなければならないかどうかを判断する状態を設定します。 デフォルトでは、ポリシーOIDは抑制されません(isAnyPolicyInhibited()はfalseを返す)。- パラメータ:
val- 任意のポリシーOIDが抑制される場合はtrue、そうでない場合はfalse
-
isAnyPolicyInhibited
public boolean isAnyPolicyInhibited()任意のポリシーOIDが証明書に含まれるとき、そのポリシーOIDが処理されるべきかどうかをチェックします。- 戻り値:
- 任意のポリシーOIDが抑制されている場合は
true、そうでない場合はfalse
-
setPolicyQualifiersRejected
public void setPolicyQualifiersRejected(boolean qualifiersRejected) PolicyQualifiersRejectedフラグを設定します。 このフラグがtrueの場合、クリティカルにマークされている証明書ポリシー機能拡張にポリシー修飾子を含む証明書は、拒否されます。 フラグがfalseの場合、この理由では拒否されません。PKIXParametersオブジェクトが作成されると、このフラグはtrueに設定されます。 この設定は、ポリシー修飾子を処理するためのもっとも一般的な(かつ簡単な)方法を反映します。 より複雑なポリシーを使用するアプリケーションでは、このフラグをfalseに設定する必要があります。PKIX証明書パス検査アルゴリズムでは、クリティカルにマークされた証明書ポリシー拡張機能のポリシー修飾子が必ず処理され、検査されるように指定します。 ポリシー修飾子が処理および検査されないと、その証明書パスは拒否されます。 policyQualifiersRejectedフラグがfalseに設定されている場合、PKIX互換のためにこの方法ですべてのポリシー修飾子を検査するかどうかは、アプリケーションによって異なります。
- パラメータ:
qualifiersRejected- PolicyQualifiersRejectedフラグの新しい値- 関連項目:
-
getPolicyQualifiersRejected
public boolean getPolicyQualifiersRejected()PolicyQualifiersRejectedフラグを取得します。 このフラグがtrueの場合、クリティカルにマークされている証明書ポリシー機能拡張にポリシー修飾子を含む証明書は、拒否されます。 フラグがfalseの場合、この理由では拒否されません。PKIXParametersオブジェクトが作成されると、このフラグはtrueに設定されます。 この設定は、ポリシー修飾子を処理するためのもっとも一般的な(かつ簡単な)方法を反映します。 より複雑なポリシーを使用するアプリケーションでは、このフラグをfalseに設定する必要があります。- 戻り値:
- PolicyQualifiersRejectedフラグの現在の値
- 関連項目:
-
getDate
public Date getDate()証明書パスの妥当性が判断される時刻を返します。nullの場合、現在時刻が使われます。以後の変更から保護するために、返される
Dateは複製されています。- 戻り値:
Date。設定されていない場合はnull- 関連項目:
-
setDate
public void setDate(Date date) 証明書パスの妥当性が判断される時刻を設定します。nullの場合、現在時刻が使われます。以後の変更から保護するために、ここで提供される
Dateは複製されています。- パラメータ:
date-Date。現在時刻の場合はnull- 関連項目:
-
setCertPathCheckers
public void setCertPathCheckers(List<PKIXCertPathChecker> checkers) 追加の証明書パス・チェッカのListを設定します。 指定したListにPKIXCertPathCheckerでないオブジェクトが含まれる場合は無視されます。指定した各
PKIXCertPathCheckerでは、証明書の追加チェックを実装しています。 通常、証明書に含まれている専用の機能拡張を、処理および検査しているかどうかをチェックします。 それぞれのPKIXCertPathCheckerは、チェックを行うために必要な初期化パラメータでインスタンス化されなければいけません。高度なアプリケーションでは、このメソッドによりPKIX
CertPathValidatorやCertPathBuilderを拡張できます。 処理された、または検査された証明書のぞれぞれに対し、指定したPKIXCertPathCheckerが、PKIXCertPathValidatorやCertPathBuilderによってそれぞれ順番に呼び出されます。これらの追加
PKIXCertPathCheckerが設定されているかどうかにかかわらず、PKIXCertPathValidatorやCertPathBuilderでは要求された各証明書のPKIXチェックをすべて実行する必要があります。 このルールの例外の1つに、RevocationEnabledフラグがfalseに設定された場合があります(setRevocationEnabledメソッド参照)。以後の変更から保護するために、ここで提供される
Listとリスト内の各PKIXCertPathCheckerは複製されています。- パラメータ:
checkers-PKIXCertPathCheckerのList。nullの場合、追加のチェッカは使用されない。- スロー:
ClassCastException- リストの要素のいずれかが型java.security.cert.PKIXCertPathCheckerではない場合- 関連項目:
-
getCertPathCheckers
public List<PKIXCertPathChecker> getCertPathCheckers()証明書パス・チェッカのListを返します。 返されたListは不変であり、List内の各PKIXCertPathCheckerは以後の変更から保護するために複製されています。- 戻り値:
PKIXCertPathCheckerの不変なList(空は可、nullは不可)- 関連項目:
-
addCertPathChecker
public void addCertPathChecker(PKIXCertPathChecker checker) PKIXCertPathCheckerを証明書パス・チェッカのリストに追加します。 詳細は、setCertPathCheckersメソッドを参照してください。以後の変更から保護するために、
PKIXCertPathCheckerは複製されています。- パラメータ:
checker- チェックのリストに追加されるPKIXCertPathChecker。nullの場合、チェッカは無視される(リストに追加されない)。
-
getSigProvider
-
setSigProvider
-
getTargetCertConstraints
public CertSelector getTargetCertConstraints()ターゲット証明書に要求された制約を返します。 制約はCertSelectorのインスタンスとして返されます。nullの場合は、制約が定義されていません。以後の変更から保護するために、返される
CertSelectorは複製されています。- 戻り値:
- ターゲット証明書の制約を指定する
CertSelector、またはnull - 関連項目:
-
setTargetCertConstraints
public void setTargetCertConstraints(CertSelector selector) ターゲット証明書に要求された制約を設定します。 制約はCertSelectorのインスタンスとして指定されます。nullの場合は、制約が定義されていません。以後の変更から保護するために、指定された
CertSelectorは複製されています。- パラメータ:
selector- ターゲット証明書の制約を指定するCertSelector、またはnull- 関連項目:
-
clone
public Object clone()このPKIXParametersオブジェクトのコピーを作成します。 コピーに変更を加えても元の属性には影響ありません。また逆の場合も同じです。- 定義:
clone、インタフェースCertPathParameters- オーバーライド:
clone、クラスObject- 戻り値:
- この
PKIXParametersオブジェクトのコピー - 関連項目:
-
toString
-