- 封闭类:
KeyStore
KeyStore 对象的描述。
此类的实例封装了实例化和初始化 KeyStore 对象所需的信息。当调用 getKeyStore() 方法时会触发该过程。
这使得将配置与 KeyStore 对象创建分离成为可能,例如,将密码提示延迟到需要时。
- 自从:
- 1.5
- 参见:
-
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述abstract KeyStore返回此对象描述的KeyStore。abstract KeyStore.ProtectionParametergetProtectionParameter(String alias) 返回应该用于获取具有给定别名的Entry的ProtectionParameter。static KeyStore.BuildernewInstance(File file, KeyStore.ProtectionParameter protection) 返回一个新的Builder对象。static KeyStore.BuildernewInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection) 返回一个新的Builder对象。static KeyStore.BuildernewInstance(String type, Provider provider, KeyStore.ProtectionParameter protection) 返回一个新的Builder对象。static KeyStore.BuildernewInstance(KeyStore keyStore, KeyStore.ProtectionParameter protectionParameter) 返回封装给定KeyStore的新Builder。
-
构造方法详细信息
-
建设者
protected Builder()构造一个新的Builder。
-
-
方法详情
-
getKeyStore
返回此对象描述的KeyStore。- 返回:
-
此对象描述的
KeyStore - 抛出:
KeyStoreException- 如果在操作期间发生错误,例如,如果无法实例化或加载KeyStore
-
getProtectionParameter
public abstract KeyStore.ProtectionParameter getProtectionParameter(String alias) throws KeyStoreException - 参数:
alias-KeyStore条目的别名- 返回:
-
应该用于获取具有给定别名的
Entry的ProtectionParameter。 - 抛出:
NullPointerException- 如果别名是nullKeyStoreException- 如果在操作过程中发生错误IllegalStateException- 如果在调用此方法之前未调用getKeyStore方法
-
newInstance
public static KeyStore.Builder newInstance(KeyStore keyStore, KeyStore.ProtectionParameter protectionParameter) 返回封装给定KeyStore的新Builder。返回对象的getKeyStore()方法会返回keyStore,getProtectionParameter()方法会返回protectionParameters。如果现有的
KeyStore对象需要与基于构建器的 API 一起使用,这将很有用。- 参数:
keyStore- 要封装的KeyStoreprotectionParameter-ProtectionParameter用于保护KeyStore条目- 返回:
-
一个新的
Builder对象 - 抛出:
NullPointerException- 如果keyStore或protectionParameter是nullIllegalArgumentException- 如果keyStore尚未初始化
-
newInstance
public static KeyStore.Builder newInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection) 返回一个新的Builder对象。对返回的构建器的
getKeyStore()方法的第一次调用将创建一个type类型的KeyStore并调用其load()方法。inputStream参数是从file构建的。如果protection是一个PasswordProtection,则通过调用getPassword方法获取密码。否则,如果protection是CallbackHandlerProtection,则通过调用 CallbackHandler 获取密码。对
getKeyStore()的后续调用返回与初始调用相同的对象。如果初始调用失败并返回KeyStoreException,后续调用也会抛出KeyStoreException。如果
KeyStore非空,则从provider实例化。否则,将搜索所有已安装的提供程序。调用
getProtectionParameter()将返回一个PasswordProtection对象,其中封装了用于调用load方法的密码。Note
getKeyStore()方法在调用此方法的代码的AccessControlContext中执行。- 参数:
type- 要构造的KeyStore的类型provider- 从中实例化KeyStore的提供程序(或null)file- 包含KeyStore数据的文件protection-ProtectionParameter保护KeyStore数据- 返回:
-
一个新的
Builder对象 - 抛出:
NullPointerException- 如果类型、文件或保护是nullIllegalArgumentException- 如果保护不是 PasswordProtection 或 CallbackHandlerProtection 的实例;或者如果文件不存在或不引用普通文件
-
newInstance
返回一个新的Builder对象。对返回的构建器的
getKeyStore()方法的第一次调用将使用file创建一个KeyStore来检测密钥库类型,然后调用其load()方法。它使用与KeyStore.getInstance(File, LoadStoreParameter)中描述的相同算法来确定密钥库类型。inputStream参数是从file构建的。如果protection是一个PasswordProtection,则通过调用getPassword方法获取密码。否则,如果protection是CallbackHandlerProtection,则通过调用 CallbackHandler 获取密码。对
getKeyStore()的后续调用返回与初始调用相同的对象。如果初始调用失败并返回KeyStoreException,后续调用也会抛出KeyStoreException。调用
getProtectionParameter()将返回一个PasswordProtection对象,其中封装了用于调用load方法的密码。Note
getKeyStore()方法在调用此方法的代码的AccessControlContext中执行。- 参数:
file- 包含KeyStore数据的文件protection-ProtectionParameter保护KeyStore数据- 返回:
-
一个新的
Builder对象 - 抛出:
NullPointerException- 如果文件或保护是nullIllegalArgumentException- 如果保护不是 PasswordProtection 或 CallbackHandlerProtection 的实例;或者如果文件不存在或不引用普通文件- 自从:
- 9
-
newInstance
public static KeyStore.Builder newInstance(String type, Provider provider, KeyStore.ProtectionParameter protection) 返回一个新的Builder对象。每次调用返回的构建器上的
getKeyStore()方法都会返回一个新的KeyStore类型为type的对象。它的load()方法是使用封装protection的LoadStoreParameter调用的。如果
KeyStore非空,则从provider实例化。否则,将搜索所有已安装的提供程序。调用
getProtectionParameter()将返回protection。Note
getKeyStore()方法在调用此方法的代码的AccessControlContext中执行。- 参数:
type- 要构造的KeyStore的类型provider- 从中实例化KeyStore的提供程序(或null)protection-ProtectionParameter保护Keystore- 返回:
-
一个新的
Builder对象 - 抛出:
NullPointerException- 如果类型或保护是null
-