模块  java.base
软件包  java.security

Class DomainLoadStoreParameter

  • 实现的所有接口
    KeyStore.LoadStoreParameter

    public final class DomainLoadStoreParameter
    extends Object
    implements KeyStore.LoadStoreParameter
    配置数据,指定密钥库域中的密钥库。 密钥库域是作为单个逻辑密钥库呈现的密钥库的集合。 KeyStore loadstore操作期间使用配置数据。

    配置数据支持以下语法:

       domain <domainName> [<property> ...] { keystore <keystoreName> [<property> ...] ; ... }; ...  
    其中domainNamekeystoreName是标识符, property是键/值配对。 键和值由'等号'符号分隔,值用双引号括起来。 属性值可以是可打印字符串或冒号分隔的十六进制数字对的二进制字符串。 多值属性表示为逗号分隔的值列表,用方括号括起来。 Arrays.toString(java.lang.Object[])

    为了确保唯一标识密钥库条目,每个条目的别名都以keystoreName为前缀,后跟条目名称分隔符,并且每个条目的keystoreName必须是唯一的keystoreName 存储密钥库时,将省略条目名称前缀。

    属性是上下文相关的:适用于域中所有密钥库的属性位于domain子句中,仅适用于特定密钥库的属性位于该密钥库的子句中。 除非另行指定,否则keystore子句中的属性将覆盖domain子句中具有相同名称的属性。 所有属性名称都不区分大小写。 支持以下属性:

    keystoreType="<type>"
    密钥库类型。
    keystoreURI="<url>"
    密钥库位置。
    keystoreProviderName="<name>"
    密钥库的JCE提供程序的名称。
    keystorePasswordEnv="<environment-variable>"
    存储密钥库密码的环境变量。 或者,可以在Map<String, ProtectionParameter>密码提供给构造方法。
    entryNameSeparator="<separator>"
    密钥库名称前缀和条目名称之间的分隔符。 指定后,它将应用于域中的所有条目。 它的默认值是一个空格。

    例如,包含三个密钥库的简单密钥库域的配置数据如下所示:

      domain app1 {
         keystore app1-truststore
             keystoreURI="file:///app1/etc/truststore.jks";
    
         keystore system-truststore
             keystoreURI="${java.home}/lib/security/cacerts";
    
         keystore app1-keystore
             keystoreType="PKCS12"
             keystoreURI="file:///app1/etc/keystore.p12";
     }; 
    从以下版本开始:
    1.8
    • 构造方法详细信息

      • DomainLoadStoreParameter

        public DomainLoadStoreParameter​(URI configuration,
                                        Map<String,​KeyStore.ProtectionParameter> protectionParams)
        使用用于保护密钥库数据的参数为密钥库域构造DomainLoadStoreParameter。
        参数
        configuration - 域配置数据的标识符。 当需要区分同一位置的多个域配置时,应在java.net.URI片段组件中指定目标域的名称。
        protectionParams - 从密钥库名称到用于保护密钥库数据的参数的映射。 如果java.util.Collections.EMPTY_MAP保护参数或者域配置数据中的属性指定了保护参数,则应使用java.util.Collections.EMPTY_MAP 克隆它以防止后续修改。
        异常
        NullPointerException - 如果 configurationprotectionParamsnull
    • 方法详细信息

      • getConfiguration

        public URI getConfiguration()
        获取域配置数据的标识符。
        结果
        配置数据的标识符
      • getProtectionParams

        public Map<String,​KeyStore.ProtectionParameter> getProtectionParams()
        获取此域中密钥库的密钥库保护参数。
        结果
        一个不可修改的密钥库名称映射到保护参数