THPDFCertificateValidationOptions レコード

証明書パス検証のために、トラストアンカー、オフライン失効エビデンス、ポリシー制約、アルゴリズム制限を設定します

宣言

THPDFCertificateValidationOptions= record
  TrustAnchors: THPDFDERArray;
  IntermediateCertificates: THPDFDERArray;
  OCSPResponses: THPDFDERArray;
  CRLs: THPDFDERArray;
  DeltaCRLs: THPDFDERArray;
  CRLIssuerCertificates: THPDFDERArray;
  OCSPResponseSources: THPDFValidationEvidenceSourceArray;
  CRLSources: THPDFValidationEvidenceSourceArray;
  DeltaCRLSources: THPDFValidationEvidenceSourceArray;
  RevocationMode: THPDFRevocationMode;
  ValidationTime: TDateTime;
  MaxPathLength: Integer;
  OCSPNoncePolicy: THPDFOCSPNoncePolicy;
  ExpectedOCSPNonce: TBytes;
  OCSPMaxAgeDays: Double;
  OCSPAllowedClockSkewMinutes: Integer;
  RequireOCSPNextUpdate: boolean;
  AllowDelegatedOCSPResponders: boolean;
  RequireOCSPNoCheckForDelegated: boolean;
  CRLMaxAgeDays: Double;
  CRLAllowedClockSkewMinutes: Integer;
  RequireCRLNextUpdate: boolean;
  AllowIndirectCRLs: boolean;
  RequireDeltaCRLWhenAdvertised: boolean;
  TrustPurpose: THPDFCertificateTrustPurpose;
  CustomTrustPurposeOID: AnsiString;
  InitialPolicySet: THPDFOIDArray;
  RequireExplicitCertificatePolicy: boolean;
  InhibitCertificatePolicyMapping: boolean;
  InhibitAnyCertificatePolicy: boolean;
  AlgorithmPolicy: THPDFCertificateAlgorithmPolicy;
  // v2.738.0 online chain building: when the path cannot close with
  // the supplied pool, fetch the missing intermediates through the
  // AIA caIssuers URLs of the leaf-most unmatched certificate before
  // failing with cvsPathBuildingFailed (transport stays caller-side)
  FetchMissingIntermediates: boolean;
  MaxFetchedIntermediates: Integer;
  class function Default: THPDFCertificateValidationOptions; static;
end;

ユニット

HPDFSignVerify

フィールド

フィールド目的
TrustAnchorsパスを閉じることを許可する、DER エンコード済みトラストアンカー証明書
IntermediateCertificatesCMS プールが不完全なときに構築処理が使える、信頼されない追加証明書
OCSPResponses / CRLs / DeltaCRLsOCSP 応答、ベース CRL、デルタ CRL のオフラインプール
CRLIssuerCertificatesCRL 署名者の署名を検証するために使う証明書
OCSPResponseSources / CRLSources / DeltaCRLSourcesプールの各項目に記録されるエビデンスソースタグ。検証情報に現れます
RevocationModervmNone、rvmBestEffort、rvmRequire のいずれかの失効動作を選択します
ValidationTime有効性と鮮度のチェックを評価する時刻
MaxPathLengthリーフとトラストアンカーの間にある証明書数の上限。Default は 12 を設定します
OCSPNoncePolicyOCSP ナンスを必須にするか、存在すれば照合するか、無視するか。Default は存在すれば照合します
ExpectedOCSPNonceポリシーがナンスを要求するときに求めるナンスバイトそのもの
OCSPMaxAgeDays / CRLMaxAgeDaysOCSP 応答と CRL の許容される最大経過日数。Default は 7 日と 30 日を設定します
OCSPAllowedClockSkewMinutes / CRLAllowedClockSkewMinutesエビデンスのタイムスタンプに適用する時計の許容差。Default はそれぞれ 5 分を設定します
RequireOCSPNextUpdate / RequireCRLNextUpdatenext-update フィールドを持たないエビデンスを拒否します
AllowDelegatedOCSPResponders委譲レスポンダが署名した応答を受け入れます。Default は許可します
RequireOCSPNoCheckForDelegated委譲レスポンダの証明書に OCSPNoCheck 拡張を要求します
AllowIndirectCRLs間接 CRL 署名者が発行した CRL を受け入れます。Default は許可します
RequireDeltaCRLWhenAdvertisedデルタ CRL ポインタが告知されているのにデルタ CRL が提供されていない場合は失敗します
TrustPurpose / CustomTrustPurposeOIDトラストアンカーに要求する証明書用途。Default は任意の用途を受け入れます
InitialPolicySet検証済みパスが満たすべき証明書ポリシー OID
RequireExplicitCertificatePolicyパス内に明示的な証明書ポリシーを少なくとも 1 つ要求します
InhibitCertificatePolicyMapping証明書ポリシーマッピング処理を無効にします
InhibitAnyCertificatePolicyポリシー処理から anyPolicy 修飾子を除外します
AlgorithmPolicyパス内のすべての証明書と署名に適用するキーサイズとアルゴリズムの制限
FetchMissingIntermediatescvsPathBuildingFailed で失敗する前に、AIA caIssuers URL 経由で不足している中間証明書を取得します。トランスポートは呼び出し側に留まります
MaxFetchedIntermediates1 回の検証が AIA 経由で取得できる中間証明書の数の上限
Default上記で概説した組み込み構成を返すクラス関数

使用上の注意

関連 API