diff --git a/xCAT-server/lib/perl/xCAT/xcatd.pm b/xCAT-server/lib/perl/xCAT/xcatd.pm index 193d9f71b..e10843f00 100644 --- a/xCAT-server/lib/perl/xCAT/xcatd.pm +++ b/xCAT-server/lib/perl/xCAT/xcatd.pm @@ -251,8 +251,10 @@ sub validate { $restcommand =~ s/^\S+\s*//; $saveArglist = "$first$restcommand"; } - } - #if ($arglist) { $logst .= $saveArglist; } + } elsif ($arglist =~ /password/i) { + $saveArglist =~ s/password.*/*REDACTED*/; + } + if ($arglist) { $logst .= $saveArglist; } if ($peername) { $logst .= " for " . $request->{username}->[0] } if ($peerhost) { $logst .= " from " . $peerhost } diff --git a/xCAT-server/sbin/xcatd b/xCAT-server/sbin/xcatd index bcc1f3102..d52983d0f 100755 --- a/xCAT-server/sbin/xcatd +++ b/xCAT-server/sbin/xcatd @@ -2752,17 +2752,21 @@ sub service_connection { $cmdlog_alllog .= "$tmpstr "; } - #if (exists($req->{arg})) { - # foreach my $arg (@{ $req->{arg} }) { - # if ($arg =~ /[^A-Za-z0-9.-]/) { - # my $tmparg = $arg; - # $tmparg =~ s/'/'\\''/g; - # $cmdlog_alllog .= "'" . $tmparg . "' "; - # } else { - # $cmdlog_alllog .= $arg . " "; - # } - # } - #} + if (exists($req->{arg})) { + foreach my $arg (@{ $req->{arg} }) { + if ($arg =~ /password/i) { + $cmdlog_alllog .= "'*REDACTED*' "; + last; + } + if ($arg =~ /[^A-Za-z0-9.-]/) { + my $tmparg = $arg; + $tmparg =~ s/'/'\\''/g; + $cmdlog_alllog .= "'" . $tmparg . "' "; + } else { + $cmdlog_alllog .= $arg . " "; + } + } + } $cmdlog_alllog .= "\n[Response]\n"; # ----used for command log end----------