ASN.1の定義は次のとおりです。
PolicyQualifierInfo ::= SEQUENCE { policyQualifierId PolicyQualifierId, qualifier ANY DEFINED BY policyQualifierId }
X.509 version 3証明書での証明書ポリシー機能拡張には、1つ以上のポリシー情報項目からなるシーケンスが含まれており、それぞれの項目はオブジェクト識別子(OID)とオプションの修飾子で構成されています。 これらのポリシー情報項目は、エンド・エントリ証明書の場合、証明書が発行された際のポリシーと、証明書が使用される目的とを示します。 CA証明書の場合は、この証明書を含む証明書パスに対するポリシーのセットを制限します。
PolicyQualifierInfo
オブジェクトのSet
はPolicyNode.getPolicyQualifiers
メソッドによって返されます。 これにより、特定のポリシー要件を持つアプリケーションで各ポリシー修飾子を処理し、評価できます。 ポリシー修飾子を処理する必要のあるアプリケーションでは、PKIXParameters.setPolicyQualifiersRejected
メソッドを呼び出して、証明書パスの妥当性を検査する前にpolicyQualifiersRejected
フラグを明示的にfalseに設定しなければいけません。
PKIX証明書パス検査アルゴリズムでは、クリティカルにマークされた証明書ポリシー拡張機能のポリシー修飾子が必ず処理され、検査されるように指定します。 それ以外の場合は、証明パスを拒否する必要があります。 policyQualifiersRejected
フラグがfalseに設定されている場合、PKIX互換のためにこの方法ですべてのポリシー修飾子を検査するかどうかは、アプリケーションによって異なります。
並行アクセス
すべてのPolicyQualifierInfo
オブジェクトは、不変で、スレッドに対して安全である必要があります。 つまり、単一の(または複数の) PolicyQualifierInfo
オブジェクト上で、このクラスに定義されたメソッドを複数のスレッドが同時に呼び出しても、悪影響はありません。 PolicyQualifierInfo
オブジェクトは、不変かつスレッドに対して安全でなければならないので、アクセスの調整を心配することなく、オブジェクトをさまざまなコードに渡すことができます。
- 導入されたバージョン:
- 1.4
-
コンストラクタの詳細
-
PolicyQualifierInfo
public PolicyQualifierInfo(byte[] encoded) throws IOException 符号化されたバイトからPolicyQualifierInfo
のインスタンスを作成します。 符号化されたバイト配列は、構築時に複製されます。- パラメータ:
encoded
- DER符号化された修飾子を含むバイト配列- 例外:
IOException
- バイト配列が、有効で解析可能なポリシー修飾子を表さない場合にスローされる
-
-
メソッドの詳細
-
getPolicyQualifierId
public final String getPolicyQualifierId()このPolicyQualifierInfo
のpolicyQualifierId
フィールドを返します。policyQualifierId
は、ピリオドで区切られた、負にならない整数の組で表されるObject Identifier (OID)です。- 戻り値:
- OID。
null
にはならない
-
getEncoded
public final byte[] getEncoded()このPolicyQualifierInfo
のASN.1 DERで符号化された形式を返します。- 戻り値:
- ASN.1 DERで符号化されたバイト。
null
にはならない。 複製が返されるため、このメソッドが呼び出されるたびにデータが複製される
-
getPolicyQualifier
public final byte[] getPolicyQualifier()このPolicyQualifierInfo
のqualifier
フィールドのASN.1 DERで符号化された形式を返します。- 戻り値:
qualifier
フィールドがASN.1 DERで符号化されたバイト。 複製が返されるため、このメソッドが呼び出されるたびにデータが複製される
-
toString
public String toString()このPolicyQualifierInfo
のプリント可能表現を返します。
-