A.2. 識別名
概要
歴史的に、識別名 (DN) は、X.500 ディレクトリー構造のプライマリーキーとして定義されています。ただし、DN は、他の多くのコンテキストで汎用識別子として使用されるようになりました。Apache CXF では、DN は次のコンテキストで発生します。
- X.509 証明書 - たとえば、証明書内の DN の 1 つは、証明書の所有者 (セキュリティープリンシパル) を識別します。
- LDAP: DN は、LDAP ディレクトリーツリー内のオブジェクトを見つけるために使用されます。
DN の文字列表現
DN は ASN.1 で正式に定義されていますが、DN の UTF-8 文字列表現を定義する LDAP 標準もあります (RFC 2253
を参照)。文字列表現は、DN の構造を記述するための便利な基礎を提供します。
DN の文字列表現は、DER でエンコードされた DN の一意の表現を提供しません。そのため、文字列形式から DER 形式に戻される DN は、常に元の DER エンコーディングを復元する訳ではありません。
DN 文字列の例
以下の文字列は、DN の典型的な例です。
C=US,O=IONA Technologies,OU=Engineering,CN=A. N. Other
DN 文字列の構造
DN 文字列は、以下の基本要素から構築されます。
OID
属性タイプ
DN に表示される可能性のあるさまざまな属性タイプは、理論的には制限がありませんが、実際には、属性タイプのごく一部のみが使用されます。表A.1「一般的に使用される属性のタイプ」 に遭遇する可能性が最も高い属性タイプの選択を示します。
文字列表現 | X.500 属性タイプ |
---|---|
データのサイズ | 同等の OID |
C | countryName |
2 | 2.5.4.6 |
O | organizationName |
1…64 | 2.5.4.10 |
OU | organizationalUnitName |
1…64 | 2.5.4.11 |
CN | commonName |
1…64 | 2.5.4.3 |
ST | stateOrProvinceName |
1…64 | 2.5.4.8 |
L | localityName |
1…64 | 2.5.4.7 |
STREET | streetAddress |
DC | domainComponent |
UID | userid |
AVA
属性値のアサーション (AVA) は属性値を属性型に割り当てます。文字列表現では、以下の構文があります。
<attr-type>=<attr-value>
以下に例を示します。
CN=A. N. Other
または、同等の OID を使用して、文字列表現の属性タイプを特定できます (表A.1「一般的に使用される属性のタイプ」 を参照してください)。以下に例を示します。
2.5.4.3=A. N. Other
RDN
相対識別名 (RDN) は、DN の単一ノード (文字列表現のコンマ間で表示されるビット) を表します。技術的には、RDN には複数の AVA が含まれる場合があります (これは AVA のセットとして正式に定義されます)。ただし、これはほとんど行われていません。文字列表現では、RDN の構文は以下のようになります。
<attr-type>=<attr-value>[+<attr-type>=<attr-value> ...]
以下は、(非常にまれな) 複数値 RDN の冷です。
OU=Eng1+OU=Eng2+OU=Eng3
以下は、単一値 RDN の例です。
OU=Engineering