public class PKIXParameters extends Object implements CertPathParameters
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
で、パスが検証されたときの現在時刻を示します。そのほかのパラメータのデフォルト値はほとんど制約されません。
並行アクセス
特に断らないかぎり、このクラスで定義されているメソッドはスレッドセーフではありません。単一のオブジェクトに並行アクセスする必要のある複数スレッドは、スレッド間で同期をとり、必要に応じてロックする必要があります。複数のスレッドがそれぞれ個別のオブジェクトを処理する場合、それらのスレッドは同期する必要はありません。
CertPathValidator
コンストラクタと説明 |
---|
PKIXParameters(KeyStore keystore)
もっとも信頼できる CA のセットを、指定した
KeyStore に含まれる信頼できる証明書エントリから生成する、PKIXParameters のインスタンスを作成します。 |
PKIXParameters(Set<TrustAnchor> trustAnchors)
もっとも信頼できる CA からなる指定した
Set で、PKIXParameters のインスタンスを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
void |
addCertPathChecker(PKIXCertPathChecker checker)
PKIXCertPathChecker を証明書パスチェッカーのリストに追加します。 |
void |
addCertStore(CertStore store)
CertStore を、証明書と CRL を見つけるために使用される CertStore のリストの最後に追加します。 |
Object |
clone()
この
PKIXParameters オブジェクトの複製を作成します。 |
List<PKIXCertPathChecker> |
getCertPathCheckers()
証明書パスチェッカーの
List を返します。 |
List<CertStore> |
getCertStores()
証明書と CRL を見つけるために使用される
CertStore の不変な List を返します。 |
Date |
getDate()
証明書パスの妥当性が判断される時刻を返します。
|
Set<String> |
getInitialPolicies()
どの初期ポリシーも証明書パス処理のために証明書ユーザーにとって許容できるような初期ポリシー識別子 (OID 文字列) の不変な
Set を返します。 |
boolean |
getPolicyQualifiersRejected()
PolicyQualifiersRejected フラグを取得します。
|
String |
getSigProvider()
署名プロバイダの名前を返します。設定されていない場合は
null を返します。 |
CertSelector |
getTargetCertConstraints()
ターゲット証明書に要求された制約を返します。
|
Set<TrustAnchor> |
getTrustAnchors()
もっとも信頼できる CA の不変な
Set を返します。 |
boolean |
isAnyPolicyInhibited()
任意のポリシー OID が証明書に含まれるとき、そのポリシー OID が処理されるべきかどうかをチェックします。
|
boolean |
isExplicitPolicyRequired()
明示的なポリシーが要求されているかどうかをチェックします。
|
boolean |
isPolicyMappingInhibited()
ポリシーマッピングが抑制されているかどうかをチェックします。
|
boolean |
isRevocationEnabled()
RevocationEnabled フラグをチェックします。
|
void |
setAnyPolicyInhibited(boolean val)
任意のポリシー OID が証明書に含まれるときに、そのポリシー OID が処理されなければならないかどうかを判断する状態を設定します。
|
void |
setCertPathCheckers(List<PKIXCertPathChecker> checkers)
追加の証明書パスチェッカーの
List を設定します。 |
void |
setCertStores(List<CertStore> stores)
証明書と CRL を見つけるために使用される
CertStore のリストを設定します。 |
void |
setDate(Date date)
証明書パスの妥当性が判断される時刻を設定します。
|
void |
setExplicitPolicyRequired(boolean val)
ExplicitPolicyRequired フラグを設定します。
|
void |
setInitialPolicies(Set<String> initialPolicies)
初期ポリシー識別子 (OID 文字列) の
Set を設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。 |
void |
setPolicyMappingInhibited(boolean val)
PolicyMappingInhibited フラグを設定します。
|
void |
setPolicyQualifiersRejected(boolean qualifiersRejected)
PolicyQualifiersRejected フラグを設定します。
|
void |
setRevocationEnabled(boolean val)
RevocationEnabled フラグを設定します。
|
void |
setSigProvider(String sigProvider)
署名プロバイダの名前を設定します。
|
void |
setTargetCertConstraints(CertSelector selector)
ターゲット証明書に要求された制約を設定します。
|
void |
setTrustAnchors(Set<TrustAnchor> trustAnchors)
もっとも信頼できる CA の
Set を設定します。 |
String |
toString()
パラメータを説明する書式付き文字列を返します。
|
public PKIXParameters(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
Set
で、PKIXParameters
のインスタンスを作成します。セットの各要素は TrustAnchor
です。
以後の変更から保護するために、Set
は複製されています。
trustAnchors
- TrustAnchor
の Set
InvalidAlgorithmParameterException
- 指定された Set
が空 ((trustAnchors.isEmpty() == true)
) である場合NullPointerException
- 指定された Set
が null
である場合ClassCastException
- Set
の要素のいずれかが java.security.cert.TrustAnchor
型ではない場合public PKIXParameters(KeyStore keystore) throws KeyStoreException, InvalidAlgorithmParameterException
KeyStore
に含まれる信頼できる証明書エントリから生成する、PKIXParameters
のインスタンスを作成します。信頼できる X509Certificates
を含むキーストアエントリだけが対象となり、それ以外の証明書タイプはすべて無視されます。keystore
- もっとも信頼できる CA のセットが生成される KeyStore
KeyStoreException
- キーストアが初期化されていない場合InvalidAlgorithmParameterException
- キーストアに信頼できる証明書エントリが 1 つも含まれない場合NullPointerException
- キーストアが null
である場合public Set<TrustAnchor> getTrustAnchors()
Set
を返します。TrustAnchor
の不変の Set
。null
にはならないsetTrustAnchors(java.util.Set<java.security.cert.TrustAnchor>)
public void setTrustAnchors(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
Set
を設定します。
以後の変更から保護するために、Set
は複製されています。
trustAnchors
- TrustAnchor
の Set
InvalidAlgorithmParameterException
- 指定された Set
が空 ((trustAnchors.isEmpty() == true)
) である場合NullPointerException
- 指定された Set
が null
である場合ClassCastException
- セットの要素のいずれかが次の型ではない場合: java.security.cert.TrustAnchor
getTrustAnchors()
public Set<String> getInitialPolicies()
Set
を返します。デフォルトの戻り値は空の Set
で、どのポリシーも許容可能として解釈されます。String
形式の初期ポリシー OID の不変の Set
、または空の Set
(どのポリシーも許容できることを意味する)。null
を返すことはない。setInitialPolicies(java.util.Set<java.lang.String>)
public void setInitialPolicies(Set<String> initialPolicies)
Set
を設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。デフォルトでは、どのポリシーも (つまりすべてのポリシーを) 許容できるため、どのポリシーも許容できるようにしたいユーザーはこのメソッドを呼び出す必要はありません。または、空の Set
(または null
) で呼び出すことができます。
以後の変更から保護するために、Set
は複製されています。
initialPolicies
- String
形式の初期ポリシー OID の Set
(または null
)ClassCastException
- セットの要素のいずれかが次の型ではない場合: String
getInitialPolicies()
public void setCertStores(List<CertStore> stores)
CertStore
のリストを設定します。使用される CertStore
がない場合には、null
になります。リスト中の最初の CertStore
は、後のエントリに優先します。
以後の変更から保護するために、List
は複製されています。
stores
- CertStore
の List
、または null
ClassCastException
- リストの要素のいずれかが次の型ではない場合: java.security.cert.CertStore
getCertStores()
public void addCertStore(CertStore store)
CertStore
を、証明書と CRL を見つけるために使用される CertStore
のリストの最後に追加します。store
- 追加される CertStore
。null
の場合、ストアは無視される (リストに追加されない)。public List<CertStore> getCertStores()
CertStore
の不変な List
を返します。CertStore
の不変な List
(空は可、null
は不可)setCertStores(java.util.List<java.security.cert.CertStore>)
public void setRevocationEnabled(boolean val)
PKIXParameters
オブジェクトが作成されると、このフラグは true に設定されます。各サービスプロバイダでは PKIX に準拠するために取り消しチェックをサポートする必要があるので、この設定は取り消しをチェックするもっとも一般的な方法を反映しています。PKIX サービスプロバイダのデフォルトの取り消しチェックメカニズムを使用することが実際的でないときや、代替の取り消しチェックメカニズムが代わりをするときは (addCertPathChecker
または setCertPathCheckers
メソッドを呼び出すことによっても)、高度なアプリケーションでこのフラグを false に設定する必要があります。
val
- RevocationEnabled フラグの新しい値public boolean isRevocationEnabled()
setRevocationEnabled
メソッドを参照してください。public void setExplicitPolicyRequired(boolean val)
val
- 明示的なポリシーが要求されている場合は true
、そうでない場合は false
public boolean isExplicitPolicyRequired()
true
、そうでない場合は false
public void setPolicyMappingInhibited(boolean val)
val
- ポリシーマッピングが抑制されている場合は true
、そうでない場合は false
public boolean isPolicyMappingInhibited()
public void setAnyPolicyInhibited(boolean val)
isAnyPolicyInhibited()
は false
を返す)。val
- 任意のポリシー OID が抑制される場合は true
、そうでない場合は false
public boolean isAnyPolicyInhibited()
true
、そうでない場合は false
public void setPolicyQualifiersRejected(boolean qualifiersRejected)
PKIXParameters
オブジェクトが作成されると、このフラグは true に設定されます。この設定は、ポリシー修飾子を処理するためのもっとも一般的な (かつ簡単な) 方法を反映します。より複雑なポリシーを使用するアプリケーションでは、このフラグを false に設定する必要があります。
PKIX 証明書パス検査アルゴリズムでは、クリティカルにマークされた証明書ポリシー拡張機能のポリシー修飾子が必ず処理され、検査されるように指定します。ポリシー修飾子が処理および検査されないと、その証明書パスは拒否されます。policyQualifiersRejected フラグが false に設定されている場合、PKIX 互換のためにこの方法ですべてのポリシー修飾子を検査するかどうかは、アプリケーションによって異なります。
qualifiersRejected
- PolicyQualifiersRejected フラグの新しい値getPolicyQualifiersRejected()
, PolicyQualifierInfo
public boolean getPolicyQualifiersRejected()
PKIXParameters
オブジェクトが作成されると、このフラグは true に設定されます。この設定は、ポリシー修飾子を処理するためのもっとも一般的な (かつ簡単な) 方法を反映します。より複雑なポリシーを使用するアプリケーションでは、このフラグを false に設定する必要があります。
setPolicyQualifiersRejected(boolean)
public Date getDate()
null
の場合、現在時刻が使われます。
以後の変更から保護するために、返される Date
は複製されています。
Date
。設定されていない場合は null
setDate(java.util.Date)
public void setDate(Date date)
null
の場合、現在時刻が使われます。
以後の変更から保護するために、ここで提供される Date
は複製されています。
date
- Date
。現在時刻の場合は null
getDate()
public void setCertPathCheckers(List<PKIXCertPathChecker> checkers)
List
を設定します。指定した List
に PKIXCertPathChecker
でないオブジェクトが含まれる場合は無視されます。
指定した各 PKIXCertPathChecker
では、証明書の追加チェックを実装しています。通常、証明書に含まれている専用の機能拡張を、処理および検査しているかどうかをチェックします。それぞれの PKIXCertPathChecker
は、チェックを行うために必要な初期化パラメータでインスタンス化されなければいけません。
高度なアプリケーションでは、このメソッドにより PKIX CertPathValidator
や CertPathBuilder
を拡張できます。処理された、または検査された証明書のぞれぞれに対し、指定した PKIXCertPathChecker
が、PKIX CertPathValidator
や CertPathBuilder
によってそれぞれ順番に呼び出されます。
これらの追加 PKIXCertPathChecker
が設定されているかどうかにかかわらず、PKIX CertPathValidator
や 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
は不可)setCertPathCheckers(java.util.List<java.security.cert.PKIXCertPathChecker>)
public void addCertPathChecker(PKIXCertPathChecker checker)
PKIXCertPathChecker
を証明書パスチェッカーのリストに追加します。詳細は、setCertPathCheckers
メソッドを参照してください。
以後の変更から保護するために、PKIXCertPathChecker
は複製されています。
checker
- チェックのリストに追加される PKIXCertPathChecker
。null
の場合、チェッカーは無視される (リストに追加されない)。public String getSigProvider()
null
を返します。null
setSigProvider(java.lang.String)
public void setSigProvider(String sigProvider)
Signature
オブジェクトを作成するときには、指定したプロバイダが推奨されます。null
、または設定されていない場合は、アルゴリズムをサポートする、最初に見つかったプロバイダが使用されます。sigProvider
- 署名プロバイダの名前、または null
getSigProvider()
public CertSelector getTargetCertConstraints()
CertSelector
のインスタンスとして返されます。null
の場合は、制約が定義されていません。
以後の変更から保護するために、返される CertSelector
は複製されています。
CertSelector
、または null
setTargetCertConstraints(java.security.cert.CertSelector)
public void setTargetCertConstraints(CertSelector selector)
CertSelector
のインスタンスとして指定されます。null
の場合は、制約が定義されていません。
以後の変更から保護するために、指定された CertSelector
は複製されています。
selector
- ターゲット証明書の制約を指定する CertSelector
、または null
getTargetCertConstraints()
public Object clone()
PKIXParameters
オブジェクトの複製を作成します。コピーに変更を加えても元の属性には影響ありません。また逆の場合も同じです。clone
、インタフェース: CertPathParameters
clone
、クラス: Object
PKIXParameters
オブジェクトのコピーCloneable
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.