You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2020/05/16 19:25:58 UTC
[qpid-jms-amqp-0-x] 07/07: QPID-8441: [JMS AMQP 0-x] Add connection
options to override keystore and truststore types
This is an automated email from the ASF dual-hosted git repository.
orudyy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-jms-amqp-0-x.git
commit c25b1faa79997983de6652189086a7de7c10ad9a
Author: Alex Rudyy <or...@apache.org>
AuthorDate: Fri May 15 23:56:22 2020 +0100
QPID-8441: [JMS AMQP 0-x] Add connection options to override keystore and truststore types
---
.../java/org/apache/qpid/client/BrokerDetails.java | 28 ++++++++++++++++++++++
.../client/BrokerDetails/BrokerDetailsTest.java | 28 ++++++++++++++++++++++
2 files changed, 56 insertions(+)
diff --git a/client/src/main/java/org/apache/qpid/client/BrokerDetails.java b/client/src/main/java/org/apache/qpid/client/BrokerDetails.java
index 0ce3fd3..c19f023 100644
--- a/client/src/main/java/org/apache/qpid/client/BrokerDetails.java
+++ b/client/src/main/java/org/apache/qpid/client/BrokerDetails.java
@@ -54,8 +54,10 @@ public class BrokerDetails implements Serializable
public static final String OPTIONS_SASL_SERVER_NAME = "sasl_server";
public static final String OPTIONS_TRUST_STORE = "trust_store";
public static final String OPTIONS_TRUST_STORE_PASSWORD = "trust_store_password";
+ public static final String OPTIONS_TRUST_STORE_TYPE = "trust_store_type";
public static final String OPTIONS_KEY_STORE = "key_store";
public static final String OPTIONS_KEY_STORE_PASSWORD = "key_store_password";
+ public static final String OPTIONS_KEY_STORE_TYPE = "key_store_type";
public static final String OPTIONS_SSL_VERIFY_HOSTNAME = "ssl_verify_hostname";
public static final String OPTIONS_SSL_CERT_ALIAS = "ssl_cert_alias";
public static final String OPTIONS_CLIENT_CERT_PRIV_KEY_PATH = "client_cert_priv_key_path";
@@ -65,9 +67,11 @@ public class BrokerDetails implements Serializable
public static final String OPTIONS_ENCRYPTION_TRUST_STORE = "encryption_trust_store";
public static final String OPTIONS_ENCRYPTION_TRUST_STORE_PASSWORD = "encryption_trust_store_password";
+ public static final String OPTIONS_ENCRYPTION_TRUST_STORE_TYPE = "encryption_trust_store_type";
public static final String OPTIONS_ENCRYPTION_REMOTE_TRUST_STORE = "encryption_remote_trust_store";
public static final String OPTIONS_ENCRYPTION_KEY_STORE = "encryption_key_store";
public static final String OPTIONS_ENCRYPTION_KEY_STORE_PASSWORD = "encryption_key_store_password";
+ public static final String OPTIONS_ENCRYPTION_KEY_STORE_TYPE = "encryption_key_store_type";
static final Set<String> PASSWORD_YIELDING_OPTIONS =
Collections.unmodifiableSet(new HashSet<>(Arrays.asList(
@@ -488,6 +492,12 @@ public class BrokerDetails implements Serializable
getProperty(BrokerDetails.OPTIONS_TRUST_STORE_PASSWORD));
}
+ if (getProperty(BrokerDetails.OPTIONS_TRUST_STORE_TYPE) != null)
+ {
+ conSettings.setTrustStoreType(
+ getProperty(BrokerDetails.OPTIONS_TRUST_STORE_TYPE));
+ }
+
if (getProperty(BrokerDetails.OPTIONS_KEY_STORE) != null)
{
conSettings.setKeyStorePath(
@@ -500,6 +510,12 @@ public class BrokerDetails implements Serializable
getProperty(BrokerDetails.OPTIONS_KEY_STORE_PASSWORD));
}
+ if (getProperty(BrokerDetails.OPTIONS_KEY_STORE_TYPE) != null)
+ {
+ conSettings.setKeyStoreType(
+ getProperty(BrokerDetails.OPTIONS_KEY_STORE_TYPE));
+ }
+
if (getProperty(BrokerDetails.OPTIONS_SSL_CERT_ALIAS) != null)
{
conSettings.setCertAlias(
@@ -550,6 +566,11 @@ public class BrokerDetails implements Serializable
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_PASSWORD));
}
+ if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_TYPE) != null)
+ {
+ conSettings.setEncryptionKeyStoreType(
+ getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_TYPE));
+ }
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE) != null)
{
@@ -564,6 +585,13 @@ public class BrokerDetails implements Serializable
}
+ if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_TYPE) != null)
+ {
+ conSettings.setEncryptionTrustStoreType(
+ getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_TYPE));
+ }
+
+
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_REMOTE_TRUST_STORE) != null)
{
conSettings.setEncryptionRemoteTrustStoreName(
diff --git a/client/src/test/java/org/apache/qpid/test/unit/client/BrokerDetails/BrokerDetailsTest.java b/client/src/test/java/org/apache/qpid/test/unit/client/BrokerDetails/BrokerDetailsTest.java
index 3d7e63f..4dc94f2 100644
--- a/client/src/test/java/org/apache/qpid/test/unit/client/BrokerDetails/BrokerDetailsTest.java
+++ b/client/src/test/java/org/apache/qpid/test/unit/client/BrokerDetails/BrokerDetailsTest.java
@@ -271,4 +271,32 @@ public class BrokerDetailsTest extends QpidTestCase
ConnectionSettings connectionSettings = broker.buildConnectionSettings();
assertEquals("foo", connectionSettings.getEncryptionTrustStorePassword());
}
+
+ public void testEncryptionKeyStoreType() throws Exception
+ {
+ BrokerDetails broker = new BrokerDetails("tcp://localhost:5672?encryption_key_store_type='foo'");
+ ConnectionSettings connectionSettings = broker.buildConnectionSettings();
+ assertEquals("foo", connectionSettings.getEncryptionKeyStoreType());
+ }
+
+ public void testEncryptionTrustStoreType() throws Exception
+ {
+ BrokerDetails broker = new BrokerDetails("tcp://localhost:5672?encryption_trust_store_type='foo'");
+ ConnectionSettings connectionSettings = broker.buildConnectionSettings();
+ assertEquals("foo", connectionSettings.getEncryptionTrustStoreType());
+ }
+
+ public void testKeyStoreType() throws Exception
+ {
+ BrokerDetails details = new BrokerDetails("tcp://localhost:5672?key_store_type='foo'");
+ ConnectionSettings connectionSettings = details.buildConnectionSettings();
+ assertEquals("foo", connectionSettings.getKeyStoreType());
+ }
+
+ public void testTrustStoreType() throws Exception
+ {
+ BrokerDetails details = new BrokerDetails("tcp://localhost:5672?trust_store_type='foo'");
+ ConnectionSettings connectionSettings = details.buildConnectionSettings();
+ assertEquals("foo", connectionSettings.getTrustStoreType());
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org