Partilhar via


X509ChainPolicy.VerificationTime Propriedade

Definição

Obtém ou define a hora para qual a cadeia deve ser validada.

public:
 property DateTime VerificationTime { DateTime get(); void set(DateTime value); };
public DateTime VerificationTime { get; set; }
member this.VerificationTime : DateTime with get, set
Public Property VerificationTime As DateTime

Valor da propriedade

Um objeto DateTime.

Exemplos

O exemplo a seguir abre o repositório de certificados pessoal do usuário atual, permite que o usuário selecione um certificado e, em seguida, grava informações de certificado e cadeia de certificados no console. A saída depende do certificado selecionado.

//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)

Comentários

Essa propriedade representa o parâmetro de tempo para validação de cadeia. Essa propriedade retorna um valor que indica a hora em que a cadeia deve ser validada, seja como hora local ou UTC, dependendo do valor da DateTime.Kind propriedade. Essa propriedade é importante ao validar mensagens assinadas, pois a assinatura deve ter sido válida no momento da assinatura, não no momento da validação. Cada certificado na cadeia deve ter um X509Certificate2.NotBefore tempo não posterior ao valor dessa propriedade e um X509Certificate2.NotAfter tempo não anterior ao valor dessa propriedade. Caso contrário, o X509ChainStatusFlags.NotTimeValid sinalizador será declarado. No Windows, essa propriedade também pode ser usada para determinar o status de revogação de um certificado.

O construtor sem parâmetros para a X509ChainPolicy classe define a VerificationTime propriedade como a hora em que o construtor é chamado. Chamar o Reset() método substitui o valor de VerificationTime pela hora atual do sistema, não pela hora em que o objeto foi construído.

Aplica-se a