From 5d5134e61515f69042488e5ab70022b884a4ef5a Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Wed, 23 Aug 2023 09:33:22 +0200 Subject: [PATCH] Do not log passwords in debug mode Signed-off-by: Anna Larch --- apps/user_ldap/lib/LDAP.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/apps/user_ldap/lib/LDAP.php b/apps/user_ldap/lib/LDAP.php index 6309a0c8f91..edaf08a7816 100644 --- a/apps/user_ldap/lib/LDAP.php +++ b/apps/user_ldap/lib/LDAP.php @@ -33,6 +33,7 @@ */ namespace OCA\User_LDAP; +use OCP\IConfig; use OCP\Profiler\IProfiler; use OC\ServerNotAvailableException; use OCA\User_LDAP\DataCollector\LdapDataCollector; @@ -317,6 +318,14 @@ class LDAP implements ILDAPWrapper { private function preFunctionCall(string $functionName, array $args): void { $this->curArgs = $args; + if(strcasecmp($functionName, 'ldap_bind') === 0) { + // The arguments are not key value pairs + // \OCA\User_LDAP\LDAP::bind passes 3 arguments, the 3rd being the pw + // Remove it via direct array access for now, although a better solution could be found mebbe? + // @link https://github.com/nextcloud/server/issues/38461 + $args[2] = IConfig::SENSITIVE_VALUE; + } + $this->logger->debug('Calling LDAP function {func} with parameters {args}', [ 'app' => 'user_ldap', 'func' => $functionName, -- 2.39.5