英語で読む

次の方法で共有


StoreName 列挙型

定義

開く X.509 証明書ストアの名前を指定します。

C#
public enum StoreName
継承
StoreName

フィールド

名前 説明
AddressBook 1

他のユーザーの X.509 証明書ストア

AuthRoot 2

サードパーティ証明機関 (CA: Certificate Authority) の X.509 証明書ストア

CertificateAuthority 3

中間証明機関 (CA) の X.509 証明書ストア

Disallowed 4

失効した証明書の X.509 証明書ストア

My 5

個人用証明書の X.509 証明書ストア

Root 6

信頼されたルート証明機関 (CA) の X.509 証明書ストア

TrustedPeople 7

直接信頼されたユーザーやリソースの X.509 証明書ストア

TrustedPublisher 8

直接信頼された発行者の X.509 証明書ストア

次のコード例では、X.509 証明書ストアを開き、証明書を追加および削除してから、ストアを閉じます。 ローカル ストアに追加する証明書とローカル ストアから削除する証明書が 3 つあるものとします。

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

public class X509store2
{
    public static void Main(string[] args)
    {
        //Opens the personal certificates store.
        X509Store store = new X509Store(StoreName.My);
        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();
    }
}

注釈

この列挙は、X.509 ストア名を指定します。これには、含まれる証明書の種類も含まれます。 たとえば、My には個人用証明書が含まれますが、Disallowed には失効した証明書のみが含まれます。

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1