Skip to content
This repository was archived by the owner on Sep 16, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/main/java/com/marklogic/rest/util/RestConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import com.marklogic.client.DatabaseClientBuilder;
import com.marklogic.client.DatabaseClientFactory;
import com.marklogic.client.DatabaseClientFactory.SSLHostnameVerifier;
import com.marklogic.client.ext.modulesloader.ssl.SimpleX509TrustManager;
import com.marklogic.client.ext.ssl.SslConfig;
import com.marklogic.client.ext.ssl.SslUtil;
Expand Down Expand Up @@ -114,7 +115,8 @@ public DatabaseClientBuilder newDatabaseClientBuilder() {
.withSSLContext(StringUtils.hasText(sslProtocol) ?
SimpleX509TrustManager.newSSLContext(sslProtocol) :
SimpleX509TrustManager.newSSLContext())
.withTrustManager(new SimpleX509TrustManager());
.withTrustManager(new SimpleX509TrustManager())
.withSSLHostnameVerifier(SSLHostnameVerifier.ANY);
} else {
builder.withSSLProtocol(sslProtocol);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
package com.marklogic.mgmt;

import com.marklogic.client.DatabaseClientFactory;
import com.marklogic.client.DatabaseClientFactory.SSLHostnameVerifier;
import com.marklogic.mgmt.util.SimplePropertySource;
import org.junit.jupiter.api.Test;

Expand Down Expand Up @@ -104,6 +105,19 @@ public void sslProperties() {
assertEquals("PKIX", config.getTrustManagementAlgorithm());
}

@Test
void simpleSsl() {
ManageConfig config = configure(
"mlManageSimpleSsl", "true",
"mlUsername", "admin",
"mlPassword", "admin"
);

DatabaseClientFactory.Bean bean = config.newDatabaseClientBuilder().buildBean();
SSLHostnameVerifier verifier = bean.getSecurityContext().getSSLHostnameVerifier();
assertEquals(SSLHostnameVerifier.ANY, verifier, "simpleSsl should default to using the ANY hostname verifier");
}

@Test
public void mlHost() {
ManageConfig config = configure("mlHost", "host1");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,16 @@
*/
package com.marklogic.mgmt.admin;

import com.marklogic.client.DatabaseClientFactory;
import com.marklogic.mgmt.util.SimplePropertySource;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;

import org.junit.jupiter.api.Test;

import com.marklogic.client.DatabaseClientFactory;
import com.marklogic.client.DatabaseClientFactory.SSLHostnameVerifier;
import com.marklogic.mgmt.util.SimplePropertySource;

public class DefaultAdminConfigFactoryTest {

@Test
Expand Down Expand Up @@ -75,6 +76,19 @@ public void sslProperties() {
assertEquals("PKIX", config.getTrustManagementAlgorithm());
}

@Test
void simpleSsl() {
AdminConfig config = configure(
"mlAdminSimpleSsl", "true",
"mlUsername", "admin",
"mlPassword", "admin"
);

DatabaseClientFactory.Bean bean = config.newDatabaseClientBuilder().buildBean();
SSLHostnameVerifier verifier = bean.getSecurityContext().getSSLHostnameVerifier();
assertEquals(SSLHostnameVerifier.ANY, verifier, "simpleSsl should default to using the ANY hostname verifier");
}

@Test
void cloudApiKeyAndBasePath() {
AdminConfig config = configure(
Expand Down