IX509NameValuePair 接口 (certenroll.h)

IX509NameValuePair 接口表示泛型名称-值对。 尽管证书请求和注册过程创建了一些常见的名称-值对,但可以使用此对象指定任何名称和值。 可以从 IX509Enrollment 对象和 IX509CertificateRequestCmc 对象检索 IX509NameValuePairs 集合。 集合不相关。

名称-值对和注册对象:
在 IX509Enrollment 对象向证书颁发机构提交证书请求之前, (CA) ,名称-值集合将编码为格式为 Name1Value1\Name2Value2\\的串联属性字符串。 可以通过调用 NameValuePairs 属性来检索集合。 可以使用 IX509NameValuePairs 对象向集合添加名称/值对。
名称-值对和 CMC 请求对象:
(IX509CertificateRequestCmc) CMC 请求对象包含 TagedAttributeTaggedRequestTagedContentInfo ASN.1 结构的序列。 有关详细信息,请参阅 CMC 属性

TagedAttribute 结构可以包含 RegInfo 属性。 此属性由包含名称/值对集合的字节数组组成。 按以下方式创建字节数组:

  • 每个名称-值字符串都是标准化的。 例如,“%5C”转义将替换为反斜杠 (\\) 字符。
  • 每个名称/值对都使用等号 (=) 进行串联。
  • 所有对都通过使用和号连接在每对之间 (&) 。
  • 结果编码为 UTF-8 字符串。

以下示例演示 CMC 证书的 ASN.1 输出,该证书包含包含单个名称/值对“RequesterName=Domain\TargetUser”的 RegInfo 属性。


...
30 33              ; SEQUENCE (33 Bytes)
   02 01                            ; INTEGER (1 Bytes)
   |  02
   06 08                            ; OBJECT_ID (8 Bytes)
   |  2b 06 01 05 05 07 07 12
   |     ; 1.3.6.1.5.5.7.7.18 Reg Info
   31 24                ; SET (24 Bytes)
      04 22 ; OCTET_STRING (22 Bytes)
      52 65 71 75 65 73 74 65  72 4e 61 6d 65 3d 44 6f  ; RequesterName=Do
      6d 61 69 6e 25 35 43 54  61 72 67 65 74 55 73 65  ; main%5CTargetUse
      72 26                                             ; r& 
...

继承

IX509NameValuePair 接口继承自 IDispatch 接口。 IX509NameValuePair 也有以下类型的成员:

方法

IX509NameValuePair 接口具有这些方法。

 
IX509NameValuePair::get_Name

检索名称-值对的名称部分。
IX509NameValuePair::get_Value

检索名称/值对的值部分。
IX509NameValuePair::Initialize

从包含名称和关联值的字符串初始化 对象。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 certenroll.h

另请参阅

CertEnroll 接口

IDispatch

IX509NameValuePairs