From 2a1cd64b5cfc814ea1c7efac011e08e320997392 Mon Sep 17 00:00:00 2001 From: Cheng Fang Date: Fri, 23 Jun 2023 12:10:49 -0400 Subject: [PATCH] EJBCLIENT-500 Fix uses of deprecated elytron methods: AuthenticationConfiguration.EMPTY, config.useMechanismProperties, setPasswordMap (#628) --- .../legacy/ElytronLegacyConfiguration.java | 8 ++-- .../ejb/client/test/common/DummyServer.java | 39 +++++++++++-------- 2 files changed, 27 insertions(+), 20 deletions(-) diff --git a/src/main/java/org/jboss/ejb/client/legacy/ElytronLegacyConfiguration.java b/src/main/java/org/jboss/ejb/client/legacy/ElytronLegacyConfiguration.java index cadeae65e..e7f6f9455 100644 --- a/src/main/java/org/jboss/ejb/client/legacy/ElytronLegacyConfiguration.java +++ b/src/main/java/org/jboss/ejb/client/legacy/ElytronLegacyConfiguration.java @@ -63,7 +63,7 @@ public AuthenticationContext getConfiguredAuthenticationContext() { for (JBossEJBProperties.ConnectionConfiguration configuration : properties.getConnectionList()) { // we don't actually care about the protocol for Elytron configuration MatchRule rule = MatchRule.ALL.matchAbstractType("ejb", "jboss"); - AuthenticationConfiguration config = AuthenticationConfiguration.EMPTY; + AuthenticationConfiguration config = AuthenticationConfiguration.empty(); final String host = configuration.getHost(); if (host == null) { @@ -89,7 +89,7 @@ public AuthenticationContext getConfiguredAuthenticationContext() { final JBossEJBProperties.ClusterConfiguration configuration = entry.getValue(); MatchRule defaultRule = MatchRule.ALL.matchAbstractType("ejb", "jboss"); - AuthenticationConfiguration defaultConfig = AuthenticationConfiguration.EMPTY; + AuthenticationConfiguration defaultConfig = AuthenticationConfiguration.empty(); defaultRule = defaultRule.matchProtocol("cluster"); defaultRule = defaultRule.matchUrnName(clusterName); @@ -105,7 +105,7 @@ public AuthenticationContext getConfiguredAuthenticationContext() { if (nodeConfigurations != null) { for (JBossEJBProperties.ClusterNodeConfiguration nodeConfiguration : nodeConfigurations) { MatchRule rule = MatchRule.ALL.matchAbstractType("ejb", "jboss"); - AuthenticationConfiguration config = AuthenticationConfiguration.EMPTY; + AuthenticationConfiguration config = AuthenticationConfiguration.empty(); rule = rule.matchProtocol("node"); rule = rule.matchUrnName(nodeConfiguration.getNodeName()); @@ -147,7 +147,7 @@ private static AuthenticationConfiguration configureCommon(final JBossEJBPropert @SuppressWarnings({"unchecked", "rawtypes"}) final Map props = (Map) SaslUtils.createPropertyMap(options, false); if (! props.isEmpty()) { - config = config.useMechanismProperties(props); + config = config.useSaslMechanismProperties(props); } if (options.contains(Options.SASL_DISALLOWED_MECHANISMS)) { config = config.setSaslMechanismSelector(SaslMechanismSelector.DEFAULT.forbidMechanisms(options.get(Options.SASL_DISALLOWED_MECHANISMS).toArray(NO_STRINGS))); diff --git a/src/test/java/org/jboss/ejb/client/test/common/DummyServer.java b/src/test/java/org/jboss/ejb/client/test/common/DummyServer.java index ca74e7c6a..8e126c7ee 100644 --- a/src/test/java/org/jboss/ejb/client/test/common/DummyServer.java +++ b/src/test/java/org/jboss/ejb/client/test/common/DummyServer.java @@ -17,6 +17,20 @@ */ package org.jboss.ejb.client.test.common; +import java.io.IOException; +import java.net.InetAddress; +import java.net.InetSocketAddress; +import java.net.SocketAddress; +import java.net.UnknownHostException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Function; + import org.jboss.ejb.client.EJBModuleIdentifier; import org.jboss.ejb.protocol.remote.RemoteEJBService; import org.jboss.ejb.server.Association; @@ -33,9 +47,13 @@ import org.jboss.remoting3.ServiceRegistrationException; import org.jboss.remoting3.spi.NetworkServerProvider; import org.wildfly.security.auth.realm.SimpleMapBackedSecurityRealm; +import org.wildfly.security.auth.realm.SimpleRealmEntry; import org.wildfly.security.auth.server.MechanismConfiguration; -import org.wildfly.security.auth.server.SaslAuthenticationFactory; import org.wildfly.security.auth.server.SecurityDomain; +import org.wildfly.security.auth.server.SaslAuthenticationFactory; +import org.wildfly.security.authz.Attributes; +import org.wildfly.security.credential.Credential; +import org.wildfly.security.credential.PasswordCredential; import org.wildfly.security.password.interfaces.ClearPassword; import org.wildfly.security.permission.PermissionVerifier; import org.wildfly.security.sasl.util.SaslFactories; @@ -48,20 +66,6 @@ import org.xnio.Xnio; import org.xnio.channels.AcceptingChannel; -import java.io.IOException; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.SocketAddress; -import java.net.UnknownHostException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; -import java.util.function.Function; - /** * @author Carlo de Wolf * @author Richard Achmatowicz @@ -143,7 +147,10 @@ public void start() throws Exception { // set up a security realm called default with a user called test final SimpleMapBackedSecurityRealm realm = new SimpleMapBackedSecurityRealm(); - realm.setPasswordMap("test", ClearPassword.createRaw(ClearPassword.ALGORITHM_CLEAR, "test".toCharArray())); + final ClearPassword password = ClearPassword.createRaw(ClearPassword.ALGORITHM_CLEAR, "test".toCharArray()); + final List credentials = Collections.singletonList(new PasswordCredential(password)); + final SimpleRealmEntry realmEntry = new SimpleRealmEntry(credentials, Attributes.EMPTY); + realm.setIdentityMap(Collections.singletonMap("test", realmEntry)); // set up a security domain which has realm "default" final SecurityDomain.Builder domainBuilder = SecurityDomain.builder();