(Delphi ActiveX) Get Certificate Policy
Demonstrates how to get a certificate's policy OIDs (if any)
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
cert: TChilkatCert;
success: Integer;
oid: WideString;
strXml: WideString;
xml: TChilkatXml;
begin
cert := TChilkatCert.Create(Self);
success := cert.LoadFromFile('qa_data/certs/sample.cer');
if (success = 0) then
begin
Memo1.Lines.Add(cert.LastErrorText);
Exit;
end;
// The certificatePolicies OID is 2.5.29.32
oid := '2.5.29.32';
strXml := cert.GetExtensionAsXml(oid);
if (cert.LastMethodSuccess = 1) then
begin
Memo1.Lines.Add(strXml);
// Sample result:
// <sequence><sequence><oid>2.16.840.1.101.2.1.11.39</oid></sequence></sequence>
xml := TChilkatXml.Create(Self);
xml.LoadXml(strXml);
Memo1.Lines.Add('Policy OID = ' + xml.GetChildContent('sequence|oid'));
end;
end;
|