X509Certificate2 コンストラクター

定義

X509Certificate2 クラスの新しいインスタンスを初期化します。

オーバーロード

X509Certificate2()
互換性のために残されています。

X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String, String, X509KeyStorageFlags)

証明書ファイル名、証明書にアクセスするためのパスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String, SecureString, X509KeyStorageFlags)

証明書ファイル名、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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

証明書データ、パスワード、キー格納フラグから、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(Byte[], String, X509KeyStorageFlags)

バイト配列、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

バイト配列、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String, String)

証明書ファイル名と証明書にアクセスするためのパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String, SecureString)

証明書ファイル名とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

証明書ファイル名、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(Byte[], String)

バイト配列とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(Byte[], SecureString)

バイト配列とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(String)

証明書ファイル名を使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(X509Certificate)

X509Certificate2 オブジェクトを使用して X509Certificate クラスの新しいインスタンスを 初期化します。

X509Certificate2(ReadOnlySpan<Byte>)

証明書データから、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(SerializationInfo, StreamingContext)

シリアル化情報とストリーム コンテキスト情報を指定して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(IntPtr)

アンマネージ ハンドルを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2(Byte[])

バイト配列の情報を使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

X509Certificate2()

注意事項

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

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 ()
属性

次のコード例では、現在のユーザー証明書ストアを開き、アクティブな証明書のみを選択し、ユーザーが 1 つ以上の証明書を選択できるようにします。 次に、証明書情報をコンソールに書き込みます。

#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

注釈

このコンストラクターは、バイト配列、ポインター、または証明書ファイルからの証明書情報を使用するこのクラスの他のコンストラクターとは異なり、空 X509Certificate2 のオブジェクトを作成します。

適用対象

X509Certificate2(String, String, X509KeyStorageFlags)

証明書ファイル名、証明書にアクセスするためのパスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

password
String

X.509 証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書ファイル名、証明書へのアクセスに必要なパスワード、およびキー ストレージ フラグを使用して、新しい X509Certificate2 オブジェクトを作成します。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificate2する場合は、X509Certificate2ストアfileName内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(String, SecureString, X509KeyStorageFlags)

重要

この API は CLS 準拠ではありません。

証明書ファイル名、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

password
SecureString

X.509 証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificateする場合は、X509CertificateストアfileName内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

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

証明書データ、パスワード、キー格納フラグから、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

rawData
ReadOnlySpan<Byte>

処理する証明書データ。

password
ReadOnlySpan<Char>

証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。

適用対象

X509Certificate2(Byte[], String, X509KeyStorageFlags)

バイト配列、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

rawData
Byte[]

X.509 証明書のデータを格納しているバイト配列。

password
String

X.509 証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、バイト配列、証明書データにアクセスするために必要なパスワード、およびキー ストレージ フラグを使用して、新しい X509Certificate2 オブジェクトを作成します。 証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、Microsoft Cryptographic API 暗号化サービス プロバイダー (CSP) に保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificate2する場合は、X509Certificate2ストアrawData内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(Byte[], SecureString, X509KeyStorageFlags)

重要

この API は CLS 準拠ではありません。

バイト配列、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

rawData
Byte[]

X.509 証明書のデータを格納しているバイト配列。

password
SecureString

X.509 証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、Microsoft Cryptographic API 暗号化サービス プロバイダー (CSP) に保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificateする場合は、X509CertificateストアrawData内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(String, String)

証明書ファイル名と証明書にアクセスするためのパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

password
String

X.509 証明書データにアクセスするために必要なパスワード。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書ファイル名と、証明書へのアクセスに必要なパスワードを使用して、新しい X509Certificate2 オブジェクトを作成します。 証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、キー コンテナーに保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificate2する場合は、X509Certificate2ストアfileName内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(String, SecureString)

重要

この API は CLS 準拠ではありません。

証明書ファイル名とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

password
SecureString

X.509 証明書データにアクセスするために必要なパスワード。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、キー コンテナーに保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificateする場合は、X509CertificateストアfileName内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(String, ReadOnlySpan<Char>, X509KeyStorageFlags)

証明書ファイル名、パスワード、およびキー格納フラグを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

password
ReadOnlySpan<Char>

X.509 証明書データにアクセスするために必要なパスワード。

keyStorageFlags
X509KeyStorageFlags

証明書をインポートする場所と方法を制御する列挙値のビットごとの組み合わせ。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアを指定して証明書を作成X509Certificate2する場合は、X509Certificate2ストアfileName内の証明書ではなく、ストアに署名された証明書用に作成されます。

適用対象

X509Certificate2(Byte[], String)

バイト配列とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

rawData
Byte[]

X.509 証明書のデータを格納しているバイト配列。

password
String

X.509 証明書データにアクセスするために必要なパスワード。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書データにアクセスするために必要なバイト配列とパスワードを使用して、新しい X509Certificate2 オブジェクトを作成します。 証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、キー コンテナーに保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアrawDataを指定して証明書を作成X509Certificate2する場合、X509Certificate2ストア内の証明書ではなく、ストアに署名した証明書用に作成されます。

適用対象

X509Certificate2(Byte[], SecureString)

重要

この API は CLS 準拠ではありません。

バイト配列とパスワードを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

rawData
Byte[]

X.509 証明書のデータを格納しているバイト配列。

password
SecureString

X.509 証明書データにアクセスするために必要なパスワード。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書の秘密キーを含む PKCS12 (PFX) ファイルで使用されます。 このコンストラクターを正しいパスワードで呼び出すと、秘密キーが復号化され、キー コンテナーに保存されます。

重要

ソース コード内でパスワードをハードコードしないでください。 ハードコードされたパスワードは、Ildasm.exe (IL Disassembler)、16 進エディター、または Notepad.exe などのテキスト エディターでアセンブリを開くだけで取得することが可能です。

PKCS7 署名済みファイル ストアrawDataを指定して証明書を作成X509Certificateする場合、X509Certificateストア内の証明書ではなく、ストアに署名した証明書用に作成されます。

適用対象

X509Certificate2(String)

証明書ファイル名を使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

fileName
String

証明書ファイルの名前。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、証明書ファイル名を使用して新しい X509Certificate2 オブジェクトを作成します。 バイナリ (DER) エンコードまたは Base64 エンコードがサポートされています。

PKCS7 署名済みファイル ストアfileNameを指定して証明書を作成X509Certificate2する場合、X509Certificate2ストア内の証明書ではなく、ストアに署名した証明書用に作成されます。

適用対象

X509Certificate2(X509Certificate)

X509Certificate2 オブジェクトを使用して 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)

パラメーター

certificate
X509Certificate

X509Certificate オブジェクト。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このメソッドは、オブジェクトを使用してクラスの X509Certificate2 新しいインスタンスを X509Certificate 作成します。

適用対象

X509Certificate2(ReadOnlySpan<Byte>)

証明書データから、X509Certificate2 クラスの新しいインスタンスを初期化します。

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))

パラメーター

rawData
ReadOnlySpan<Byte>

処理する証明書データ。

属性

例外

証明書でエラーが発生しました。

適用対象

X509Certificate2(SerializationInfo, StreamingContext)

シリアル化情報とストリーム コンテキスト情報を指定して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

info
SerializationInfo

新しい X509Certificate2 を逆シリアル化するために必要なシリアル化情報。

context
StreamingContext

逆シリアル化するストリームの転送元に関するコンテキスト情報。

例外

.NET Core および .NET 5 以降のみ:すべての場合。

適用対象

X509Certificate2(IntPtr)

アンマネージ ハンドルを使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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)

パラメーター

handle
IntPtr

nativeint

アンマネージ コードの証明書コンテキストへのポインター。 C 構造体は、PCCERT_CONTEXT と呼ばれます。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、PCCERT_CONTEXTMicrosoft Cryptographic API 証明書コンテキストのハンドルを使用して新しいX509Certificate2オブジェクトを作成します。 このコンストラクターの直接の呼び出し元には、アンマネージ コードのアクセス許可が必要であることに注意してください。

重要

コンストラクターは、証明書コンテキストのコピーを作成します。 コンストラクターに渡したコンテキスト構造が有効であると想定しないでください。リリースされている可能性があります。 プロパティから現在 PCCERT_CONTEXT の構造体のコピーを Handle 取得できますが、オブジェクトの X509Certificate2 有効期間中にのみ有効です。

適用対象

X509Certificate2(Byte[])

バイト配列の情報を使用して、X509Certificate2 クラスの新しいインスタンスを初期化します。

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())

パラメーター

rawData
Byte[]

X.509 証明書のデータを格納しているバイト配列。

属性

例外

証明書でエラーが発生しました。 次に例を示します。

  • 証明書ファイルが存在しません。

  • 証明書が無効です。

  • 証明書のパスワードが正しくありません。

注釈

このコンストラクターは、バイト配列の証明書情報を使用して新しい X509Certificate2 オブジェクトを作成します。 バイト配列には、バイナリ (DER) または Base64 でエンコードされた X.509 データを指定できます。 バイト配列には、PKCS7 (Authenticode) 署名済みファイルを指定することもできます。署名者証明書を使用してオブジェクトを作成します。

PKCS7 署名済みファイル ストアrawDataを指定して証明書を作成X509Certificate2する場合、X509Certificate2ストア内の証明書ではなく、ストアに署名した証明書用に作成されます。

適用対象