Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

X509Chain::ChainPolicy Property

 

Gets or sets the X509ChainPolicy to use when building an X.509 certificate chain.

Namespace:   System.Security.Cryptography.X509Certificates
Assembly:  System (in System.dll)

public:
property X509ChainPolicy^ ChainPolicy {
	X509ChainPolicy^ get();
	void set(X509ChainPolicy^ value);
}

Property Value

Type: System.Security.Cryptography.X509Certificates::X509ChainPolicy^

The X509ChainPolicy object associated with this X.509 chain.

Exception Condition
ArgumentNullException

The value being set for this property is null.

Use this property to set chain policy. For example, you can specify the Enhanced Key Usage (EKU) for which the chain should be validated, or specify revocation checking.

The following code example opens the current user's personal certificate store, allows you to select a certificate, then writes certificate and certificate chain information to the console. The output depends on the certificate you select.

//Output chain information of the selected certificate.
X509Chain ^ ch = gcnew X509Chain;
ch->Build( certificate );
Console::WriteLine( "Chain Information" );
ch->ChainPolicy->RevocationMode = X509RevocationMode::Online;
Console::WriteLine( "Chain revocation flag: {0}", ch->ChainPolicy->RevocationFlag );
Console::WriteLine( "Chain revocation mode: {0}", ch->ChainPolicy->RevocationMode );
Console::WriteLine( "Chain verification flag: {0}", ch->ChainPolicy->VerificationFlags );
Console::WriteLine( "Chain verification time: {0}", ch->ChainPolicy->VerificationTime );
Console::WriteLine( "Chain status length: {0}", ch->ChainStatus->Length );
Console::WriteLine( "Chain application policy count: {0}", ch->ChainPolicy->ApplicationPolicy->Count );
Console::WriteLine( "Chain certificate policy count: {0} {1}", ch->ChainPolicy->CertificatePolicy->Count, Environment::NewLine );

.NET Framework
Available since 2.0
Return to top
Show:
© 2017 Microsoft