aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-auth-ldap
diff options
context:
space:
mode:
authorNolwenn Cadic <98824442+Nolwenn-cadic-sonarsource@users.noreply.github.com>2024-12-24 15:57:56 +0100
committersonartech <sonartech@sonarsource.com>2024-12-24 15:29:20 +0000
commita7e0cfbd1f1c700434cf8bfb2dc3d688d92008bf (patch)
tree138c4283ebd3d9bab543e3227bf8e403cc900c6f /server/sonar-auth-ldap
parent5c4ea71c1b02c1765c613eeb8582cd36de69804d (diff)
downloadsonarqube-a7e0cfbd1f1c700434cf8bfb2dc3d688d92008bf.tar.gz
sonarqube-a7e0cfbd1f1c700434cf8bfb2dc3d688d92008bf.zip
SONAR-24085 Fix quality gate issues
Diffstat (limited to 'server/sonar-auth-ldap')
-rw-r--r--server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/DefaultLdapAuthenticator.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/DefaultLdapAuthenticator.java b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/DefaultLdapAuthenticator.java
index 2d7cd638a97..7ff1d67611a 100644
--- a/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/DefaultLdapAuthenticator.java
+++ b/server/sonar-auth-ldap/src/main/java/org/sonar/auth/ldap/DefaultLdapAuthenticator.java
@@ -20,6 +20,8 @@
package org.sonar.auth.ldap;
import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import javax.naming.NamingException;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.SearchResult;
@@ -37,6 +39,8 @@ import org.sonar.api.server.ServerSide;
@ServerSide
public class DefaultLdapAuthenticator implements LdapAuthenticator {
+ private static final Pattern SANITIZE_PATTERN = Pattern.compile("[\n\r]");
+
private static final Logger LOG = LoggerFactory.getLogger(DefaultLdapAuthenticator.class);
private final Map<String, LdapContextFactory> contextFactories;
private final Map<String, LdapUserMapping> userMappings;
@@ -78,7 +82,7 @@ public class DefaultLdapAuthenticator implements LdapAuthenticator {
return LdapAuthenticationResult.success(ldapKey);
}
}
- LOG.debug("User {} not found", login);
+ LOG.atDebug().log("User {} not found", getSanitizedLogin(login));
return LdapAuthenticationResult.failed();
}
@@ -87,16 +91,21 @@ public class DefaultLdapAuthenticator implements LdapAuthenticator {
try {
result = ldapUserMapping.createSearch(ldapContextFactory, login).findUnique();
} catch (NamingException e) {
- LOG.debug("User {} not found in server <{}>: {}", login, ldapKey, e.toString());
+ LOG.atDebug().log("User {} not found in server <{}>: {}", getSanitizedLogin(login), ldapKey, e.toString());
return null;
}
if (result == null) {
- LOG.debug("User {} not found in <{}>", login, ldapKey);
+ LOG.atDebug().log("User {} not found in <{}>", getSanitizedLogin(login), ldapKey);
return null;
}
return result;
}
+ private static String getSanitizedLogin(String login) {
+ Matcher matcher = SANITIZE_PATTERN.matcher(login);
+ return matcher.replaceAll("_");
+ }
+
private boolean isPasswordValid(String password, String ldapKey, LdapContextFactory ldapContextFactory, String principal) {
if (ldapContextFactory.isGssapi()) {
return checkPasswordUsingGssapi(principal, password, ldapKey);