iAlternativeName 接口 (certenroll.h)

IX509ExtensionAlternativeNames 对象使用 IAlternativeName 接口的集合来表示 AlternativeNames 扩展的实例。 集合由 IAlternativeNames 接口表示。 以下语法演示扩展的 抽象语法表示法 One (ASN.1) 结构。


----------------------------------------------------------------------
-- AlternativeNames 
-- XCN_OID_SUBJECT_ALT_NAME2 (2.5.29.17)
----------------------------------------------------------------------

AltNames ::= SEQUENCE --#public-- OF GeneralName
GeneralNames ::= AltNames

GeneralName ::= CHOICE 
{
  otherName              [0] IMPLICIT OtherName,
  rfc822Name             [1] IMPLICIT IA5STRING,
  dNSName                [2] IMPLICIT IA5STRING,
  x400Address            [3] IMPLICIT SeqOfAny,       --Not supported
  directoryName          [4] EXPLICIT ANY,    
  ediPartyName           [5] IMPLICIT SeqOfAny,
  uniformResourceLocator [6] IMPLICIT IA5STRING,
  iPAddress              [7] IMPLICIT OCTETSTRING,
  registeredID           [8] IMPLICIT EncodedObjectID --Not supported
}

OtherName ::= SEQUENCE 
{
   type                    EncodedObjectID,
   value                   [0] EXPLICIT NOCOPYANY 
}

可以从 AlternativeNameType 枚举初始化 IAlternativeName 对象。 以下类型可用,但根据指示的不同初始化方法支持它们。

说明 初始化方法
XCN_CERT_ALT_NAME_OTHER_NAME 该名称由对象 标识符 (OID) 和字节数组组成。 InitializeFromOtherName
XCN_CERT_ALT_NAME_RFC822_NAME 名称是电子邮件地址。 InitializeFromString
XCN_CERT_ALT_NAME_DNS_NAME 该名称是域名系统 (DNS) 名称。 InitializeFromString
XCN_CERT_ALT_NAME_DIRECTORY_NAME 该名称是 X.500 目录名称。 InitializeFromRawData
XCN_CERT_ALT_NAME_URL 名称为 URL。 InitializeFromString
XCN_CERT_ALT_NAME_IP_ADDRESS 该名称是 Internet 协议 (IP) 地址。 InitializeFromRawData
XCN_CERT_ALT_NAME_REGISTERED_ID 名称是已注册的 OID。 InitializeFromString
XCN_CERT_ALT_NAME_GUID 名称为 GUID。 InitializeFromRawData
XCN_CERT_ALT_NAME_USER_PRINCIPLE_NAME 该名称是 UPN) (用户主体名称 InitializeFromString

继承

IAlternativeName 接口继承自 IDispatch 接口。 IAlternativeName 还包含以下类型的成员:

方法

IAlternativeName 接口包含以下方法。

 
IAlternativeName::get_ObjectId

检索与名称关联的对象标识符 (OID) (如果有)。
IAlternativeName::get_RawData

检索包含名称的可辨别编码规则 (DER) 编码的字节数组。
IAlternativeName::get_StrValue

检索包含电子邮件地址、域名系统 (DNS) 名称、URL、OID) (注册对象标识符或 UPN) (用户主体名称的字符串。
IAlternativeName::get_Type

检索备用名称类型。
IAlternativeName::InitializeFromOtherName

从对象标识符 (OID) 初始化 对象,并将关联的原始数据 (字节数组) 。
IAlternativeName::InitializeFromRawData

从数字签名算法 (DSA) GUID、X.500 目录名称或包含在 可辨别编码规则 (DER) 编码字节数组中的 Internet 协议 (IP) 地址初始化 对象。
IAlternativeName::InitializeFromString

从包含电子邮件地址、域名系统 (DNS) 名称、URL、OID) 注册对象标识符 (或用户主体名称 (UPN) 的字符串初始化 对象。

要求

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

另请参阅

CertEnroll 接口

IAlternativeNames

IDispatch

IX509ExtensionAlternativeNames