X509Certificate2 Constructores

Definición

Inicializa una nueva instancia de la clase X509Certificate2.

Sobrecargas

X509Certificate2()
Obsoletos.

Inicializa una nueva instancia de la clase X509Certificate2.

X509Certificate2(String, String, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña para obtener acceso al certificado y una marca de almacenamiento claves.

X509Certificate2(String, SecureString, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.

X509Certificate2(Byte[], String, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.

X509Certificate2(String, String)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado y una contraseña para obtener acceso al certificado.

X509Certificate2(String, SecureString)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado y una contraseña.

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

Inicializa una instancia nueva de la clase X509Certificate2 a partir de los datos del certificado, una contraseña y marcas de almacenamiento clave.

X509Certificate2(Byte[], String)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes y una contraseña.

X509Certificate2(Byte[], SecureString)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes y una contraseña.

X509Certificate2(String)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado.

X509Certificate2(X509Certificate)

Inicializa una nueva instancia de la clase X509Certificate2 mediante un objeto X509Certificate.

X509Certificate2(SerializationInfo, StreamingContext)
Obsoletos.

Inicializa una nueva instancia de la clase X509Certificate2 utilizando la información de serialización y el contexto de secuencia especificados.

X509Certificate2(ReadOnlySpan<Byte>)

Inicializa una instancia nueva de la clase X509Certificate2 a partir de los datos del certificado.

X509Certificate2(IntPtr)

Inicializa una nueva instancia de la clase X509Certificate2 utilizando un identificador no administrado.

X509Certificate2(Byte[])

Inicializa una nueva instancia de la clase X509Certificate2 utilizando información de una matriz de bytes.

X509Certificate2()

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Precaución

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

Inicializa una nueva instancia de la clase 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

Ejemplos

En el ejemplo de código siguiente se abre el almacén de certificados de usuario actual, se seleccionan solo certificados activos y, a continuación, se permite al usuario seleccionar uno o varios certificados. A continuación, en el ejemplo se escribe información de certificado en la consola.

#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

Comentarios

Este constructor crea un objeto vacío X509Certificate2 , a diferencia de los otros constructores de esta clase que usan información de certificado de una matriz de bytes, un puntero o un archivo de certificado.

Se aplica a

X509Certificate2(String, String, X509KeyStorageFlags)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña para obtener acceso al certificado y una marca de almacenamiento claves.

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

Nombre de un archivo de certificado.

password
String

Contraseña requerida para obtener acceso a los datos del certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto con un nombre de archivo de certificado, una contraseña necesaria para acceder al certificado y una marca de almacenamiento de claves.

Importante

Nunca codifique de forma rígida una contraseña dentro del código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(String, SecureString, X509KeyStorageFlags)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Importante

Esta API no es conforme a CLS.

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.

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

Nombre de un archivo de certificado.

password
SecureString

Contraseña requerida para obtener acceso a los datos del certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Si crea un X509Certificate certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado, una contraseña y una marca de almacenamiento de claves.

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

Nombre de un archivo de certificado.

password
ReadOnlySpan<Char>

Contraseña requerida para obtener acceso a los datos del certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Importante

Nunca codifique de forma rígida una contraseña dentro del código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(Byte[], String, X509KeyStorageFlags)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.

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[]

Matriz de bytes que contiene los datos de un certificado X.509.

password
String

Contraseña requerida para obtener acceso a los datos del certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto mediante una matriz de bytes, una contraseña necesaria para acceder a los datos del certificado y una marca de almacenamiento de claves. Se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un proveedor de servicios criptográficos (CSP) de la API criptográfica de Microsoft.

Importante

Nunca codifique de forma rígida una contraseña dentro del código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para rawData, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Importante

Esta API no es conforme a CLS.

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes, una contraseña y una marca de almacenamiento de claves.

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[]

Matriz de bytes que contiene los datos de un certificado X.509.

password
SecureString

Contraseña requerida para obtener acceso a los datos del certificado X.509.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un proveedor de servicios criptográficos (CSP) de la API criptográfica de Microsoft.

Importante

Nunca codifique de forma rígida una contraseña en el código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate certificado especificando un almacén de archivos firmado PKCS7 para rawData, X509Certificate se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(String, String)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado y una contraseña para obtener acceso al 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

Nombre de un archivo de certificado.

password
String

Contraseña requerida para obtener acceso a los datos del certificado X.509.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto mediante un nombre de archivo de certificado y una contraseña necesaria para acceder al certificado. Se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un contenedor de claves.

Importante

Nunca codifique de forma rígida una contraseña en el código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(String, SecureString)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Importante

Esta API no es conforme a CLS.

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo de certificado y una contraseña.

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

Nombre de un archivo de certificado.

password
SecureString

Contraseña requerida para obtener acceso a los datos del certificado X.509.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un contenedor de claves.

Importante

Nunca codifique de forma rígida una contraseña en el código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

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

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una instancia nueva de la clase X509Certificate2 a partir de los datos del certificado, una contraseña y marcas de almacenamiento clave.

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>

Datos del certificado que se van a procesar.

password
ReadOnlySpan<Char>

Contraseña requerida para acceder a los datos del certificado.

keyStorageFlags
X509KeyStorageFlags

Combinación bit a bit de los valores de enumeración que controlan dónde y cómo importar el certificado.

Atributos

Excepciones

Se genera un error con el certificado.

Se aplica a

X509Certificate2(Byte[], String)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes y una contraseña.

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[]

Matriz de bytes que contiene los datos de un certificado X.509.

password
String

Contraseña requerida para obtener acceso a los datos del certificado X.509.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto mediante una matriz de bytes y una contraseña necesaria para acceder a los datos del certificado. Se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un contenedor de claves.

Importante

Nunca codifique de forma rígida una contraseña en el código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para rawData, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(Byte[], SecureString)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Importante

Esta API no es conforme a CLS.

Inicializa una nueva instancia de la clase X509Certificate2 utilizando una matriz de bytes y una contraseña.

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[]

Matriz de bytes que contiene los datos de un certificado X.509.

password
SecureString

Contraseña requerida para obtener acceso a los datos del certificado X.509.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor se usa con archivos PKCS12 (PFX) que contienen la clave privada del certificado. Al llamar a este constructor con la contraseña correcta, se descifra la clave privada y se guarda en un contenedor de claves.

Importante

Nunca codifique de forma rígida una contraseña en el código fuente. Las contraseñas codificadas de forma rígida se pueden recuperar de un ensamblado mediante el Ildasm.exe (Desensamblador de IL), un editor hexadecimal o simplemente abriendo el ensamblado en un editor de texto, como Notepad.exe.

Si crea un X509Certificate certificado especificando un almacén de archivos firmado PKCS7 para rawData, X509Certificate se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(String)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando el nombre de un archivo 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

Nombre de un archivo de certificado.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto con un nombre de archivo de certificado. Admite la codificación binaria (DER) o la codificación Base64.

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para fileName, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a

X509Certificate2(X509Certificate)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 mediante un 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

Objeto X509Certificate.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este método crea una nueva instancia de la X509Certificate2 clase utilizando un X509Certificate objeto .

Se aplica a

X509Certificate2(SerializationInfo, StreamingContext)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Precaución

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

Inicializa una nueva instancia de la clase X509Certificate2 utilizando la información de serialización y el contexto de secuencia especificados.

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

Información de serialización necesaria para deserializar la nueva clase X509Certificate2.

context
StreamingContext

Información contextual sobre el origen de la secuencia que se va a deserializar.

Atributos

Excepciones

.NET Core y .NET 5+ solo: En todos los casos.

Se aplica a

X509Certificate2(ReadOnlySpan<Byte>)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una instancia nueva de la clase X509Certificate2 a partir de los datos del 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>

Datos del certificado que se van a procesar.

Atributos

Excepciones

Se genera un error con el certificado.

Se aplica a

X509Certificate2(IntPtr)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando un identificador no administrado.

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

Puntero a un contexto de certificado en código no administrado. La estructura C se llama PCCERT_CONTEXT.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto mediante un identificador para el contexto de certificado de la API criptográfica de Microsoft, PCCERT_CONTEXT. Tenga en cuenta que el llamador inmediato de este constructor requiere permiso de código no administrado.

Importante

El constructor crea una copia del contexto del certificado. No suponga que la estructura de contexto que pasó al constructor es válida; es posible que se haya liberado. Puede obtener una copia de la estructura actual PCCERT_CONTEXT de la Handle propiedad , pero solo es válida durante la vigencia del X509Certificate2 objeto.

Se aplica a

X509Certificate2(Byte[])

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

Inicializa una nueva instancia de la clase X509Certificate2 utilizando información de una 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[]

Matriz de bytes que contiene los datos de un certificado X.509.

Atributos

Excepciones

Se genera un error con el certificado. Por ejemplo:

  • El archivo de certificado no existe.

  • El certificado no es válido.

  • La contraseña del certificado es incorrecta.

Comentarios

Este constructor crea un nuevo X509Certificate2 objeto mediante la información de certificado de una matriz de bytes. La matriz de bytes puede ser de datos X.509 codificados en Base64 o codificados en binario (DER). La matriz de bytes también puede ser un archivo firmado PKCS7 (Authenticode); el certificado del firmante se usa para crear el objeto .

Si crea un X509Certificate2 certificado especificando un almacén de archivos firmado PKCS7 para rawData, X509Certificate2 se crea para el certificado que firmó el almacén en lugar de para cualquiera de los certificados del almacén.

Se aplica a