المشكلة: سجلات البيانات الشخصية في JSON
عندما تسجل أدوات المراقبة مثل Datadog و Splunk و Prometheus جميع طلبات API، غالباً ما تحتفظ بالبيانات الشخصية:
{
"timestamp": "2025-01-15T10:23:45Z",
"user_id": "john.smith@customer.com",
"request": {
"email": "john.smith@customer.com",
"phone": "+1-555-0123",
"ssn": "123-45-6789",
"address": "123 Main St, San Francisco, CA 94102"
},
"response_code": 200
}
هذا السجل يحتوي على بيانات شخصية كاملة. إذا كانت أدوات المراقبة متاحة للموظفين أو في السحابة، فقد تكون مكشوفة.
الحل: إخفاء قبل التسجيل
from presidio_anonymizer import AnonymizerEngine
from presidio_analyzer import AnalyzerEngine
import json
analyzer = AnalyzerEngine()
anonymizer = AnonymizerEngine()
def sanitize_log(data):
"""إخفاء البيانات الشخصية قبل تسجيلها"""
json_str = json.dumps(data)
# تحليل البيانات الشخصية
results = analyzer.analyze(text=json_str, language="en")
# إخفاء
anonymized = anonymizer.anonymize(text=json_str, analyzer_results=results)
return json.loads(anonymized.text)
# الاستخدام
log_entry = {
"email": "john@company.com",
"phone": "+1-555-0123",
"ssn": "123-45-6789"
}
safe_log = sanitize_log(log_entry)
logger.info(safe_log) # آمن للتسجيل
الامتثال والقانون
- GDPR المادة 32: أمان البيانات الشخصية في جميع مراحل المعالجة
- HIPAA: يجب عدم تسجيل PHI في السجلات