Aracılığıyla paylaş


X509Chain.Build(X509Certificate2) Yöntem

Tanım

içinde X509ChainPolicybelirtilen ilkeyi kullanarak bir X.509 zinciri oluşturur.

public:
 bool Build(System::Security::Cryptography::X509Certificates::X509Certificate2 ^ certificate);
public bool Build (System.Security.Cryptography.X509Certificates.X509Certificate2 certificate);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool Build (System.Security.Cryptography.X509Certificates.X509Certificate2 certificate);
member this.Build : System.Security.Cryptography.X509Certificates.X509Certificate2 -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Build : System.Security.Cryptography.X509Certificates.X509Certificate2 -> bool
Public Function Build (certificate As X509Certificate2) As Boolean

Parametreler

certificate
X509Certificate2

Bir X509Certificate2 nesnesi.

Döndürülenler

Boolean

true X.509 sertifikası geçerliyse; aksi takdirde , false.

Öznitelikler

Özel durumlar

certificate geçerli bir sertifika değil veya şeklindedirnull.

certificate okunamaz.

Örnekler

Aşağıdaki kod örneği geçerli kullanıcının kişisel sertifika depounu açar, bir sertifika seçmenize olanak tanır, ardından sertifika ve sertifika zinciri bilgilerini konsola yazar. Çıkış, seçtiğiniz sertifikaya bağlıdır.

//Output chain information of the selected certificate.
X509Chain ^ ch = gcnew X509Chain;
ch->ChainPolicy->RevocationMode = X509RevocationMode::Online;
ch->Build( certificate );
Console::WriteLine( "Chain Information" );
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 );
//Output chain information of the selected certificate.
X509Chain ch = new X509Chain();
ch.ChainPolicy.RevocationMode = X509RevocationMode.Online;
ch.Build (certificate);
Console.WriteLine ("Chain Information");
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);
'Output chain information of the selected certificate.
Dim ch As New X509Chain()
ch.ChainPolicy.RevocationMode = X509RevocationMode.Online
ch.Build(certificate)
Console.WriteLine("Chain Information")
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)

Açıklamalar

Güvenilen bir verenden gelen geçerli bir X.509 sertifikasının yalnızca nesnede X509ChainPolicy belirtilen kullanım için geçerli olduğunu unutmayın. Bu zincir ilkesi kurallarını karşılayan sertifikalar, Güvenlik/MIME (SMIME), Authenticode veya Güvenli Yuva Katmanı (SSL) gibi özelliklerle belirli kullanımlar için yine geçersiz olabilir. Sertifikanın belirli bir ilke için geçerli olup olmadığını belirlemek için daha fazla işlem gerekiyorsa, öğesinden X509Chain bir sınıf türetin ve yöntemini geçersiz kılarak Build önce temel sınıf Build yöntemini çağırın ve ardından ek işlemeyi yapar.

Şunlara uygulanır