Skip to content
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
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
import java.security.AccessController;
import java.security.MessageDigest;
import java.security.PrivilegedAction;
import java.security.Security;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
Expand Down Expand Up @@ -65,7 +64,6 @@
import org.apache.logging.log4j.Logger;
import org.apache.lucene.search.QueryCachingPolicy;
import org.apache.lucene.search.Weight;
import org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider;
import org.bouncycastle.util.encoders.Hex;

import org.opensearch.OpenSearchException;
Expand Down Expand Up @@ -429,8 +427,6 @@ public OpenSearchSecurityPlugin(final Settings settings, final Path configPath)
demoCertHashes.add("ba9c5a61065f7f6115188128ffbdaa18fca34562b78b811f082439e2bef1d282"); // esnode-key
demoCertHashes.add("bcd708e8dc707ae065f7ad8582979764b497f062e273d478054ab2f49c5469c6"); // root-ca

tryAddSecurityProvider();

final String advancedModulesEnabledKey = ConfigConstants.SECURITY_ADVANCED_MODULES_ENABLED;
if (settings.hasValue(advancedModulesEnabledKey)) {
deprecationLogger.deprecate("Setting {} is ignored.", advancedModulesEnabledKey);
Expand Down Expand Up @@ -2460,17 +2456,6 @@ public Optional<SecureSettingsFactory> getSecureSettingFactory(Settings settings
);
}

@SuppressWarnings("removal")
private void tryAddSecurityProvider() {
AccessController.doPrivileged((PrivilegedAction<Object>) () -> {
if (Security.getProvider("BCFIPS") == null) {
Security.addProvider(new BouncyCastleFipsProvider());
log.debug("Bouncy Castle FIPS Provider added");
}
return null;
});
}

// CS-SUPPRESS-SINGLE: RegexpSingleline get Resource Sharing Extensions
@Override
public void loadExtensions(ExtensionLoader loader) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import java.nio.file.Path;
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.security.Security;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
Expand All @@ -34,6 +35,7 @@
import com.fasterxml.jackson.databind.InjectableValues;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider;

import org.opensearch.OpenSearchException;
import org.opensearch.SpecialPermission;
Expand Down Expand Up @@ -256,6 +258,8 @@ public Object run() {
log.error("SSL not activated for http and/or transport.");
}

tryAddSecurityProvider();

this.sslSettingsManager = new SslSettingsManager(new Environment(settings, configPath));
}

Expand Down Expand Up @@ -772,4 +776,14 @@ protected Settings migrateSettings(Settings settings) {
public ThreadPool getThreadPool() {
return this.threadPool;
}

private void tryAddSecurityProvider() {
AccessController.doPrivileged(() -> {
if (Security.getProvider("BCFIPS") == null) {
Security.addProvider(new BouncyCastleFipsProvider());
log.debug("Bouncy Castle FIPS Provider added");
}
return null;
});
}
}
Loading