CERT_RDN_ATTR 構造体 (wincrypt.h)
CERT_RDN_ATTR構造体には、相対識別名 (RDN) の 1 つの属性が含まれています。 RDN 全体は、 CERT_RDN_ATTR 構造体の配列を含む CERT_RDN 構造体で表されます。
構文
typedef struct _CERT_RDN_ATTR {
LPSTR pszObjId;
DWORD dwValueType;
CERT_RDN_VALUE_BLOB Value;
} CERT_RDN_ATTR, *PCERT_RDN_ATTR;
メンバー
pszObjId
この構造体で定義されている属性の型のオブジェクト識別子 (OID)。 このメンバーには、次のいずれかの OID を指定できます。
値 |
意味 |
- szOID_AUTHORITY_REVOCATION_LIST
|
セキュリティ属性。
|
- szOID_BUSINESS_CATEGORY
|
大文字と小文字を区別しない文字列。
説明属性。
|
- szOID_CA_CERTIFICATE
|
セキュリティ属性。
|
- szOID_CERTIFICATE_REVOCATION_LIST
|
セキュリティ属性。
|
- szOID_COMMON_NAME
|
大文字と小文字を区別しない文字列。
ラベル付け属性。
|
- szOID_COUNTRY_NAME
|
2 文字の印刷可能な文字列。
地理的属性。
|
- szOID_CROSS_CERTIFICATE_PAIR
|
セキュリティ属性。
|
- szOID_DESCRIPTION
|
大文字と小文字を区別しない文字列。 説明属性。
|
- szOID_DESTINATION_INDICATOR
|
印刷可能な文字列。
通信アドレス指定属性。
|
- szOID_DEVICE_SERIAL_NUMBER
|
印刷可能な文字列。
ラベル付け属性。
|
- szOID_DOMAIN_COMPONENT
|
IA5 文字列。 "com" などの DNS 名コンポーネント。
|
- szOID_FACSIMILE_TELEPHONE_NUMBER
|
通信アドレス指定属性。
|
- szOID_GIVEN_NAME
|
大文字と小文字を区別しない文字列。
Name 属性。
|
- szOID_INITIALS
|
大文字と小文字を区別しない文字列。 Name 属性。
|
- szOID_INTERNATIONAL_ISDN_NUMBER
|
数値文字列。
通信アドレス指定属性。
|
- szOID_LOCALITY_NAME
|
大文字と小文字を区別しない文字列。
地理的属性。
|
- szOID_MEMBER
|
リレーショナル アプリケーション属性。
|
- szOID_ORGANIZATION_NAME
|
大文字と小文字を区別しない文字列。
組織属性。
|
- szOID_ORGANIZATIONAL_UNIT_NAME
|
大文字と小文字を区別しない文字列。
組織属性。
|
- szOID_OWNER
|
リレーショナル アプリケーション属性。
|
- szOID_PHYSICAL_DELIVERY_OFFICE_NAME
|
大文字と小文字を区別しない文字列。
住所属性を指定します。
|
- szOID_PKCS_12_FRIENDLY_NAME_ATTR
|
PKCS #12 属性。
|
- szOID_PKCS_12_LOCAL_KEY_ID
|
PKCS #12 属性。
|
- szOID_POST_OFFICE_BOX
|
大文字と小文字を区別しない文字列。
住所属性を指定します。
|
- szOID_POSTAL_ADDRESS
|
印刷可能な文字列。
住所属性を指定します。
|
- szOID_POSTAL_CODE
|
大文字と小文字を区別しない文字列。
住所属性を指定します。
|
- szOID_PREFERRED_DELIVERY_METHOD
|
Preference 属性。
|
- szOID_PRESENTATION_ADDRESS
|
OSI アプリケーション属性。
|
- szOID_REGISTERED_ADDRESS
|
通信アドレス指定属性。
|
- szOID_ROLE_OCCUPANT
|
リレーショナル アプリケーション属性。
|
- szOID_RSA_emailAddr
|
IA5 文字列。
Email属性。
|
- szOID_SEARCH_GUIDE
|
説明属性。
|
- szOID_SEE_ALSO
|
リレーショナル アプリケーション属性。
|
- szOID_STATE_OR_PROVINCE_NAME
|
大文字と小文字を区別しない文字列。
地理的属性。
|
- szOID_STREET_ADDRESS
|
大文字と小文字を区別しない文字列。
地理的属性。
|
- szOID_SUPPORTED_APPLICATION_CONTEXT
|
OSI アプリケーション属性。
|
- szOID_SUR_NAME
|
大文字と小文字を区別しない文字列。
ラベル付け属性。
|
- szOID_TELEPHONE_NUMBER
|
通信アドレス指定属性。
|
- szOID_TELETEXT_TERMINAL_IDENTIFIER
|
通信アドレス指定属性。
|
- szOID_TELEX_NUMBER
|
通信アドレス指定属性。
|
- szOID_TITLE
|
大文字と小文字を区別しない文字列。
組織属性。
|
- szOID_USER_CERTIFICATE
|
セキュリティ属性。
|
- szOID_USER_PASSWORD
|
セキュリティ属性。
|
- szOID_X21_ADDRESS
|
数値文字列。
通信アドレス指定属性。
|
dwValueType
Value メンバーの解釈を示します。
このメンバーには、次のいずれかの値を指定できます。
値 |
意味 |
- CERT_RDN_ANY_TYPE
|
pszObjId メンバーは、想定される型と長さを決定します。
|
- CERT_RDN_BMP_STRING
|
Unicode 文字 (16 ビット) の配列。
|
- CERT_RDN_ENCODED_BLOB
|
エンコードされたデータ BLOB。
|
- CERT_RDN_GENERAL_STRING
|
現在は使用されていません。
|
- CERT_RDN_GRAPHIC_STRING
|
現在は使用されていません。
|
- CERT_RDN_IA5_STRING
|
IA5 (ASCII) 文字の任意の文字列。
|
- CERT_RDN_INT4_STRING
|
INT4 要素 (32 ビット) の配列。
|
- CERT_RDN_ISO646_STRING
|
128 文字セット (8 ビット)。
|
- CERT_RDN_NUMERIC_STRING
|
0 ~ 9 の文字とスペース文字 (8 ビット) のみ。
|
- CERT_RDN_OCTET_STRING
|
オクテット (8 ビット) の任意の文字列。
|
- CERT_RDN_PRINTABLE_STRING
|
印刷可能な文字 (8 ビット) の任意の文字列。
|
- CERT_RDN_T61_STRING
|
T.61 文字 (8 ビット) の任意の文字列。
|
- CERT_RDN_TELETEX_STRING
|
T.61 文字 (8 ビット) の任意の文字列 |
- CERT_RDN_UNICODE_STRING
|
Unicode 文字 (16 ビット) の配列。
|
- CERT_RDN_UNIVERSAL_STRING
|
INT4 要素 (32 ビット) の配列。
|
- CERT_RDN_UTF8_STRING
|
1、2、または 3 の 8 ビット文字のシーケンスとしてワイヤ上でエンコードされた 16 ビット Unicode 文字 UTF8 の配列。
|
- CERT_RDN_VIDEOTEX_STRING
|
ビデオテキスト文字の任意の文字列。
|
- CERT_RDN_VISIBLE_STRING
|
95 文字セット (8 ビット)。
|
次のフラグは、ビットごとの OR 操作を使用して dwValueType メンバーに結合できます。
値 |
意味 |
- CERT_RDN_DISABLE_CHECK_TYPE_FLAG
|
エンコードの場合。 設定すると、文字は値型に対して有効かどうかを判断するためにチェックされません。
|
- CERT_RDN_DISABLE_IE4_UTF8_FLAG
|
デコード用。 既定では、 CERT_RDN_T61_STRING エンコードされた値は、最初は UTF8 としてデコードされます。 UTF8 デコードが失敗した場合、値は 8 ビット文字としてデコードされます。 このフラグを設定すると、UTF8 としてデコードする最初の試行がスキップされ、値が 8 ビット文字としてデコードされます。
|
- CERT_RDN_ENABLE_T61_UNICODE_FLAG
|
エンコードの場合。 設定すると、すべての Unicode 文字が <= 0xFFの場合、CERT_RDN_UNICODE_STRING値ではなくCERT_RDN_T61_STRING値が選択されます。
|
- CERT_RDN_ENABLE_UTF8_UNICODE_FLAG
|
エンコードの場合。 設定すると、文字列はCERT_RDN_UNICODE_STRING値ではなくCERT_RDN_UTF8_STRING値でエンコードされます。
|
- CERT_RDN_FORCE_UTF8_UNICODE_FLAG
|
エンコードの場合。 設定すると、文字列は DirectoryString 型の値ではなく 、CERT_RDN_UTF8_STRING 値 CERT_RDN_PRINTABLE_STRING エンコードされます。 さらに、 CERT_RDN_ENABLE_UTF8_UNICODE_FLAG が有効になっています。
Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。
|
- CERT_RDN_ENABLE_PUNYCODE_FLAG
|
エンコードの場合。 文字列に電子メール RDN が含まれ、電子メール アドレスが Punycode でエンコードされている場合、結果の電子メール アドレスは IA5String としてエンコードされます。 ホスト名の Punycode エンコードは、ラベルごとに実行されます。
デコード用。 名前に電子メール RDN が含まれ、メール アドレスのローカル部分またはホスト名の部分に Punycode でエンコードされた IA5String が含まれている場合、RDN 文字列値は Unicode と同等の値に変換されます。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このフラグはサポートされていません。
|
Value
属性値を含む CERT_RDN_VALUE_BLOB 。 Value の cbData メンバーは、pbData メンバーの長さ (バイト単位) です。 pbData 文字列内の要素の数ではありません。
たとえば、 DWORD の長さは 32 ビットまたは 4 バイトです。 pbData が DWORD 配列の場合、cbData は配列内の DWORD 要素の数の 4 倍になります。 SHORT は 16 ビットまたは 2 バイトの長さです。 pbData が SHORT 要素の配列である場合、cbData は配列の長さの 2 倍である必要があります。
Value の pbData メンバーには、8 ビットまたは 16 ビット文字の null で終わる配列、または要素の固定長配列を指定できます。 dwValueType が CERT_RDN_ENCODED_BLOB に設定されている場合、pbData はエンコードされます。
要件
要件 |
値 |
サポートされている最小のクライアント |
Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー |
Windows Server 2003 (デスクトップ アプリのみ) |
Header |
wincrypt.h |
こちらもご覧ください
CERT_RDN
CRYPT_INTEGER_BLOB
CertIsRDNAttrsInCertificateName