Skip to content

Feature request: support for custom masking with regx pattern or custom masking chars #5826

Closed
@AvinashDalvi89

Description

@AvinashDalvi89

Use case

In some of case I would like to custom masking like example Aadhar number or SSN number is 1111-1111-1111 then masking should be done like ****-****-6789 or ****-****-**** or regex pattern.

Solution/User Experience

currently erase, encrypt and decrypt is supported. Similarly can be introduce mask or custom_mask method which accept parameter s like masking_chars
This is just an example to explain how it can worked this can move to prebuild function mask or custom_mask

from aws_lambda_powertools import Logger
import re

# Initialize logger with custom masking
logger = Logger()

def mask_sensitive_data(value):
    """Custom function to mask sensitive data"""
    return re.sub(r'\d{4}-\d{4}-\d{4}-(\d{4})', '****-****-****-****', value)

user_data = {
    "username": "john_doe",
    "card_number": "4111-1111-1111-1111"
}

# Apply custom masking
masked_card_number = mask_sensitive_data(user_data["card_number"])
logger.info("Processing payment", extra={"card_number": masked_card_number})

Alternative solutions

Acknowledgment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Shipped

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions