X509Certificate2 Construtores

Definição

Inicia uma nova instância da classe X509Certificate2.Initializes a new instance of the X509Certificate2 class.

Sobrecargas

X509Certificate2()

Inicia uma nova instância da classe X509Certificate2.Initializes a new instance of the X509Certificate2 class.

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.Initializes a new instance of the X509Certificate2 class using a certificate file name, a password used to access the certificate, and a key storage flag.

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.Initializes a new instance of the X509Certificate2 class using a certificate file name, a password, and a key storage flag.

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.Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.

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.Initializes a new instance of the X509Certificate2 class using a certificate file name and a password used to access the certificate.

X509Certificate2(String, SecureString)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado e uma senha.Initializes a new instance of the X509Certificate2 class using a certificate file name and a password.

X509Certificate2(SerializationInfo, StreamingContext)

Inicializa uma nova instância da classe X509Certificate2 usando as informações de contexto de fluxo e serialização fornecidas.Initializes a new instance of the X509Certificate2 class using the specified serialization and stream context information.

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.Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.

X509Certificate2(Byte[], SecureString)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.Initializes a new instance of the X509Certificate2 class using a byte array and a password.

X509Certificate2(String)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado.Initializes a new instance of the X509Certificate2 class using a certificate file name.

X509Certificate2(X509Certificate)

Inicializa uma nova instância da classe X509Certificate2 usando um objeto X509Certificate.Initializes a new instance of the X509Certificate2 class using an X509Certificate object.

X509Certificate2(IntPtr)

Inicializa uma nova instância da classe X509Certificate2 usando um identificador não gerenciado.Initializes a new instance of the X509Certificate2 class using an unmanaged handle.

X509Certificate2(Byte[])

Inicializa uma nova instância da classe X509Certificate2 usando informações de uma matriz de bytes.Initializes a new instance of the X509Certificate2 class using information from a byte array.

X509Certificate2(Byte[], String)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.Initializes a new instance of the X509Certificate2 class using a byte array and a password.

X509Certificate2()

Inicia uma nova instância da classe X509Certificate2.Initializes a new instance of the X509Certificate2 class.

public:
 X509Certificate2();
public X509Certificate2 ();
Public Sub New ()

Exemplos

O exemplo de código a seguir abre o repositório de certificados do usuário atual, seleciona somente certificados ativos e, em seguida, permite que o usuário selecione um ou mais certificados.The following code example opens the current user certificate store, selects only active certificates, then allows the user to select one or more certificates. Em seguida, o exemplo grava informações de certificado no console.The example then writes certificate information to the 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("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);
                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("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)
                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 X509Certificate2 vazio, ao contrário dos outros construtores para essa classe que usam informações de certificado de uma matriz de bytes, um ponteiro ou um arquivo de certificado.This constructor creates an empty X509Certificate2 object, unlike the other constructors for this class that use certificate information from a byte array, a pointer, or a certificate file.

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.Initializes a new instance of the X509Certificate2 class using a certificate file name, a password used to access the certificate, and a key storage flag.

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);
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.The name of a certificate file.

password
String

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.A bitwise combination of the enumeration values that control where and how to import the certificate.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando um nome de arquivo de certificado, uma senha necessária para acessar o certificado e um sinalizador de armazenamento de chave.This constructor creates a new X509Certificate2 object using a certificate file name, a password needed to access the certificate, and a key storage flag.

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para fileName, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for fileName, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(String, SecureString, X509KeyStorageFlags)

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.Initializes a new instance of the X509Certificate2 class using a certificate file name, a password, and a key storage flag.

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);
public X509Certificate2 (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
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.The name of a certificate file.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.A bitwise combination of the enumeration values that control where and how to import the certificate.

Atributos

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Se você criar um certificado de X509Certificate especificando um repositório de arquivos assinado PKCS7 para fileName, a X509Certificate será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate certificate by specifying a PKCS7 signed file store for fileName, the X509Certificate is created for the certificate that signed the store rather than for any of the certificates within the store.

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.Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.

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);
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.A byte array containing data from an X.509 certificate.

password
String

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.A bitwise combination of the enumeration values that control where and how to import the certificate.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando uma matriz de bytes, uma senha que é necessária para acessar os dados do certificado e um sinalizador de armazenamento de chaves.This constructor creates a new X509Certificate2 object using a byte array, a password that is needed to access the certificate data, and a key storage flag. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.It is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um CSP (provedor de serviços de criptografia) da API de criptografia da Microsoft.Calling this constructor with the correct password decrypts the private key and saves it to a Microsoft Cryptographic API Cryptographic Service Provider (CSP).

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para rawData, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

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.Initializes a new instance of the X509Certificate2 class using a certificate file name and a password used to access the certificate.

public:
 X509Certificate2(System::String ^ fileName, System::String ^ password);
public X509Certificate2 (string fileName, string password);
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.The name of a certificate file.

password
String

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando um nome de arquivo de certificado e uma senha necessária para acessar o certificado.This constructor creates a new X509Certificate2 object using a certificate file name and a password needed to access the certificate. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.It is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chave.Calling this constructor with the correct password decrypts the private key and saves it to a key container.

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para fileName, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for fileName, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(String, SecureString)

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.Initializes a new instance of the X509Certificate2 class using a certificate file name and a password.

public:
 X509Certificate2(System::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);
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.The name of a certificate file.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

Atributos

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.This constructor is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chave.Calling this constructor with the correct password decrypts the private key and saves it to a key container.

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate especificando um repositório de arquivos assinado PKCS7 para fileName, a X509Certificate será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate certificate by specifying a PKCS7 signed file store for fileName, the X509Certificate is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(SerializationInfo, StreamingContext)

Inicializa uma nova instância da classe X509Certificate2 usando as informações de contexto de fluxo e serialização fornecidas.Initializes a new instance of the X509Certificate2 class using the specified serialization and stream context information.

protected:
 X509Certificate2(System::Runtime::Serialization::SerializationInfo ^ info, System::Runtime::Serialization::StreamingContext context);
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
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.The serialization information required to deserialize the new X509Certificate2.

context
StreamingContext

Informações contextuais sobre a origem do fluxo a ser desserializado.Contextual information about the source of the stream to be deserialized.

Exceções

Somente .NET Core: Em todos os casos..NET Core only: In all cases.

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

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.Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.

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);
public X509Certificate2 (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
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.A byte array that contains data from an X.509 certificate.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

keyStorageFlags
X509KeyStorageFlags

Uma combinação bit a bit dos valores de enumeração que controlam onde e como importar o certificado.A bitwise combination of the enumeration values that control where and how to import the certificate.

Atributos

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.This constructor is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um CSP (provedor de serviços de criptografia) da API de criptografia da Microsoft.Calling this constructor with the correct password decrypts the private key and saves it to a Microsoft Cryptographic API Cryptographic Service Provider (CSP).

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate especificando um repositório de arquivos assinado PKCS7 para rawData, a X509Certificate será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(Byte[], SecureString)

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.Initializes a new instance of the X509Certificate2 class using a byte array and a password.

public:
 X509Certificate2(cli::array <System::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);
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.A byte array that contains data from an X.509 certificate.

password
SecureString

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

Atributos

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.This constructor is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chave.Calling this constructor with the correct password decrypts the private key and saves it to a key container.

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate especificando um repositório de arquivos assinado PKCS7 para rawData, a X509Certificate será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(String)

Inicializa uma nova instância da classe X509Certificate2 usando um nome de arquivo de certificado.Initializes a new instance of the X509Certificate2 class using a certificate file name.

public:
 X509Certificate2(System::String ^ fileName);
public X509Certificate2 (string fileName);
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.The name of a certificate file.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando um nome de arquivo de certificado.This constructor creates a new X509Certificate2 object using a certificate file name. Ele dá suporte à codificação binária (DER) ou codificação Base64.It supports binary (DER) encoding or Base64 encoding.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para fileName, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for fileName, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(X509Certificate)

Inicializa uma nova instância da classe X509Certificate2 usando um objeto X509Certificate.Initializes a new instance of the X509Certificate2 class using an X509Certificate object.

public:
 X509Certificate2(System::Security::Cryptography::X509Certificates::X509Certificate ^ certificate);
public X509Certificate2 (System.Security.Cryptography.X509Certificates.X509Certificate certificate);
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.An X509Certificate object.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse método cria uma nova instância da classe X509Certificate2 usando um objeto X509Certificate.This method creates a new instance of the X509Certificate2 class using an X509Certificate object.

X509Certificate2(IntPtr)

Inicializa uma nova instância da classe X509Certificate2 usando um identificador não gerenciado.Initializes a new instance of the X509Certificate2 class using an unmanaged handle.

public:
 X509Certificate2(IntPtr handle);
public X509Certificate2 (IntPtr handle);
new System.Security.Cryptography.X509Certificates.X509Certificate2 : nativeint -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Sub New (handle As IntPtr)

Parâmetros

handle
IntPtr

Um ponteiro para um contexto de certificado em código não gerenciado.A pointer to a certificate context in unmanaged code. A estrutura C é chamada de PCCERT_CONTEXT.The C structure is called PCCERT_CONTEXT.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando um identificador para o contexto de certificado da API de criptografia da Microsoft, PCCERT_CONTEXT.This constructor creates a new X509Certificate2 object using a handle for the Microsoft Cryptographic API certificate context, PCCERT_CONTEXT. Observe que o chamador imediato deste construtor requer permissão de código não gerenciado.Note that the immediate caller of this constructor requires unmanaged code permission.

Importante

O construtor cria uma cópia do contexto do certificado.The constructor creates a copy of the certificate context. Não presuma que a estrutura de contexto que você passou para o construtor é válida; Ele pode ter sido liberado.Do not assume that the context structure you passed to the constructor is valid; it may have been released. Você pode obter uma cópia da estrutura de PCCERT_CONTEXT atual da propriedade Handle, mas ela é válida somente durante o tempo de vida do objeto X509Certificate2.You can get a copy of the current PCCERT_CONTEXT structure from the Handle property, but it is valid only during the lifetime of the X509Certificate2 object.

X509Certificate2(Byte[])

Inicializa uma nova instância da classe X509Certificate2 usando informações de uma matriz de bytes.Initializes a new instance of the X509Certificate2 class using information from a byte array.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData);
public X509Certificate2 (byte[] rawData);
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.A byte array containing data from an X.509 certificate.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando informações de certificado de uma matriz de bytes.This constructor creates a new X509Certificate2 object using certificate information from a byte array. A matriz de bytes pode ser codificada binária (DER) ou de dados X.509 codificados em Base64.The byte array can be binary (DER) encoded or Base64-encoded X.509 data. A matriz de bytes também pode ser um arquivo assinado PKCS7 (Authenticode); o certificado de signatário é usado para criar o objeto.The byte array can also be a PKCS7 (Authenticode) signed file; the signer certificate is used to create the object.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para rawData, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

X509Certificate2(Byte[], String)

Inicializa uma nova instância da classe X509Certificate2 usando uma matriz de bytes e uma senha.Initializes a new instance of the X509Certificate2 class using a byte array and a password.

public:
 X509Certificate2(cli::array <System::Byte> ^ rawData, System::String ^ password);
public X509Certificate2 (byte[] rawData, string password);
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.A byte array containing data from an X.509 certificate.

password
String

A senha necessária para acessar os dados do certificado X.509.The password required to access the X.509 certificate data.

Exceções

Ocorre um erro com o certificado.An error with the certificate occurs. Por exemplo:For example:

- O arquivo de certificado não existe.- The certificate file does not exist.

- O certificado é inválido.- The certificate is invalid.

- A senha do certificado está incorreta.- The certificate's password is incorrect.

Comentários

Esse construtor cria um novo objeto X509Certificate2 usando uma matriz de bytes e uma senha que é necessária para acessar os dados do certificado.This constructor creates a new X509Certificate2 object using a byte array and a password that is needed to access the certificate data. Ele é usado com arquivos PKCS12 (PFX) que contêm a chave privada do certificado.It is used with PKCS12 (PFX) files that contain the certificate's private key. Chamar esse construtor com a senha correta descriptografa a chave privada e a salva em um contêiner de chave.Calling this constructor with the correct password decrypts the private key and saves it to a key container.

Importante

Nunca codifique uma senha em seu código-fonte.Never hard code a password within your source code. As senhas embutidas em código podem ser recuperadas de um assembly usando o ILDASM. exe (desmontador de Il), um editor hexadecimal ou simplesmente abrindo o assembly em um editor de texto como o notepad. exe.Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (IL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe.

Se você criar um certificado de X509Certificate2 especificando um repositório de arquivos assinado PKCS7 para rawData, a X509Certificate2 será criada para o certificado que assinou a loja em vez de para qualquer um dos certificados no repositório.If you create an X509Certificate2 certificate by specifying a PKCS7 signed file store for rawData, the X509Certificate2 is created for the certificate that signed the store rather than for any of the certificates within the store.

Aplica-se a