X500DistinguishedName Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar det unika namnet på ett X509-certifikat. Det går inte att ärva den här klassen.
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
- Arv
Exempel
I följande kodexempel visas hur du X500DistinguishedName använder klassen.
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
Kommentarer
Den här klassen är som ett tillägg till SubjectName egenskapen eller IssuerName , som är namnet på den person eller entitet som certifikatet utfärdas till. X.500 är en internationell standard för distribuerade katalogtjänster. Det unika namnet använder följande format:
[X500:/C=CountryCode/O=Organization/OU=OrganizationUnit/CN=CommonName]
Följande fältlängdsgränser gäller:
| Fält | Längdgräns |
|---|---|
| Landskod | 2 tecken |
| Organization | Upp till 64 tecken |
| OrganizationUnit | Upp till 32 tecken |
| Allmänt Namn | Upp till 64 tecken |
Följande riktlinjer gäller:
Fältvärden kan vara versaler eller gemener.
Avgränsare är snedstreck (/) och måste visas före det första värdet och mellan efterföljande värden.
Avgränsare kan följas av ett blanksteg.
Följande är ett exempel på ett korrekt formaterat namn: [X500:/ C=US/ O=Microsoft/ OU=WGA/ CN=TedSt]
Konstruktorer
| Name | Description |
|---|---|
| X500DistinguishedName(AsnEncodedData) |
Initierar en ny instans av X500DistinguishedName klassen med det angivna AsnEncodedData objektet. |
| X500DistinguishedName(Byte[]) |
Initierar en ny instans av klassen med hjälp av X500DistinguishedName information från den angivna bytematrisen. |
| X500DistinguishedName(ReadOnlySpan<Byte>) |
Initierar en ny instans av klassen med hjälp av X500DistinguishedName information från angivna data. |
| X500DistinguishedName(String, X500DistinguishedNameFlags) |
Initierar en ny instans av X500DistinguishedName klassen med den angivna strängen och X500DistinguishedNameFlags flaggan. |
| X500DistinguishedName(String) |
Initierar en ny instans av klassen med hjälp av X500DistinguishedName information från den angivna strängen. |
| X500DistinguishedName(X500DistinguishedName) |
Initierar en ny instans av X500DistinguishedName klassen med det angivna X500DistinguishedName objektet. |
Egenskaper
| Name | Description |
|---|---|
| Name |
Hämtar det kommaavgränsade unika namnet från ett X500-certifikat. |
| Oid |
Hämtar eller anger Oid värdet för ett AsnEncodedData objekt. (Ärvd från AsnEncodedData) |
| RawData |
Hämtar eller anger abstrakt syntax notation one (ASN.1)-kodade data som representeras i en bytematris. (Ärvd från AsnEncodedData) |
Metoder
| Name | Description |
|---|---|
| CopyFrom(AsnEncodedData) |
Kopierar information från ett AsnEncodedData objekt. (Ärvd från AsnEncodedData) |
| Decode(X500DistinguishedNameFlags) |
Avkodar ett unikt namn med de egenskaper som anges av parametern |
| EnumerateRelativeDistinguishedNames(Boolean) |
Itererar över Värdena för RelativeDistinguishedName i det här unika namnvärdet. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| Format(Boolean) |
Returnerar en formaterad version av ett unikt X500-namn för utskrift eller utdata till ett textfönster eller till en konsol. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |