Skip to content

Commit a14d15d

Browse files
committed
tetragon: Add redact test for environment variables
Signed-off-by: Jiri Olsa <[email protected]>
1 parent b67a51f commit a14d15d

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

pkg/fieldfilters/redaction_test.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ func TestRedact_Simple(t *testing.T) {
7878
redacted, _ := filters.Redact("", args, "")
7979
assert.Equal(t, "--verbose=true --password "+REDACTION_STR+" --username foobar", redacted)
8080
}
81+
8182
func TestRedact_BinaryFilter(t *testing.T) {
8283
args := "--verbose=true --password ybx511!ackt544 --username foobar"
8384

@@ -102,3 +103,27 @@ func TestRedact_Multi(t *testing.T) {
102103
redacted, _ := filters.Redact("", args, "")
103104
assert.Equal(t, "--verbose=true --password "+REDACTION_STR+" --username foobar "+REDACTION_STR+"cake "+REDACTION_STR+" innocent", redacted)
104105
}
106+
107+
func TestRedact_Envs(t *testing.T) {
108+
envs := "VAR1=XXX SSH_PASSWORD=verysecretpassword VAR2=YYY"
109+
110+
filterList := `{"redact": ["(?:SSH_PASSWORD)[\\s=]+(\\S+)"]}`
111+
filters, err := ParseRedactionFilterList(filterList)
112+
require.NoError(t, err)
113+
114+
_, redacted := filters.Redact("", "", envs)
115+
assert.Equal(t, "VAR1=XXX SSH_PASSWORD="+REDACTION_STR+" VAR2=YYY", redacted)
116+
}
117+
118+
func TestRedact_ArgsWithEnvs(t *testing.T) {
119+
args := "--verbose=true --password ybx511!ackt544 --username foobar cheesecake TOPSECRET innocent"
120+
envs := "VAR1=XXX SSH_PASSWORD=verysecretpassword VAR2=YYY"
121+
122+
filterList := `{"redact": ["(?:--password|-p)[\\s=]+(\\S+)", "\\W(TOPSECRET)\\W", "(cheese)cake", "(?:SSH_PASSWORD)[\\s=]+(\\S+)"]}`
123+
filters, err := ParseRedactionFilterList(filterList)
124+
require.NoError(t, err)
125+
126+
args, envs = filters.Redact("", args, envs)
127+
assert.Equal(t, "--verbose=true --password "+REDACTION_STR+" --username foobar "+REDACTION_STR+"cake "+REDACTION_STR+" innocent", args)
128+
assert.Equal(t, "VAR1=XXX SSH_PASSWORD="+REDACTION_STR+" VAR2=YYY", envs)
129+
}

0 commit comments

Comments
 (0)