Skip to content

Commit 971d66d

Browse files
Merge pull request #29575 from Shilpa-Gokul/censor_token
NO-JIRA: Fix bearer token exposure in exit condition as well
2 parents 6e15b2c + 73b5ca2 commit 971d66d

File tree

2 files changed

+5
-6
lines changed

2 files changed

+5
-6
lines changed

test/extended/util/client.go

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -938,7 +938,7 @@ func (c *CLI) start(stdOutBuff, stdErrBuff *bytes.Buffer) (*exec.Cmd, error) {
938938
cmd := exec.Command(c.execPath, c.finalArgs...)
939939
cmd.Stdin = c.stdin
940940
// Redact any bearer token information from the log.
941-
framework.Logf("Running '%s %s'", c.execPath, redactBearerToken(c.finalArgs))
941+
framework.Logf("Running '%s %s'", c.execPath, RedactBearerToken(strings.Join(c.finalArgs, " ")))
942942

943943
cmd.Stdout = stdOutBuff
944944
cmd.Stderr = stdErrBuff
@@ -947,8 +947,7 @@ func (c *CLI) start(stdOutBuff, stdErrBuff *bytes.Buffer) (*exec.Cmd, error) {
947947
return cmd, err
948948
}
949949

950-
func redactBearerToken(finalArgs []string) string {
951-
args := strings.Join(finalArgs, " ")
950+
func RedactBearerToken(args string) string {
952951
if strings.Contains(args, "Authorization: Bearer") {
953952
// redact bearer token
954953
re := regexp.MustCompile(`Authorization:\s+Bearer.*\s+`)
@@ -986,8 +985,8 @@ func (c *CLI) outputs(stdOutBuff, stdErrBuff *bytes.Buffer) (string, string, err
986985
c.stderr = bytes.NewBuffer(stdErrBytes)
987986
return stdOut, stdErr, nil
988987
case *exec.ExitError:
989-
framework.Logf("Error running %v:\nStdOut>\n%s\nStdErr>\n%s\n", cmd, stdOut, stdErr)
990-
wrappedErr := fmt.Errorf("Error running %v:\nStdOut>\n%s\nStdErr>\n%s\n%w\n", cmd, stdOut[getStartingIndexForLastN(stdOutBytes, 4096):], stdErr[getStartingIndexForLastN(stdErrBytes, 4096):], err)
988+
framework.Logf("Error running %s %s:\nStdOut>\n%s\nStdErr>\n%s\n", c.execPath, RedactBearerToken(strings.Join(c.finalArgs, " ")), stdOut, stdErr)
989+
wrappedErr := fmt.Errorf("Error running %s %s:\nStdOut>\n%s\nStdErr>\n%s\n%w\n", c.execPath, RedactBearerToken(strings.Join(c.finalArgs, " ")), stdOut[getStartingIndexForLastN(stdOutBytes, 4096):], stdErr[getStartingIndexForLastN(stdErrBytes, 4096):], err)
991990
return stdOut, stdErr, wrappedErr
992991
default:
993992
FatalErr(fmt.Errorf("unable to execute %q: %v", c.execPath, err))

test/extended/util/prometheus/helpers.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ func GetBearerTokenURLViaPod(oc *exutil.CLI, execPodName, url, bearer string) (s
440440
auth := fmt.Sprintf("Authorization: Bearer %s", bearer)
441441
stdout, stderr, err := oc.AsAdmin().Run("exec").Args(execPodName, "--", "curl", "-s", "-k", "-H", auth, url).Outputs()
442442
if err != nil {
443-
return "", fmt.Errorf("command failed: %v\nstderr: %s\nstdout:%s", err, stderr, stdout)
443+
return "", fmt.Errorf("command failed: %v\nstderr: %s\nstdout:%s", exutil.RedactBearerToken(err.Error()), exutil.RedactBearerToken(stderr), exutil.RedactBearerToken(stdout))
444444
}
445445
// Terminate stdout with a newline to avoid an unexpected end of stream error.
446446
if len(stdout) > 0 {

0 commit comments

Comments
 (0)