X500DistinguishedName 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
X509 인증서의 고유 이름을 나타냅니다. 이 클래스는 상속될 수 없습니다.
public ref class X500DistinguishedName sealed : System::Security::Cryptography::AsnEncodedData
public sealed class X500DistinguishedName : System.Security.Cryptography.AsnEncodedData
type X500DistinguishedName = class
inherit AsnEncodedData
Public NotInheritable Class X500DistinguishedName
Inherits AsnEncodedData
- 상속
예제
다음 코드 예제에서는 X500DistinguishedName 클래스를 사용하는 방법을 보여 줍니다.
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.");
}
}
}
Imports System.Security.Cryptography.X509Certificates
Class X500Sample
Shared s_msg As String
Shared Sub Main()
Try
Dim store As New X509Store("MY", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadOnly Or OpenFlags.OpenExistingOnly)
Dim collection As X509Certificate2Collection = store.Certificates
Dim fcollection As X509Certificate2Collection = collection.Find(X509FindType.FindByTimeValid, Date.Now, False)
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
)
s_msg = "Number of certificates: " & scollection.Count & Environment.NewLine
Console.WriteLine(s_msg)
Dim x509 As X509Certificate2
For Each x509 In scollection
Dim dname As New X500DistinguishedName(
x509.SubjectName.Name,
X500DistinguishedNameFlags.Reversed Or X500DistinguishedNameFlags.UseSemicolons
)
s_msg = "X500DistinguishedName: " & dname.Name & Environment.NewLine
Console.WriteLine(s_msg)
x509.Reset()
Next x509
store.Close()
Catch e As Exception
s_msg = "Error: Information could not be written out for this certificate."
Console.WriteLine(s_msg)
End Try
End Sub
End Class
설명
이 클래스의 확장인 비슷합니다는 SubjectName 또는 IssuerName 사람 또는 인증서에 실행 되는 엔터티의 이름인 속성입니다. X.500은 분산된 디렉터리 서비스에 대 한 국제 표준 합니다. 고유 이름에는 다음 형식을 사용 합니다.
[X500:/C=CountryCode/O=Organization/OU=OrganizationUnit/CN=CommonName]
다음 필드 길이 제한이 적용 됩니다.
필드 | 길이 제한 |
---|---|
CountryCode | 2 자 |
조직 | 최대 64 자 |
OrganizationUnit | 최대 32 자 |
CommonName | 최대 64 자 |
다음과 같은 지침이 적용됩니다.
필드 값은 대 / 소문자 구분 수 있습니다.
구분 기호로 슬래시 기호 (/) 되며 첫 번째 값을 이전 및 이후의 각 값 사이 나타나야 합니다.
구분 기호는 공백 올 수 있습니다.
다음은 올바르게 형식이 지정 된 이름의 예: [X500: / C = US / O = Microsoft / OU = WGA / CN = TedSt]
생성자
X500DistinguishedName(AsnEncodedData) |
지정된 AsnEncodedData 개체를 사용하여 X500DistinguishedName 클래스의 새 인스턴스를 초기화합니다. |
X500DistinguishedName(Byte[]) |
지정된 바이트 배열의 정보를 사용하여 X500DistinguishedName 클래스의 새 인스턴스를 초기화합니다. |
X500DistinguishedName(ReadOnlySpan<Byte>) |
제공된 데이터의 정보를 사용하여 X500DistinguishedName 클래스의 새 인스턴스를 초기화합니다. |
X500DistinguishedName(String) |
지정된 문자열의 정보를 사용하여 X500DistinguishedName 클래스의 새 인스턴스를 초기화합니다. |
X500DistinguishedName(String, X500DistinguishedNameFlags) |
지정된 문자열과 X500DistinguishedName 플래그를 사용하여 X500DistinguishedNameFlags 클래스의 새 인스턴스를 초기화합니다. |
X500DistinguishedName(X500DistinguishedName) |
지정된 X500DistinguishedName 개체를 사용하여 X500DistinguishedName 클래스의 새 인스턴스를 초기화합니다. |
속성
Name |
X500 인증서에서 쉼표로 구분된 고유 이름을 가져옵니다. |
Oid |
Oid 개체의 AsnEncodedData 값을 가져오거나 설정합니다. (다음에서 상속됨 AsnEncodedData) |
RawData |
바이트 배열에 표현된 ASN.1(Abstract Syntax Notation One) 인코딩된 데이터를 가져오거나 설정합니다. (다음에서 상속됨 AsnEncodedData) |
메서드
CopyFrom(AsnEncodedData) |
AsnEncodedData 개체에서 정보를 복사합니다. (다음에서 상속됨 AsnEncodedData) |
Decode(X500DistinguishedNameFlags) |
|
EnumerateRelativeDistinguishedNames(Boolean) |
이 고유 이름 값 내의 RelativeDistinguishedName 값을 반복합니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
Format(Boolean) |
인쇄하거나 텍스트 창 또는 콘솔에 출력할 수 있도록 형식이 지정된 버전의 X500 고유 이름을 반환합니다. |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
적용 대상
.NET