名称属性
名称属性是证书和证书请求的属性,表示有关使用者(即证书所有者或为其请求证书的个人)的数据。 每个名称属性都由属性名称标识。 这些名称不可本地化;但是,名称属性通常对应于证书服务数据库列,可以使用证书颁发机构 MMC 管理单元、命令行工具“certutil -schema”或 IEnumCERTVIEWCOLUMN::GetDisplayName 方法显示数据库列名的本地化版本。
属性名称 (,但别名) 可能具有“Subject.”作为可选前缀。 例如,若要引用使用者的公用名,可以使用“CommonName”或“Subject.CommonName”。
除了名称之外,每个属性都有一些别名,证书服务会将这些别名识别为属性的备用名称。 请注意, (OID) 的对象标识符 是可接受的别名, szOID_* 常量也是可接受的。 这些常量是 Wincrypt.h) 中 (表示 OID 的定义。 例如, szOID_COMMON_NAME 定义为“2.5.4.3”。 因此,可以使用 szOID_* 常量作为别名来代替它们表示的 OID。
属性名称 | 别名 | 数据类型 | 说明 |
---|---|---|---|
“Subject.CommonName” | “CommonName”“CN” "2.5.4.3" szOID_COMMON_NAME |
字符串 (最大 64 个字符) | 对于用户证书,为人员的全名。 对于计算机证书,域名系统中使用的完全限定的 主机名**/路径 (DNS) 查找 (例如 HostName。Example.com**) 。 |
“Subject.Country” | “Country” “C” "2.5.4.6" szOID_COUNTRY_NAME |
字符串 (最大 2 个字符) | 主题的国家或地区。 这是一个 X.500 双字符国家/地区代码, (例如 US for 美国 或 CA for Canada) 。 其中许多双字符代码是在 ISO 3166 标准中定义的。 此外,通过调用 Windows 函数 GetLocaleInfo (,将 LCType 指定为 LOCALE_SISO3166CTRYNAME) ,可以使用当前区域设置的代码。 |
“Subject.DeviceSerialNumber” | “DeviceSerialNumber” “2.5.4.5” szOID_DEVICE_SERIAL_NUMBER |
字符串 (最大 1024 个字符) | 设备序列号。 |
“Subject.DomainComponent” | “DomainComponent” “DC” "0.9.2342.19200300.100.1.25" szOID_DOMAIN_COMPONENT |
字符串 (最大 128 个字符) | 域名系统的组件 (DNS) 名称。 |
“Subject.EMail” | “EMail” “E” "1.2.840.113549.1.9.1" szOID_RSA_emailAddr |
字符串 (最大 128 个字符) | Email地址 (,例如“someone@example.com”) 。 |
“Subject.GivenName” | “GivenName” “G” "2.5.4.42" szOID_GIVEN_NAME |
字符串 (最大 16 个字符) | 使用者的名字。 |
“Subject.Initials” | “首字母缩写”“I” "2.5.4.43" szOID_INITIALS |
字符串 (最大 5 个字符) | 主题的首字母缩写 (可选) 。 |
“Subject.Locality” | “Locality”“L” "2.5.4.7" szOID_LOCALITY_NAME |
字符串 (最大 128 个字符) | 使用者的城市的名称。 |
“Subject.Organization” | “组织”“组织” “O” "2.5.4.10" szOID_ORGANIZATION_NAME |
字符串 (最大 64 个字符) | 使用者组织的法定名称。 |
“Subject.OrgUnit” | “OrgUnit” “OrganizationUnit” “OrganizationUnit” “OU” "2.5.4.11" szOID_ORGANIZATIONAL_UNIT_NAME |
字符串 (最大 64 个字符) | 使用者的子组织或部门的名称。 |
“Subject.State” | “State” “ST” “S” "2.5.4.8" szOID_STATE_OR_PROVINCE_NAME |
字符串 (最大 128 个字符) | 使用者的州或省的全名 (例如加州) 。 |
“Subject.StreetAddress” | “StreetAddress” “Street” "2.5.4.9" szOID_STREET_ADDRESS |
字符串 (最大 30 个字符) | 使用者的街道地址或 PO Box。 |
“Subject.SurName” | “SurName” “SN” "2.5.4.4" szOID_SUR_NAME |
字符串 (最大 40 个字符) | 使用者的姓氏。 |
“Subject.Title” | “Title” “T” "2.5.4.12" szOID_TITLE |
字符串 (最大 64 个字符) | 请求证书的个人的职务 (可选) 。 |
“Subject.UnstructuredAddress” | “UnstructuredAddress”1.2.840.113549.1.9.8” szOID_RSA_unstructAddr |
字符串 (最大 1024 个字符) | 非结构化地址。 |
“Subject.UnstructuredName” | “UnstructuredName” “1.2.840.113549.1.9.2” szOID_RSA_unstructName |
字符串 (最大 1024 个字符) | 非结构化名称。 |
以下属性与主题相关,尽管它们不是名称属性。 策略模块无法直接设置这些属性。
属性 | 数据类型 | 说明 |
---|---|---|
“Request.DistinguishedName” | 字符串 (最大 8192 个字符) | 请求的 相对可分辨名称 ,是请求中主题的文本表示形式。 此表示形式由名称属性组成,例如“CN=MyName,OU=MyOrgUnit,C=US”。 证书服务应用程序通过使用 RawRequest 的 Subject 调用 CertNameToStr ,在调用策略模块之前设置此属性。 |
“Request.RawName” | 二进制 (最大 4096 字节) | 抽象语法表示法 1 (ASN.1) 从请求中提取的二进制主题 BLOB 。 证书服务应用程序在调用策略模块之前设置此属性;其值由 RawRequest 的 Subject 确定。 |
“DistinguishedName” | 字符串 (最大 8192 个字符) | 证书的相对可分辨名称,是证书中使用者的文本表示形式。 此表示形式由名称属性组成,例如“CN=MyName,OU=MyOrgUnit,C=US”。 证书服务应用程序在调用策略模块后,通过使用 RawName 调用 CertNameToStr 来设置此属性。 |
“RawName” | 二进制 (最大 4096 字节) | ASN.1 二进制使用者 BLOB 用于构造证书。 证书服务应用程序在调用策略模块后设置此属性;其值由 SubjectTemplate 指示的特定名称属性的值 (Subject.CommonName 等) 确定。 |
哪些 相对可分辨名称 组件显示在 DistinguishedName 属性中,它们的出现顺序由以下注册表项中包含的“SubjectTemplate”注册表值控制:
HKEY_LOCAL_MACHINE
System
CurrentControlSet
Services
CertSvc
Configuration
CaName
当证书服务分析 属性 名称时,它会忽略空格、连字符 (减号) 和大小写。 例如,“AttributeName1”、“Attribute Name1”和“Attribute-name1”都是等效的。 对于属性值,证书服务会忽略前导空格和尾随空格。
上述所有属性(DistinguishedName、RawName 和 Subject.Country 除外)都支持使用换行符的多值语法。 无法禁用或更改换行符。
相关主题