X509Certificate2 Constructor (Byte[], String, X509KeyStorageFlags)
Initializes a new instance of the X509Certificate2 class using a byte array, a password, and a key storage flag.
Assembly: System (in System.dll)
public X509Certificate2( byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags )
Parameters
- rawData
- Type: System.Byte[]
A byte array containing data from an X.509 certificate.
- password
- Type: System.String
The password required to access the X.509 certificate data.
- keyStorageFlags
- Type: System.Security.Cryptography.X509Certificates.X509KeyStorageFlags
A bitwise combination of the enumeration values that control where and how to import the private key of the certificate.
| Exception | Condition |
|---|---|
| CryptographicException | An error with the certificate occurs. For example:
|
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. It is used with PKCS12 (PFX) files that contain the certificate's private key. Calling this constructor with the correct password decrypts the private key and saves it to a Microsoft Cryptographic API Cryptographic Service Provider (CSP).
Security Note |
|---|
Never hard code a password within your source code. Hard-coded passwords can be retrieved from an assembly using the Ildasm.exe (MSIL Disassembler), a hex editor, or by simply opening up the assembly in a text editor such as Notepad.exe. |
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.
- SecurityPermission
for accessing unmanaged code. Security action: LinkDemand. Associated enumeration: SecurityPermissionFlag.UnmanagedCode
- SecurityPermission
for accessing unmanaged code. Security action: InheritanceDemand. Associated enumeration: SecurityPermissionFlag.UnmanagedCode
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Security Note