Skip to content

Commit

Permalink
Make sensitive_data_tools.is_name_sensitive()
Browse files Browse the repository at this point in the history
  • Loading branch information
ric-evans committed Nov 22, 2023
1 parent fd3f271 commit 2a320e5
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 1 deletion.
2 changes: 2 additions & 0 deletions tests/test_data_safety_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ def test_00() -> None:
actual = data_safety_tools.obfuscate_value_if_sensitive(name, unimportant_value)
print(actual)
if name in senstives:
assert data_safety_tools.is_name_sensitive(name)
assert actual == "***"
else:
assert not data_safety_tools.is_name_sensitive(name)
assert actual == unimportant_value
7 changes: 6 additions & 1 deletion wipac_dev_tools/data_safety_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,14 @@
_OBFUSCATE_SUBSTRINGS_UPPER = ["TOKEN", "AUTH", "PASS", "SECRET"]


def is_name_sensitive(name: str) -> bool:
"""Return whether `name` is considered sensitive."""
return any(s in name.upper() for s in _OBFUSCATE_SUBSTRINGS_UPPER)


def obfuscate_value_if_sensitive(name: str, value: str) -> str:
"""Return "***" if the included `value` is sensitive (by its `name`)."""
if any(s in name.upper() for s in _OBFUSCATE_SUBSTRINGS_UPPER):
if is_name_sensitive(name):
return "***"
else:
return value

0 comments on commit 2a320e5

Please sign in to comment.