X509Certificate Конструкторы

Определение

Инициализирует новый экземпляр класса X509Certificate.

Перегрузки

X509Certificate()
Устаревшие..
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate.

X509Certificate(Byte[])
Устаревшие..

Инициализирует новый класс X509Certificate, определенный из последовательности байтов, представляющих сертификат X.509v3.

X509Certificate(IntPtr)

Инициализирует новый экземпляр класса X509Certificate с помощью дескриптора неуправляемой структуры PCCERT_CONTEXT.

X509Certificate(X509Certificate)

Инициализирует новый экземпляр класса X509Certificate с помощью другого класса X509Certificate.

X509Certificate(String)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate именем подписанного файла PKCS7.

X509Certificate(Byte[], SecureString)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.

X509Certificate(Byte[], String)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.

X509Certificate(SerializationInfo, StreamingContext)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с помощью объекта SerializationInfo и структуры StreamingContext.

X509Certificate(String, SecureString)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата и пароля.

X509Certificate(String, String)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату.

X509Certificate(Byte[], SecureString, X509KeyStorageFlags)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.

X509Certificate(Byte[], String, X509KeyStorageFlags)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.

X509Certificate(String, SecureString, X509KeyStorageFlags)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата, пароля и флага хранилища ключа.

X509Certificate(String, String, X509KeyStorageFlags)
Устаревшие..

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату и флагом хранилища ключей.

X509Certificate()

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

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

Внимание!

X509Certificate and X509Certificate2 are immutable. Use X509CertificateLoader to create a new certificate.

Инициализирует новый экземпляр класса X509Certificate.

C#
public X509Certificate ();
C#
[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 X509Certificate ();
C#
[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 X509Certificate ();
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use X509CertificateLoader to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate ();
Атрибуты

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Применяется к

Продукт Версии

X509Certificate(Byte[])

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый класс X509Certificate, определенный из последовательности байтов, представляющих сертификат X.509v3.

C#
public X509Certificate (byte[] data);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (byte[] data);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (byte[] data);

Параметры

data
Byte[]

Массив байтов, содержащий данные сертификата X.509.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр rawData имеет значение null.

-или-

Длина параметра rawData равна 0.

Примеры

В следующем примере файл сертификата X.509 загружается в X509Certificate объект , экспортируется сертификат в виде массива байтов, а затем импортируется массив байтов в другой X509Certificate объект.

C#
using System;
using System.Security.Cryptography.X509Certificates;

public class X509
{

    public static void Main()
    {

        // The path to the certificate.
        string Certificate = "test.pfx";

        // Load the certificate into an X509Certificate object.
        X509Certificate cert = new X509Certificate(Certificate);

        byte[] certData = cert.Export(X509ContentType.Cert);

        X509Certificate newCert = new X509Certificate(certData);

        // Get the value.
        string resultsTrue = newCert.ToString(true);

        // Display the value to the console.
        Console.WriteLine(resultsTrue);

        // Get the value.
        string resultsFalse = newCert.ToString(false);

        // Display the value to the console.
        Console.WriteLine(resultsFalse);
    }
}

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для data, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(IntPtr)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Инициализирует новый экземпляр класса X509Certificate с помощью дескриптора неуправляемой структуры PCCERT_CONTEXT.

C#
public X509Certificate (IntPtr handle);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (IntPtr handle);
C#
[System.Security.SecurityCritical]
public X509Certificate (IntPtr handle);

Параметры

handle
IntPtr

Дескриптор неуправляемой структуры PCCERT_CONTEXT.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр дескриптора не представляет допустимой структуры PCCERT_CONTEXT.

Комментарии

Этот конструктор создает новый X509Certificate объект с помощью дескриптора для контекста сертификата API шифрования Майкрософт, PCCERT_CONTEXT.

Важно!

Этот конструктор создает копию контекста сертификата. Не предполагайте, что структура контекста, переданная в конструктор, является допустимой; Возможно, она была выпущена. Вы можете получить копию текущей PCCERT_CONTEXT структуры из Handle свойства , но она действительна только в течение времени существования X509Certificate объекта.

Применяется к

Продукт Версии

X509Certificate(X509Certificate)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Инициализирует новый экземпляр класса X509Certificate с помощью другого класса X509Certificate.

C#
public X509Certificate (System.Security.Cryptography.X509Certificates.X509Certificate cert);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (System.Security.Cryptography.X509Certificates.X509Certificate cert);

Параметры

cert
X509Certificate

Класс X509Certificate, из которого инициализируется данный класс.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

параметр cert имеет значение null;

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Применяется к

Продукт Версии

X509Certificate(String)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый экземпляр класса X509Certificate именем подписанного файла PKCS7.

C#
public X509Certificate (string fileName);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (string fileName);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (string fileName);

Параметры

fileName
String

Имя подписанного файла PKCS7.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр fileName имеет значение null.

Примеры

Следующий пример загружает сертификат X.509 из файла, вызывает ToString метод и отображает результаты в консоли.

C#
using System;
using System.Security.Cryptography.X509Certificates;

public class X509
{

    public static void Main()
    {

        // The path to the certificate.
        string Certificate = "Certificate.cer";

        // Load the certificate into an X509Certificate object.
        X509Certificate cert = new X509Certificate(Certificate);

        // Get the value.
        string resultsTrue = cert.ToString(true);

        // Display the value to the console.
        Console.WriteLine(resultsTrue);

        // Get the value.
        string resultsFalse = cert.ToString(false);

        // Display the value to the console.
        Console.WriteLine(resultsFalse);
    }
}

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для fileName, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(Byte[], SecureString)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.

C#
[System.CLSCompliant(false)]
public X509Certificate (byte[] rawData, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (byte[] rawData, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (byte[] rawData, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
public X509Certificate (byte[] rawData, System.Security.SecureString password);
C#
public X509Certificate (byte[] rawData, System.Security.SecureString password);

Параметры

rawData
Byte[]

Массив байтов, содержащий данные из сертификата X.509.

password
SecureString

Пароль для доступа к данным сертификата X.509.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр rawData имеет значение null.

-или-

Длина параметра rawData равна 0.

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Важно!

Никогда не жестко кодируйте пароль в исходном коде. Жестко заданные пароли можно получить из сборки с помощью Ildasm.exe (дизассемблер IL), шестнадцатеричного редактора или просто открыв сборку в текстовом редакторе, например Notepad.exe.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для rawData, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(Byte[], String)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов и пароля.

C#
public X509Certificate (byte[] rawData, string? password);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (byte[] rawData, string? password);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (byte[] rawData, string? password);
C#
public X509Certificate (byte[] rawData, string password);

Параметры

rawData
Byte[]

Массив байтов, содержащий данные сертификата X.509.

password
String

Пароль для доступа к данным сертификата X.509.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр rawData имеет значение null.

-или-

Длина параметра rawData равна 0.

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Важно!

Никогда не жестко кодируйте пароль в исходном коде. Жестко заданные пароли можно получить из сборки с помощью Ildasm.exe (дизассемблер IL), шестнадцатеричного редактора или просто открыв сборку в текстовом редакторе, например Notepad.exe.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для rawData, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(SerializationInfo, StreamingContext)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

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

Инициализирует новый экземпляр класса X509Certificate с помощью объекта SerializationInfo и структуры StreamingContext.

C#
public X509Certificate (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
C#
[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}")]
public X509Certificate (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);

Параметры

info
SerializationInfo

Объект SerializationInfo, описывающий информацию о сериализации.

context
StreamingContext

СтруктураStreamingContext, описывающая способ выполнения сериализации.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Применяется к

Продукт Версии

X509Certificate(String, SecureString)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата и пароля.

C#
[System.CLSCompliant(false)]
public X509Certificate (string fileName, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (string fileName, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (string fileName, System.Security.SecureString? password);
C#
[System.CLSCompliant(false)]
public X509Certificate (string fileName, System.Security.SecureString password);
C#
public X509Certificate (string fileName, System.Security.SecureString password);

Параметры

fileName
String

Имя файла сертификата.

password
SecureString

Пароль для доступа к данным сертификата X.509.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр fileName имеет значение null.

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом. Вызов этого конструктора с правильным паролем расшифровывает закрытый ключ и сохраняет его в контейнер ключей.

Важно!

Никогда не жестко кодируйте пароль в исходном коде. Жестко заданные пароли можно получить из сборки с помощью Ildasm.exe (дизассемблер IL), шестнадцатеричного редактора или просто открыв сборку в текстовом редакторе, например Notepad.exe.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для fileName, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(String, String)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату.

C#
public X509Certificate (string fileName, string? password);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (string fileName, string? password);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (string fileName, string? password);
C#
public X509Certificate (string fileName, string password);

Параметры

fileName
String

Имя подписанного файла PKCS7.

password
String

Пароль для доступа к данным сертификата X.509.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр fileName имеет значение null.

Комментарии

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом. Вызов этого конструктора с правильным паролем расшифровывает закрытый ключ и сохраняет его в контейнер ключей.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для fileName, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(Byte[], SecureString, X509KeyStorageFlags)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.

C#
[System.CLSCompliant(false)]
public X509Certificate (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
public X509Certificate (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public X509Certificate (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Параметры

rawData
Byte[]

Массив байтов, содержащий данные из сертификата X.509.

password
SecureString

Пароль для доступа к данным сертификата X.509.

keyStorageFlags
X509KeyStorageFlags

Поразрядное сочетание значений перечисления, определяющих, где и как следует импортировать сертификат.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр rawData имеет значение null.

-или-

Длина параметра rawData равна 0.

Комментарии

Вызов этого конструктора с правильным паролем расшифровывает закрытый ключ и сохраняет его в поставщике служб шифрования (CSP) Api шифрования Майкрософт.

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Важно!

Никогда не жестко кодируйте пароль в исходном коде. Жестко заданные пароли можно получить из сборки с помощью Ildasm.exe (дизассемблер IL), шестнадцатеричного редактора или просто открыв сборку в текстовом редакторе, например Notepad.exe.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для rawData, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(Byte[], String, X509KeyStorageFlags)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый экземпляр класса X509Certificate с использованием массива байтов, пароля и флага хранилища ключей.

C#
public X509Certificate (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public X509Certificate (byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Параметры

rawData
Byte[]

Массив байтов, содержащий данные сертификата X.509.

password
String

Пароль для доступа к данным сертификата X.509.

keyStorageFlags
X509KeyStorageFlags

Поразрядное сочетание значений перечисления, определяющих, где и как следует импортировать сертификат.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр rawData имеет значение null.

-или-

Длина параметра rawData равна 0.

Комментарии

Этот конструктор создает новый X509Certificate объект с помощью массива байтов, пароля, необходимого для доступа к данным сертификата, и флага хранилища ключей. Вызов этого конструктора с правильным паролем расшифровывает закрытый ключ и сохраняет его в поставщике служб шифрования (CSP) Api шифрования Майкрософт.

Значение X509KeyStorageFlags можно использовать для управления тем, где и как импортируется закрытый ключ.

ASN.1 DER — это единственный формат сертификата, поддерживаемый этим классом.

Важно!

Никогда не жестко кодируйте пароль в исходном коде. Жестко заданные пароли можно получить из сборки с помощью Ildasm.exe (дизассемблер IL), шестнадцатеричного редактора или просто открыв сборку в текстовом редакторе, например Notepad.exe.

Если сертификат создается X509Certificate путем указания хранилища файлов, подписанного PKCS7 для rawData, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(String, SecureString, X509KeyStorageFlags)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Важно!

Этот API несовместим с CLS.

Инициализирует новый экземпляр класса X509Certificate с использованием имени файла сертификата, пароля и флага хранилища ключа.

C#
[System.CLSCompliant(false)]
public X509Certificate (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
public X509Certificate (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public X509Certificate (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Параметры

fileName
String

Имя файла сертификата.

password
SecureString

Пароль для доступа к данным сертификата X.509.

keyStorageFlags
X509KeyStorageFlags

Поразрядное сочетание значений перечисления, определяющих, где и как следует импортировать сертификат.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр fileName имеет значение null.

Комментарии

При создании X509Certificate сертификата путем указания хранилища файлов, подписанного PKCS7 для fileName, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии

X509Certificate(String, String, X509KeyStorageFlags)

Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs
Исходный код:
X509Certificate.cs

Внимание!

Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.

Инициализирует новый экземпляр класса X509Certificate, именем подписанного файла PKCS7 и паролем для доступа к сертификату и флагом хранилища ключей.

C#
public X509Certificate (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public X509Certificate (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Obsolete("Loading certificate data through the constructor or Import is obsolete. Use X509CertificateLoader instead to load certificates.", DiagnosticId="SYSLIB0057", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public X509Certificate (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public X509Certificate (string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Параметры

fileName
String

Имя подписанного файла PKCS7.

password
String

Пароль для доступа к данным сертификата X.509.

keyStorageFlags
X509KeyStorageFlags

Поразрядное сочетание значений перечисления, определяющих, где и как следует импортировать сертификат.

Атрибуты

Исключения

Произошла ошибка сертификата. Пример:

  • Файл сертификата не существует.

  • Сертификат недействителен.

  • Неправильный пароль сертификата.

Параметр fileName имеет значение null.

Комментарии

При создании X509Certificate сертификата путем указания хранилища файлов, подписанного PKCS7 для fileName, X509Certificate создается для сертификата, подписавшего хранилище, а не для любого из сертификатов в хранилище.

Применяется к

Продукт Версии