X509Certificate2 Construtores

Definição

Inicializa uma nova instância da classe X509Certificate2.

Sobrecargas

X509Certificate2()
Obsoleto.

Inicializa uma nova instância da classe X509Certificate2.

X509Certificate2(String, String, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha usada para acessar o certificado e um sinalizador de armazenamento de chaves.

X509Certificate2(String, SecureString, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha e um sinalizador de armazenamento de chaves.

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha e um sinalizador de armazenamento de chaves.

X509Certificate2(Byte[], String, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes, uma senha e um sinalizador de armazenamento de chaves.

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes, uma senha e um sinalizador de armazenamento de chaves.

X509Certificate2(String, String)

Inicializa uma nova instância de classe X509Certificate2 usando um nome de arquivo de certificado e uma senha usada para acessar o certificado.

X509Certificate2(String, SecureString)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado e uma senha.

X509Certificate2(ReadOnlySpan<Byte>, ReadOnlySpan<Char>, X509KeyStorageFlags)

Inicializa uma nova instância da classe X509Certificate2 a partir dos dados do certificado, de uma senha e de sinalizadores de armazenamento de chave.

X509Certificate2(Byte[], String)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.

X509Certificate2(Byte[], SecureString)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.

X509Certificate2(String)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado.

X509Certificate2(X509Certificate)

Inicializa uma nova instância da classe X509Certificate2 usando um objeto X509Certificate.

X509Certificate2(SerializationInfo, StreamingContext)
Obsoleto.

Inicializa uma nova instância da classe X509Certificate2 usando as informações de contexto de fluxo e serialização fornecidas.

X509Certificate2(ReadOnlySpan<Byte>)

Inicializa uma nova instância da classe X509Certificate2 a partir dos dados do certificado.

X509Certificate2(IntPtr)

Inicializa uma nova instância da classe X509Certificate2 usando um identificador não gerenciado.

X509Certificate2(Byte[])

Inicializa uma nova instância da classe X509Certificate2 usando informações de uma matriz de bytes.

X509Certificate2()

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Cuidado

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Inicializa uma nova instância da classe X509Certificate2.

public:
 X509Certificate2();
public X509Certificate2 ();
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate2 ();
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 ();
Public Sub New ()
Atributos

Exemplos

O exemplo de código a seguir abre o repositório de certificados do usuário atual, seleciona apenas certificados ativos e permite que o usuário selecione um ou mais certificados. Em seguida, o exemplo grava informações de certificado no console.

#using <System.dll>
#using <System.Security.dll>

using namespace System;
using namespace System::Security::Cryptography;
using namespace System::Security::Permissions;
using namespace System::IO;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
   try
   {
      X509Store ^ store = gcnew X509Store( "MY",StoreLocation::CurrentUser );
      store->Open( static_cast<OpenFlags>(OpenFlags::ReadOnly | OpenFlags::OpenExistingOnly) );
      X509Certificate2Collection ^ collection = dynamic_cast<X509Certificate2Collection^>(store->Certificates);
      X509Certificate2Collection ^ fcollection = dynamic_cast<X509Certificate2Collection^>(collection->Find( X509FindType::FindByTimeValid, DateTime::Now, false ));
      X509Certificate2Collection ^ scollection = X509Certificate2UI::SelectFromCollection(fcollection, "Test Certificate Select","Select a certificate from the following list to get information on that certificate",X509SelectionFlag::MultiSelection);
      Console::WriteLine( "Number of certificates: {0}{1}", scollection->Count, Environment::NewLine );
      System::Collections::IEnumerator^ myEnum = scollection->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current);
         array<Byte>^rawdata = x509->RawData;
         Console::WriteLine( "Content Type: {0}{1}", X509Certificate2::GetCertContentType( rawdata ), Environment::NewLine );
         Console::WriteLine( "Friendly Name: {0}{1}", x509->FriendlyName, Environment::NewLine );
         Console::WriteLine( "Certificate Verified?: {0}{1}", x509->Verify(), Environment::NewLine );
         Console::WriteLine( "Simple Name: {0}{1}", x509->GetNameInfo( X509NameType::SimpleName, true ), Environment::NewLine );
         Console::WriteLine( "Signature Algorithm: {0}{1}", x509->SignatureAlgorithm->FriendlyName, Environment::NewLine );
         Console::WriteLine( "Private Key: {0}{1}", x509->PrivateKey->ToXmlString( false ), Environment::NewLine );
         Console::WriteLine( "Public Key: {0}{1}", x509->PublicKey->Key->ToXmlString( false ), Environment::NewLine );
         Console::WriteLine( "Certificate Archived?: {0}{1}", x509->Archived, Environment::NewLine );
         Console::WriteLine( "Length of Raw Data: {0}{1}", x509->RawData->Length, Environment::NewLine );
         x509->Reset();
      }
      store->Close();
   }
   catch ( CryptographicException^ ) 
   {
      Console::WriteLine( "Information could not be written out for this certificate." );
   }

}
using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;

class CertSelect
{
    static void Main()
    {
        X509Store store = new X509Store("MY",StoreLocation.CurrentUser);
        store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);

        X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates;
        X509Certificate2Collection fcollection = (X509Certificate2Collection)collection.Find(X509FindType.FindByTimeValid,DateTime.Now,false);
        X509Certificate2Collection scollection = X509Certificate2UI.SelectFromCollection(fcollection, "Test Certificate Select","Select a certificate from the following list to get information on that certificate",X509SelectionFlag.MultiSelection);
        Console.WriteLine("Number of certificates: {0}{1}",scollection.Count,Environment.NewLine);

        foreach (X509Certificate2 x509 in scollection)
        {
            try
            {
                byte[] rawdata = x509.RawData;
                Console.WriteLine("Content Type: {0}{1}",X509Certificate2.GetCertContentType(rawdata),Environment.NewLine);
                Console.WriteLine("Friendly Name: {0}{1}",x509.FriendlyName,Environment.NewLine);
                Console.WriteLine("Certificate Verified?: {0}{1}",x509.Verify(),Environment.NewLine);
                Console.WriteLine("Simple Name: {0}{1}",x509.GetNameInfo(X509NameType.SimpleName,true),Environment.NewLine);
                Console.WriteLine("Signature Algorithm: {0}{1}",x509.SignatureAlgorithm.FriendlyName,Environment.NewLine);
                Console.WriteLine("Public Key: {0}{1}",x509.PublicKey.Key.ToXmlString(false),Environment.NewLine);
                Console.WriteLine("Certificate Archived?: {0}{1}",x509.Archived,Environment.NewLine);
                Console.WriteLine("Length of Raw Data: {0}{1}",x509.RawData.Length,Environment.NewLine);
                X509Certificate2UI.DisplayCertificate(x509);
                x509.Reset();
            }
            catch (CryptographicException)
            {
                Console.WriteLine("Information could not be written out for this certificate.");
            }
        }
        store.Close();
    }
}
Imports System.Security.Cryptography
Imports System.Security.Permissions
Imports System.IO
Imports System.Security.Cryptography.X509Certificates

Class CertSelect

    Shared Sub Main()

        Dim store As New X509Store("MY", StoreLocation.CurrentUser)
        store.Open(OpenFlags.ReadOnly Or OpenFlags.OpenExistingOnly)

        Dim collection As X509Certificate2Collection = CType(store.Certificates, X509Certificate2Collection)
        Dim fcollection As X509Certificate2Collection = CType(collection.Find(X509FindType.FindByTimeValid, DateTime.Now, False), X509Certificate2Collection)
        Dim scollection As X509Certificate2Collection = X509Certificate2UI.SelectFromCollection(fcollection, "Test Certificate Select", "Select a certificate from the following list to get information on that certificate", X509SelectionFlag.MultiSelection)
        Console.WriteLine("Number of certificates: {0}{1}", scollection.Count, Environment.NewLine)
         
        For Each x509 As X509Certificate2 In scollection
            Try
                Dim rawdata As Byte() = x509.RawData
                Console.WriteLine("Content Type: {0}{1}", X509Certificate2.GetCertContentType(rawdata), Environment.NewLine)
                Console.WriteLine("Friendly Name: {0}{1}", x509.FriendlyName, Environment.NewLine)
                Console.WriteLine("Certificate Verified?: {0}{1}", x509.Verify(), Environment.NewLine)
                Console.WriteLine("Simple Name: {0}{1}", x509.GetNameInfo(X509NameType.SimpleName, True), Environment.NewLine)
                Console.WriteLine("Signature Algorithm: {0}{1}", x509.SignatureAlgorithm.FriendlyName, Environment.NewLine)
                Console.WriteLine("Public Key: {0}{1}", x509.PublicKey.Key.ToXmlString(False), Environment.NewLine)
                Console.WriteLine("Certificate Archived?: {0}{1}", x509.Archived, Environment.NewLine)
                Console.WriteLine("Length of Raw Data: {0}{1}", x509.RawData.Length, Environment.NewLine)
                X509Certificate2UI.DisplayCertificate(x509)
                x509.Reset()         
             Catch cExcept As CryptographicException
                 Console.WriteLine("Information could not be written out for this certificate.")
             End Try
        Next x509

        store.Close()
    End Sub
End Class

Comentários

Esse construtor cria um objeto vazio X509Certificate2 , ao contrário dos outros construtores dessa classe que usam informações de certificado de uma matriz de bytes, um ponteiro ou um arquivo de certificado.

Aplica-se a

X509Certificate2(String, String, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha usada para acessar o certificado e um sinalizador de armazenamento de chaves.

public:
 X509Certificate2(System::String ^ fileName, System::String ^ password, System::Security::Cryptography::X509Certificates::X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * string * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * string * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String, password As String, keyStorageFlags As X509KeyStorageFlags)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

password
String

A senha necessária para acessar os dados do certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando um nome de arquivo de certificado, uma senha necessária para acessar o certificado e um sinalizador de armazenamento de chaves.

Importante

Nunca codifique uma senha no código-fonte. Senhas codificadas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hex ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate2 será criado para o certificado que assinou o repositório e não para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(String, SecureString, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Importante

Esta API não está em conformidade com CLS.

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha e um sinalizador de armazenamento de chaves.

public:
 X509Certificate2(System::String ^ fileName, System::Security::SecureString ^ password, System::Security::Cryptography::X509Certificates::X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
public X509Certificate2 (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
public X509Certificate2 (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[<System.CLSCompliant(false)>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.CLSCompliant(false)>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String, password As SecureString, keyStorageFlags As X509KeyStorageFlags)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Se você criar um X509Certificate certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate será criado para o certificado que assinou o repositório e não para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado, uma senha e um sinalizador de armazenamento de chaves.

public X509Certificate2 (string fileName, ReadOnlySpan<char> password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName, ReadOnlySpan<char> password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * ReadOnlySpan<char> * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * ReadOnlySpan<char> * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String, password As ReadOnlySpan(Of Char), Optional keyStorageFlags As X509KeyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

password
ReadOnlySpan<Char>

A senha necessária para acessar os dados do certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Importante

Nunca codifique uma senha no código-fonte. Senhas codificadas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hex ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate2 será criado para o certificado que assinou o repositório e não para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(Byte[], String, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes, uma senha e um sinalizador de armazenamento de chaves.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData, System::String ^ password, System::Security::Cryptography::X509Certificates::X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * string * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * string * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As Byte(), password As String, keyStorageFlags As X509KeyStorageFlags)

Parâmetros

rawData
Byte[]

Uma matriz de bytes que contém dados de um certificado X.509.

password
String

A senha necessária para acessar os dados do certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando uma matriz de bytes, uma senha necessária para acessar os dados do certificado e um sinalizador de armazenamento de chaves. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um CSP (Provedor de Serviços Criptográficos) da API Criptográfica da Microsoft.

Importante

Nunca codifique uma senha no código-fonte. Senhas codificadas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hex ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para rawData, o X509Certificate2 será criado para o certificado que assinou o repositório e não para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Importante

Esta API não está em conformidade com CLS.

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes, uma senha e um sinalizador de armazenamento de chaves.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData, System::Security::SecureString ^ password, System::Security::Cryptography::X509Certificates::X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
public X509Certificate2 (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[System.CLSCompliant(false)]
public X509Certificate2 (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
public X509Certificate2 (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
[<System.CLSCompliant(false)>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.CLSCompliant(false)>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As Byte(), password As SecureString, keyStorageFlags As X509KeyStorageFlags)

Parâmetros

rawData
Byte[]

Uma matriz de bytes que contém dados de um certificado X.509.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um CSP (Provedor de Serviços Criptográficos) da API Criptográfica da Microsoft.

Importante

Nunca embuta uma senha no código-fonte. Senhas embutidas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate certificado especificando um repositório de arquivos assinado PKCS7 para rawData, o X509Certificate será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(String, String)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância de classe X509Certificate2 usando um nome de arquivo de certificado e uma senha usada para acessar o certificado.

public:
 X509Certificate2(System::String ^ fileName, System::String ^ password);
public X509Certificate2 (string fileName, string? password);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName, string? password);
public X509Certificate2 (string fileName, string password);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String, password As String)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

password
String

A senha necessária para acessar os dados do certificado X.509.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando um nome de arquivo de certificado e uma senha necessária para acessar o certificado. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chaves.

Importante

Nunca embuta uma senha no código-fonte. Senhas embutidas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate2 será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(String, SecureString)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Importante

Esta API não está em conformidade com CLS.

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado e uma senha.

public:
 X509Certificate2(System::String ^ fileName, System::Security::SecureString ^ password);
[System.CLSCompliant(false)]
public X509Certificate2 (string fileName, System.Security.SecureString? password);
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName, System.Security.SecureString? password);
[System.CLSCompliant(false)]
public X509Certificate2 (string fileName, System.Security.SecureString password);
public X509Certificate2 (string fileName, System.Security.SecureString password);
[<System.CLSCompliant(false)>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.CLSCompliant(false)>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String, password As SecureString)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chaves.

Importante

Nunca embuta uma senha no código-fonte. Senhas embutidas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(ReadOnlySpan<Byte>, ReadOnlySpan<Char>, X509KeyStorageFlags)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 a partir dos dados do certificado, de uma senha e de sinalizadores de armazenamento de chave.

public X509Certificate2 (ReadOnlySpan<byte> rawData, ReadOnlySpan<char> password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (ReadOnlySpan<byte> rawData, ReadOnlySpan<char> password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : ReadOnlySpan<byte> * ReadOnlySpan<char> * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : ReadOnlySpan<byte> * ReadOnlySpan<char> * System.Security.Cryptography.X509Certificates.X509KeyStorageFlags -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As ReadOnlySpan(Of Byte), password As ReadOnlySpan(Of Char), Optional keyStorageFlags As X509KeyStorageFlags = System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet)

Parâmetros

rawData
ReadOnlySpan<Byte>

Os dados do certificado a serem processados.

password
ReadOnlySpan<Char>

A senha necessária para acessar os dados do certificado.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.

Atributos

Exceções

Ocorre um erro com o certificado.

Aplica-se a

X509Certificate2(Byte[], String)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData, System::String ^ password);
public X509Certificate2 (byte[] rawData, string? password);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (byte[] rawData, string? password);
public X509Certificate2 (byte[] rawData, string password);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As Byte(), password As String)

Parâmetros

rawData
Byte[]

Uma matriz de bytes que contém dados de um certificado X.509.

password
String

A senha necessária para acessar os dados do certificado X.509.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando uma matriz de bytes e uma senha necessária para acessar os dados do certificado. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chaves.

Importante

Nunca embuta uma senha no código-fonte. Senhas embutidas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para rawData, o X509Certificate2 será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(Byte[], SecureString)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Importante

Esta API não está em conformidade com CLS.

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData, System::Security::SecureString ^ password);
[System.CLSCompliant(false)]
public X509Certificate2 (byte[] rawData, System.Security.SecureString? password);
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (byte[] rawData, System.Security.SecureString? password);
[System.CLSCompliant(false)]
public X509Certificate2 (byte[] rawData, System.Security.SecureString password);
public X509Certificate2 (byte[] rawData, System.Security.SecureString password);
[<System.CLSCompliant(false)>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.CLSCompliant(false)>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] * System.Security.SecureString -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As Byte(), password As SecureString)

Parâmetros

rawData
Byte[]

Uma matriz de bytes que contém dados de um certificado X.509.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chaves.

Importante

Nunca embuta uma senha no código-fonte. Senhas embutidas em código podem ser recuperadas de um assembly usando o Ildasm.exe (IL Disassembler), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto, como Notepad.exe.

Se você criar um X509Certificate certificado especificando um repositório de arquivos assinado PKCS7 para rawData, o X509Certificate será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(String)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado.

public:
 X509Certificate2(System::String ^ fileName);
public X509Certificate2 (string fileName);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (string fileName);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : string -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (fileName As String)

Parâmetros

fileName
String

O nome de um arquivo de certificado.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando um nome de arquivo de certificado. Ele dá suporte à codificação binária (DER) ou à codificação Base64.

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para fileName, o X509Certificate2 será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a

X509Certificate2(X509Certificate)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando um objeto X509Certificate.

public:
 X509Certificate2(System::Security::Cryptography::X509Certificates::X509Certificate ^ certificate);
public X509Certificate2 (System.Security.Cryptography.X509Certificates.X509Certificate certificate);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (System.Security.Cryptography.X509Certificates.X509Certificate certificate);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : System.Security.Cryptography.X509Certificates.X509Certificate -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : System.Security.Cryptography.X509Certificates.X509Certificate -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (certificate As X509Certificate)

Parâmetros

certificate
X509Certificate

Um objeto X509Certificate.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse método cria uma nova instância da X509Certificate2 classe usando um X509Certificate objeto .

Aplica-se a

X509Certificate2(SerializationInfo, StreamingContext)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Cuidado

This API supports obsolete formatter-based serialization. It should not be called or extended by application code.

Inicializa uma nova instância da classe X509Certificate2 usando as informações de contexto de fluxo e serialização fornecidas.

protected:
 X509Certificate2(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
protected X509Certificate2 (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
[System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
protected X509Certificate2 (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Obsolete("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId="SYSLIB0051", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : System.Runtime.Serialization.SerializationInfo * System.Runtime.Serialization.StreamingContext -> System.Security.Cryptography.X509Certificates.X509Certificate2
Protected Sub New (info As SerializationInfo, context As StreamingContext)

Parâmetros

info
SerializationInfo

As informações de serialização necessárias para desserializar o novo X509Certificate2.

context
StreamingContext

Informações contextuais sobre a origem do fluxo a ser desserializado.

Atributos

Exceções

Somente .NET Core e .NET 5+: Em todos os casos.

Aplica-se a

X509Certificate2(ReadOnlySpan<Byte>)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 a partir dos dados do certificado.

public:
 X509Certificate2(ReadOnlySpan<System::Byte> rawData);
public X509Certificate2 (ReadOnlySpan<byte> rawData);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (ReadOnlySpan<byte> rawData);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : ReadOnlySpan<byte> -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : ReadOnlySpan<byte> -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As ReadOnlySpan(Of Byte))

Parâmetros

rawData
ReadOnlySpan<Byte>

Os dados do certificado a serem processados.

Atributos

Exceções

Ocorre um erro com o certificado.

Aplica-se a

X509Certificate2(IntPtr)

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando um identificador não gerenciado.

public:
 X509Certificate2(IntPtr handle);
public X509Certificate2 (IntPtr handle);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (IntPtr handle);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : nativeint -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : nativeint -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (handle As IntPtr)

Parâmetros

handle
IntPtr

nativeint

Um ponteiro para um contexto de certificado em código não gerenciado. A estrutura C é chamada de PCCERT_CONTEXT.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando um identificador para o contexto de certificado da API Criptográfica da Microsoft, PCCERT_CONTEXT. Observe que o chamador imediato desse construtor requer permissão de código não gerenciado.

Importante

O construtor cria uma cópia do contexto do certificado. Não suponha que a estrutura de contexto passada para o construtor seja válida; ele pode ter sido liberado. Você pode obter uma cópia da estrutura atual PCCERT_CONTEXT da Handle propriedade , mas ela é válida somente durante o tempo de vida do X509Certificate2 objeto.

Aplica-se a

X509Certificate2(Byte[])

Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs
Origem:
X509Certificate2.cs

Inicializa uma nova instância da classe X509Certificate2 usando informações de uma matriz de bytes.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData);
public X509Certificate2 (byte[] rawData);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate2 (byte[] rawData);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
new System.Security.Cryptography.X509Certificates.X509Certificate2 : byte[] -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (rawData As Byte())

Parâmetros

rawData
Byte[]

Uma matriz de bytes que contém dados de um certificado X.509.

Atributos

Exceções

Ocorre um erro com o certificado. Por exemplo:

  • O arquivo de certificado não existe.

  • O certificado é inválido.

  • A senha do certificado está incorreta.

Comentários

Esse construtor cria um novo X509Certificate2 objeto usando informações de certificado de uma matriz de bytes. A matriz de bytes pode ser codificada binária (DER) ou de dados X.509 codificados em Base64. A matriz de bytes também pode ser um arquivo assinado PKCS7 (Authenticode) ; o certificado do signatário é usado para criar o objeto .

Se você criar um X509Certificate2 certificado especificando um repositório de arquivos assinado PKCS7 para rawData, o X509Certificate2 será criado para o certificado que assinou o repositório em vez de para qualquer um dos certificados dentro do repositório.

Aplica-se a