The-mask requires Python 3.6+ and can be easily installed using the most common Python packaging tools.
We recommend installing the latest stable release from PyPI with pip:
$ pip install the-mask
the-mask is used to mask the PII or sensitive data in the JSON object with more flexible way.
from mask import mask
payload = {
"name": "Jennifer",
"email" "Jenn@abc.corp",
"salary": "250000"
}
data_to_mask = {
"name": "str", # It can also be `string`
"email": "email",
"salary": "znumber"
}
result = mask(payload, data_to_mask) # Option: 1
print(result)
# Result:
# {
# "name": "J******r",
# "email" "J**n@a**.corp",
# "salary": "0"
# }
# Alternative Way: If the user wanted to modify the Payload itself
# Pass the inplace option as True
mask(payload, data_to_mask, inplace = True) # Option: 2
print(payload)
# Result:
# {
# "name": "J******r",
# "email" "J**n@a**.corp",
# "salary": "0"
# }
Type of Data | Example Dict Key | Value | Description |
---|---|---|---|
Plain Text values i.e., Name, Address etc., | name | str |
string or str can be passed to determine the value is a string |
Email ID | emailAddress | email |
email is to mask the email id i.e., K***n@a**.corp |
Numerical Values | salary | znumber |
znumber is used to convert the numerical value into 0 i.e., 250000 -> 0, 10000.90 -> 0.0, "1,135,000" -> "0" |
Identity based Numerical Values | id | number |
number converts the value into random number with equivalent length. |
MIT
Everyone participating in the-mask project, and in particular in the issue tracker, and pull requests is expected to treat other people with respect.
Give a ⭐️ if this project helped you!