设置 subjectalternativenames 标准。x509certificate 必须包含所有或至少某个指定的 subjectalternativenames,这取决于 matchallnames 标志的值(参见 setmatchallsubjectaltnames)。
此方法允许调用方(使用单个方法调用)为 subjectalternativenames 标准指定完整的 subjectalternativenames 集。指定的值会替换 subjectalternativenames 标准以前的值。
names 参数(如果不为 null)是一个 collection,subjectalternativenames 标准中所包括的每个名称都对应该集合中的一项。每一项都是一个 list,该 list 的第一项是一个 integer(0-8,表示名称类型),第二项是一个 string 或 byte 数组(分别为 string 或 asn.1 der 编码形式,表示名称)。相同类型可以有多个名称。如果为此参数提供的值为 null,则不执行 subjectalternativenames 检查。
collection 中的每个 subjectalternativenames 都可以指定为一个 string 或 一个 asn.1 编码的 byte 数组。有关所用格式的更多详细信息,请参阅 addsubjectalternativename(int type, string name) 和 addsubjectalternativename(int type, byte [] name)。
注:对于标识名,应指定为 byte 数组,而不是 string。有关更多信息,请参阅 addsubjectalternativename(int, string) 中的注视。
注意,names 参数可以包含重复的名称(相同的名称和名称类型),但是可能从 getsubjectalternativenames 方法返回的名称 collection 中将这些名称移除。
注意,要对该 collection 执行深层复制以防后续修改。
- 参数:
names - 一个名称 collection(或者为 null)
- 抛出:
ioexception - 如果出现解析错误- 另请参见:
getsubjectalternativenames()