英語で読む

次の方法で共有


X500DistinguishedNameFlags 列挙型

定義

X.500 の識別名の特性を指定します。

この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。

C#
[System.Flags]
public enum X500DistinguishedNameFlags
継承
X500DistinguishedNameFlags
属性

フィールド

名前 説明
DoNotUsePlusSign 32

識別名で正符号 (+) が使用されていません。

DoNotUseQuotes 64

識別名で引用符が使用されていません。

ForceUTF8Encoding 16384

強制的に、識別名が印刷可能な Unicode 文字列ではなく、UTF-8 文字列を使用して、特定の X.500 キーをエンコードするようにします。 影響を受ける X.500 キーの詳細と一覧については、「X500NameFlags enumeration (X500NameFlags 列挙体)」をご覧ください。

None 0

識別名に特殊属性がありません。

Reversed 1

識別名は予約されています。

UseCommas 128

識別名でコンマが使用されています。

UseNewLines 256

識別名で改行文字が使用されています。

UseSemicolons 16

識別名でセミコロン (;) が使用されています。

UseT61Encoding 8192

識別名に T61 エンコーディングが使用されています。

UseUTF8Encoding 4096

識別名に、Unicode 文字エンコーディングではなく UTF8 エンコーディングが使用されています。

次のコード例は、 列挙体を使用する方法を X500DistinguishedNameFlags 示しています。

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

class X500Sample
{
    static void Main()
    {
        try
        {
            X509Store store = new("MY", StoreLocation.CurrentUser);
            store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
            X509Certificate2Collection collection = store.Certificates;
            X509Certificate2Collection fcollection = 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: {scollection.Count}{Environment.NewLine}");
            foreach (X509Certificate2 x509 in scollection)
            {
                X500DistinguishedName dname = new(
                    x509.SubjectName.Name,
                    X500DistinguishedNameFlags.Reversed | X500DistinguishedNameFlags.UseSemicolons
                    );
                Console.WriteLine("X500DistinguishedName: {0}{1}", dname.Name, Environment.NewLine);
                x509.Reset();
            }
            store.Close();
        }
        catch (CryptographicException)
        {
            Console.WriteLine("Information could not be written out for this certificate.");
        }
    }
}

注釈

この列挙は、 クラスと共 X500DistinguishedName に使用され、識別名に含まれる特殊文字を示します。

この列挙では、複数の値が相互に排他的です。これらの値の 1 つだけを使用して、X.500 識別名の特殊な特性を定義します。 たとえば、および UseSemicolons のいずれかのUseCommasUseNewLines値のみを指定します。 または も UseT61Encoding 指定します UseUTF8Encoding

適用対象

製品 バージョン
.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
.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