blob: 64395422793d17ecff0bb993d78a9303e70e02dc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
from typing import List, Dict
from .utils import Utilities
logger = Utilities.get_logger("OBFUSCATE")
def obfuscate(
data: List[Dict[str, str]], pii_fields: List[str]
) -> List[Dict[str, str]]:
"""
A function to obfuscate PII fields in a list of dictionaries, replacing
sensitive values with a string of asterisks.
"""
if not data:
logger.error(
"Invalid or empty data was provided to obfuscate. Returning empty list."
)
return []
if not pii_fields:
logger.error("No PII fields provided to obfuscate. Returning data unchanged.")
return data
return [
{k: ("***" if k in pii_fields else v) for k, v in record.items()}
for record in data
]
|