Перенесены секреты из .env в SM
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
from app.logging_security import REDACTED, redact_event, sanitize_text
|
||||
|
||||
|
||||
def test_redacts_sensitive_fields_recursively() -> None:
|
||||
event = {
|
||||
"api_key": "provider-key",
|
||||
"nested": {
|
||||
"callback_url": "https://user:password@example.test/callback",
|
||||
"status": "accepted",
|
||||
},
|
||||
}
|
||||
|
||||
redacted = redact_event(None, "info", event)
|
||||
|
||||
assert redacted["api_key"] == REDACTED
|
||||
assert redacted["nested"]["callback_url"] == REDACTED
|
||||
assert redacted["nested"]["status"] == "accepted"
|
||||
|
||||
|
||||
def test_redacts_credentials_embedded_in_text() -> None:
|
||||
value = (
|
||||
"POST https://callback-user:callback-password@example.test/cb"
|
||||
"?api_key=query-secret Authorization=Basic header-secret"
|
||||
)
|
||||
|
||||
redacted = sanitize_text(value)
|
||||
|
||||
assert "callback-password" not in redacted
|
||||
assert "query-secret" not in redacted
|
||||
assert "header-secret" not in redacted
|
||||
assert redacted.count(REDACTED) == 3
|
||||
Reference in New Issue
Block a user