public interface PolicyNode
PKIX 证书路径验证算法所定义的、不可变的有效策略树节点。
PKIX 证书路径验证算法的输出是有效策略树,其中包括确定为有效的策略、如何实现该确定,以及遇到的所有策略限定符。此树的深度为 n,其中 n 是已验证的证书路径的长度。
大多数应用程序无需检验有效策略树。它们可以通过设置 PKIXParameters
中与策略相关的参数来获得其策略处理目标。但是,大多数复杂的应用程序都可使用有效策略树,特别是那些处理策略限定符的应用程序。
PKIXCertPathValidatorResult.getPolicyTree
返回有效策略树的根节点。可使用 getChildren
和 getParent
方法遍历该树。可使用 PolicyNode
的其他方法来获取有关特定节点的数据。
并发访问
所有 PolicyNode
对象必须是不可变的和线程安全的。多个线程在单个 PolicyNode
对象(或多个对象)上并发调用此类中所定义的各种方法不会产生坏的影响。此规定适用于此类的所有公共字段和方法,以及由子类添加或重写的所有公共字段和方法。
方法摘要 | |
---|---|
Iterator<? extends PolicyNode> |
getChildren() 返回在此节点的子节点上进行迭代的迭代器。 |
int |
getDepth() 返回有效策略树中此节点的深度。 |
Set<String> |
getExpectedPolicies() 返回预期的策略集,其中的策略将满足下一个要处理证书中此节点的有效策略。 |
PolicyNode |
getParent() 返回此节点的父节点,如果此节点是根节点,则返回 null 。 |
Set<? extends PolicyQualifierInfo> |
getPolicyQualifiers() 返回与此节点所表示的有效策略相关联的策略限定符集。 |
String |
getValidPolicy() 返回此节点所表示的有效策略。 |
boolean |
isCritical() 返回最近处理的证书中其证书策略扩展的关键性指示符。 |
方法详细信息 |
---|
PolicyNode getParent()
null
。
null
Iterator<? extends PolicyNode> getChildren()
Iterator
的 remove 方法来修改此节点的子节点的行为都必须抛出
UnsupportedOperationException
。
int getDepth()
String getValidPolicy()
String
OID,或者是特殊值 "any-policy"。对于根节点,此方法始终返回特殊值 "any-policy"。
Set<? extends PolicyQualifierInfo> getPolicyQualifiers()
PolicyQualifierInfo
Set
。对于根节点,此方法始终返回一个空
Set
。
Set<String> getExpectedPolicies()
String
OID 的
Set
,或者具有单个特殊值 "any-policy" 的不可变
Set
。对于根节点,此方法始终返回具有单个值 "any-policy" 的
Set
。
boolean isCritical()
true
;否则返回
false
。对于根节点,此方法始终返回
false
。