Module java.base
Package javax.net.ssl

Interface X509TrustManager

所有超级接口:
TrustManager
所有已知实现类:
X509ExtendedTrustManager

public interface X509TrustManager extends TrustManager
此接口的实例管理可用于验证安全套接字的远程端的X509证书。决策可能基于受信任的证书颁发机构、证书吊销列表、在线状态检查或其他手段。
自版本:
1.4
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    给定对等方提供的部分或完整证书链,构建到受信任根的证书路径,并根据认证类型验证并返回是否可验证并受信任用于基于认证类型的客户端SSL认证。
    void
    给定对等方提供的部分或完整证书链,构建到受信任根的证书路径,并根据认证类型验证并返回是否可验证并受信任用于基于认证类型的服务器SSL认证。
    返回一个用于验证对等方的受信任证书颁发机构证书数组。
  • Method Details

    • checkClientTrusted

      void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException
      给定对等方提供的部分或完整证书链,构建到受信任根的证书路径,并根据认证类型验证并返回是否可验证并受信任用于基于认证类型的客户端SSL认证。

      认证类型由实际使用的证书确定。例如,如果使用RSAPublicKey,则authType应为"RSA"。检查区分大小写。

      参数:
      chain - 对等方证书链
      authType - 基于客户端证书的认证类型
      抛出:
      IllegalArgumentException - 如果对chain参数传递了null或零长度链,或者对authType参数传递了null或零长度字符串
      CertificateException - 如果证书链未被此TrustManager信任。
    • checkServerTrusted

      void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException
      给定对等方提供的部分或完整证书链,构建到受信任根的证书路径,并根据认证类型验证并返回是否可验证并受信任用于基于认证类型的服务器SSL认证。

      认证类型是密码套件的密钥交换算法部分,表示为字符串,例如"RSA","DHE_DSS"。注意:对于一些可导出的密码套件,密钥交换算法在握手期间在运行时确定。例如,对于TLS_RSA_EXPORT_WITH_RC4_40_MD5,当使用临时RSA密钥进行密钥交换时,authType应为RSA_EXPORT,当使用服务器证书中的密钥时,应为RSA。检查区分大小写。

      参数:
      chain - 对等方证书链
      authType - 使用的密钥交换算法
      抛出:
      IllegalArgumentException - 如果对chain参数传递了null或零长度链,或者对authType参数传递了null或零长度字符串
      CertificateException - 如果证书链未被此TrustManager信任。
    • getAcceptedIssuers

      X509Certificate[] getAcceptedIssuers()
      返回一个用于验证对等方的受信任证书颁发机构证书数组。
      返回:
      一个非空(可能为空)的可接受CA颁发者证书数组。