JavaTM Platform
Standard Ed. 6

javax.net.ssl
接口 X509KeyManager

所有超级接口:
KeyManager
所有已知实现类:
X509ExtendedKeyManager

public interface X509KeyManager
extends KeyManager

此接口的实例管理使用哪一个基于 X509 证书的密钥对来验证本地的安全套接字。

在安全套接字协商期间,实现调用此接口中的方法来完成下面的工作:

注:应该使用 X509ExtendedKeyManager 支持此类。

从以下版本开始:
1.4

方法摘要
 String chooseClientAlias(String[] keyType, Principal[] issuers, Socket socket)
          根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),选择用于验证安全套接字客户端的别名。
 String chooseServerAlias(String keyType, Principal[] issuers, Socket socket)
          根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),选择用于验证安全套接字服务器端的别名。
 X509Certificate[] getCertificateChain(String alias)
          返回与给定别名关联的证书链。
 String[] getClientAliases(String keyType, Principal[] issuers)
          根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),获取用于验证安全套接字客户端的匹配别名。
 PrivateKey getPrivateKey(String alias)
          返回与给定别名关联的密钥。
 String[] getServerAliases(String keyType, Principal[] issuers)
          根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),获取用于验证安全套接字服务器端的别名。
 

方法详细信息

getClientAliases

String[] getClientAliases(String keyType,
                          Principal[] issuers)
根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),获取用于验证安全套接字客户端的匹配别名。

参数:
keyType - 密钥算法类型名称
issuers - 可接受的 CA 发行者主体名称列表,如果使用哪个发行者并不重要,则此参数为 null。
返回:
匹配的别名数组;如果没有匹配的,则返回 null。

chooseClientAlias

String chooseClientAlias(String[] keyType,
                         Principal[] issuers,
                         Socket socket)
根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),选择用于验证安全套接字客户端的别名。

参数:
keyType - 密钥算法类型名称,以首选的密钥类型在前的顺序。
issuers - 可接受的 CA 发行者主体名称列表,如果使用哪个发行者并不重要,则此参数为 null。
socket - 将用于此连接的套接字。此参数可以为 null,这表示实现可以自由选择适用于任何套接字的别名。
返回:
所需密钥的别名;如果没有匹配项,则返回 null。

getServerAliases

String[] getServerAliases(String keyType,
                          Principal[] issuers)
根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),获取用于验证安全套接字服务器端的别名。

参数:
keyType - 密钥算法类型名称
issuers - 可接受的 CA 发行者主体名称列表,如果使用哪个发行者并不重要,则此参数为 null。
返回:
匹配的别名数组;如果没有匹配的,则返回 null。

chooseServerAlias

String chooseServerAlias(String keyType,
                         Principal[] issuers,
                         Socket socket)
根据给定公钥类型和同位体识别的证书发行者授权机构列表(如果有),选择用于验证安全套接字服务器端的别名。

参数:
keyType - 密钥算法类型名称。
issuers - 可接受的 CA 发行者主体名称列表,如果使用哪个发行者并不重要,则此参数为 null。
socket - 将用于此连接的套接字。此参数可以为 null,这表示实现可以自由选择适用于任何套接字的别名。
返回:
所需密钥的别名;如果没有匹配项,则返回 null。

getCertificateChain

X509Certificate[] getCertificateChain(String alias)
返回与给定别名关联的证书链。

参数:
alias - 别名
返回:
证书链(以用户证书在前根证书授权在后的顺序);如果没有找到别名,则返回 null。

getPrivateKey

PrivateKey getPrivateKey(String alias)
返回与给定别名关联的密钥。

参数:
alias - 别名
返回:
请求的密钥;如果不能找到别名,则返回 null。

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策