我需要使用kafkaAmdinClient
对象创建java.security.keystore
SSL对象。
也就是说,我必须作为Clob从数据库读取密钥库和truststire文件,并在java.security.keystore
对象中获取密钥库,然后使用它来创建Admin客户端对象。
我能够使用properties对象创建AdminClient
对象:
props.put(SslConfigs.SSL_TRUSTSTORE_PASSWORD_CONFIG, trustStorePwd);
props.put(SslConfigs.SSL_KEYSTORE_LOCATION_CONFIG, "/ngs/app/bolt_components/kafka_ssl/RN_BC_YELLOWBIRD/client.truststore.jks");
props.put(SslConfigs.SSL_KEYSTORE_PASSWORD_CONFIG, keyStorePwd);
kafkaAdminClient = AdminClient.create(props);
但是根据requiremtn,我不应该指定密钥库文件位置。而是指定密钥库对象。
KeyStoreDto kDto=KeystoreManager.getKafkaKeyStoreDto(kafkaDto.getKEYSTORE_ID());
java.security.KeyStore keyStore = kDto.getKeyStore();
java.security.KeyStore trustStore = kDto.getTrustStore();
String keyStorePwd=kDto.getKeyStorePassword();
String trustStorePwd=kDto.getTrustStorePassword();
为此,我必须使用keyStore
和trustStore
。
有人可以帮我吗?