X509Store クラス
アセンブリ: System (system.dll 内)



X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2

System.Security.Cryptography.X509Certificates.X509Store


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ ()
アセンブリ: System (system.dll 内)



X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (String)
アセンブリ: System (system.dll 内)


現在のユーザーに対する特定の X.509 ストア名を使用して X509Store オブジェクトを作成するには、このコンストラクタを使用します。新しいストアを作成するには、既存の名前以外の名前を指定します。指定した名前の新しいストアが作成されます。

X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (StoreLocation)
アセンブリ: System (system.dll 内)

Public Sub New ( _ storeLocation As StoreLocation _ )
Dim storeLocation As StoreLocation Dim instance As New X509Store(storeLocation)
public X509Store ( StoreLocation storeLocation )
public: X509Store ( StoreLocation storeLocation )
public X509Store ( StoreLocation storeLocation )
public function X509Store ( storeLocation : StoreLocation )


X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (String, StoreLocation)
アセンブリ: System (system.dll 内)

Public Sub New ( _ storeName As String, _ storeLocation As StoreLocation _ )
Dim storeName As String Dim storeLocation As StoreLocation Dim instance As New X509Store(storeName, storeLocation)
public X509Store ( string storeName, StoreLocation storeLocation )
public: X509Store ( String^ storeName, StoreLocation storeLocation )
public X509Store ( String storeName, StoreLocation storeLocation )
public function X509Store ( storeName : String, storeLocation : StoreLocation )

ストア名とストアの場所を指定して X509Store オブジェクトを作成するには、このコンストラクタを使用します。新しいストアを作成するには、既存の名前以外の名前を指定します。指定した名前の新しいストアが作成されます。

X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (StoreName)
アセンブリ: System (system.dll 内)



X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (IntPtr)
アセンブリ: System (system.dll 内)



このコンストラクタを使用して、アンマネージ CAPI (Microsoft Cryptographic API) との互換性を提供します。
HCERTSTORE ハンドルの詳細については、MSDN ライブラリ のプラットフォーム SDK にあるアンマネージ CAPI に関するドキュメントを参照してください。

- SecurityPermissionAttribute (アンマネージ コードを使用するために必要なアクセス許可)。UnmanagedCode (関連する列挙体)。 LinkDemand (セキュリティ アクション)。
- SecurityPermissionAttribute (アンマネージ コードを使用するために必要なアクセス許可)。UnmanagedCode (関連する列挙体)。InheritanceDemand (セキュリティ アクション)。

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ (StoreName, StoreLocation)
アセンブリ: System (system.dll 内)

Public Sub New ( _ storeName As StoreName, _ storeLocation As StoreLocation _ )
Dim storeName As StoreName Dim storeLocation As StoreLocation Dim instance As New X509Store(storeName, storeLocation)
public X509Store ( StoreName storeName, StoreLocation storeLocation )
public: X509Store ( StoreName storeName, StoreLocation storeLocation )
public X509Store ( StoreName storeName, StoreLocation storeLocation )
public function X509Store ( storeName : StoreName, storeLocation : StoreLocation )
- storeName
StoreName 値の 1 つ。



X.509 証明書ストアを開いて証明書を追加および削除し、証明書ストアを閉じるコード例を次に示します。ローカル ストアに追加またはローカル ストアから削除する証明書が 3 つあると仮定しています。
using System; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; using System.IO; public class X509store2 { public static void Main (string[] args) { //Create new X509 store called teststore from the local certificate store. X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); store.Open (OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2 (); //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection (); collection.Add (certificate2); collection.Add (certificate5); //Add certificates to the store. store.Add (certificate1); store.AddRange (collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("Store name: {0}", store.Name); Console.WriteLine ("Store location: {0}", store.Location); foreach (X509Certificate2 x509 in storecollection) { Console.WriteLine("certificate name: {0}",x509.Subject); } //Remove a certificate. store.Remove (certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); foreach (X509Certificate2 x509 in storecollection2) { Console.WriteLine ("certificate name: {0}", x509.Subject); } //Remove a range of certificates. store.RemoveRange (collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.Certificates; Console.WriteLine ("{1}Store name: {0}", store.Name, Environment.NewLine); if (storecollection3.Count == 0) { Console.WriteLine ("Store contains no certificates."); } else { foreach (X509Certificate2 x509 in storecollection3) { Console.WriteLine ("certificate name: {0}", x509.Subject); } } //Close the store. store.Close (); } }
#using <System.dll> #using <System.Security.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::X509Certificates; using namespace System::IO; int main() { //Create new X509 store called teststore from the local certificate store. X509Store ^ store = gcnew X509Store( "teststore",StoreLocation::CurrentUser ); store->Open( OpenFlags::ReadWrite ); X509Certificate2 ^ certificate = gcnew X509Certificate2; //Create certificates from certificate files. //You must put in a valid path to three certificates in the following constructors. X509Certificate2 ^ certificate1 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate2 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); X509Certificate2 ^ certificate5 = gcnew X509Certificate2( "c:\\mycerts\\*****.cer" ); //Create a collection and add two of the certificates. X509Certificate2Collection ^ collection = gcnew X509Certificate2Collection; collection->Add( certificate2 ); collection->Add( certificate5 ); //Add certificates to the store. store->Add( certificate1 ); store->AddRange( collection ); X509Certificate2Collection ^ storecollection = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "Store name: {0}", store->Name ); Console::WriteLine( "Store location: {0}", store->Location ); System::Collections::IEnumerator^ myEnum = storecollection->GetEnumerator(); while ( myEnum->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a certificate. store->Remove( certificate1 ); X509Certificate2Collection ^ storecollection2 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); System::Collections::IEnumerator^ myEnum1 = storecollection2->GetEnumerator(); while ( myEnum1->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum1->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } //Remove a range of certificates. store->RemoveRange( collection ); X509Certificate2Collection ^ storecollection3 = dynamic_cast<X509Certificate2Collection^>(store->Certificates); Console::WriteLine( "{1}Store name: {0}", store->Name, Environment::NewLine ); if ( storecollection3->Count == 0 ) { Console::WriteLine( "Store contains no certificates." ); } else { System::Collections::IEnumerator^ myEnum2 = storecollection3->GetEnumerator(); while ( myEnum2->MoveNext() ) { X509Certificate2 ^ x509 = safe_cast<X509Certificate2 ^>(myEnum2->Current); Console::WriteLine( "certificate name: {0}", x509->Subject ); } } //Close the store. store->Close(); }
import System.*; import System.Security.Cryptography.*; import System.Security.Cryptography.X509Certificates.*; import System.IO.*; public class X509store2 { public static void main(String[] args) { // Create new X509 store called teststore from the local // certificate store. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); X509Certificate2 certificate = new X509Certificate2(); //Create certificates from certificate files. // You must put in a valid path to three certificates in the following // constructors. X509Certificate2 certificate1 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate2 = new X509Certificate2( "c:\\mycerts\\*****.cer"); X509Certificate2 certificate5 = new X509Certificate2( "c:\\mycerts\\*****.cer"); //Create a collection and add two of the certificates. X509Certificate2Collection collection = new X509Certificate2Collection(); collection.Add(certificate2); collection.Add(certificate5); //Add certificates to the store. store.Add(certificate1); store.AddRange(collection); X509Certificate2Collection storecollection = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("Store name: {0}", store.get_Name()); Console.WriteLine("Store location: {0}", store.get_Location()); for (int iCtr = 0; iCtr < storecollection.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a certificate. store.Remove(certificate1); X509Certificate2Collection storecollection2 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); for (int iCtr = 0; iCtr < storecollection2.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection2.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } //Remove a range of certificates. store.RemoveRange(collection); X509Certificate2Collection storecollection3 = (X509Certificate2Collection)store.get_Certificates(); Console.WriteLine("{1}Store name: {0}", store.get_Name(), Environment.get_NewLine()); if (storecollection3.get_Count() == 0) { Console.WriteLine("Store contains no certificates."); } else { for (int iCtr = 0; iCtr < storecollection3.get_Count(); iCtr++) { X509Certificate2 x509 = storecollection3.get_Item(iCtr); Console.WriteLine("certificate name: {0}", x509.get_Subject()); } } //Close the store. store.Close(); } //main } //X509store2


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


X509Store コンストラクタ

名前 | 説明 |
---|---|
X509Store () | 現在のユーザー ストアの個人用証明書を使用して、X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (IntPtr) | HCERTSTORE ストアを識別する Intptr ハンドルを使用して X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (StoreLocation) | StoreLocation 値を指定して、X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (StoreName) | StoreName 値を指定して、X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (String) | ストア名を指定して、X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (StoreName, StoreLocation) | 指定した StoreName 値および StoreLocation 値を使用して、X509Store クラスの新しいインスタンスを初期化します。 |
X509Store (String, StoreLocation) | StoreName 列挙体の値と StoreLocation 列挙体の値を表す文字列を使用して、X509Store クラスの新しいインスタンスを初期化します。 |

X509Store プロパティ

名前 | 説明 | |
---|---|---|
![]() | Certificates | X.509 証明書ストア内にある証明書のコレクションを返します。 |
![]() | Location | X.509 証明書ストアの場所を取得します。 |
![]() | Name | X.509 証明書ストアの名前を取得します。 |
![]() | StoreHandle | HCERTSTORE ストアを識別する IntPtr ハンドルを取得します。 |

X509Store メソッド

名前 | 説明 | |
---|---|---|
![]() | Add | 証明書を X.509 証明書ストアに追加します。 |
![]() | AddRange | X.509 証明書ストアに証明書のコレクションを追加します。 |
![]() | Close | X.509 証明書ストアを閉じます。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | Open | OpenFlags フラグの設定に応じて、X.509 証明書ストアを開くか、または新しいストアを作成します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | Remove | X.509 証明書ストアから証明書を削除します。 |
![]() | RemoveRange | X.509 証明書ストアから、ある一定の範囲の証明書を削除します。 |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

X509Store メンバ
証明書を永続化して管理する物理ストアである X.509 ストアを表します。このクラスは継承できません。
X509Store データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | Certificates | X.509 証明書ストア内にある証明書のコレクションを返します。 |
![]() | Location | X.509 証明書ストアの場所を取得します。 |
![]() | Name | X.509 証明書ストアの名前を取得します。 |
![]() | StoreHandle | HCERTSTORE ストアを識別する IntPtr ハンドルを取得します。 |

名前 | 説明 | |
---|---|---|
![]() | Add | 証明書を X.509 証明書ストアに追加します。 |
![]() | AddRange | X.509 証明書ストアに証明書のコレクションを追加します。 |
![]() | Close | X.509 証明書ストアを閉じます。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | Open | OpenFlags フラグの設定に応じて、X.509 証明書ストアを開くか、または新しいストアを作成します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | Remove | X.509 証明書ストアから証明書を削除します。 |
![]() | RemoveRange | X.509 証明書ストアから、ある一定の範囲の証明書を削除します。 |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- X509Storeのページへのリンク