Skip to main content

Module security

Module security 

Source
Available on crate feature security only.
Expand description

Security utilities for safe logging and credential obfuscation.

Prevent accidental credential leaks in logs:

§Example

use allframe::security::{obfuscate_url, Sensitive};

let url = "https://user:password@api.example.com/v1/users";
println!("Connecting to: {}", obfuscate_url(url));
// Output: "Connecting to: https://api.example.com"

let api_key = Sensitive::new("sk_live_abcd1234");
println!("Using key: {:?}", api_key);
// Output: "Using key: ***"

Security utilities for safe logging and data handling.

This module provides utilities for:

  • Obfuscation: Safe logging of sensitive data (URLs, API keys, headers)

§Example

use allframe_core::security::{obfuscate_url, obfuscate_api_key};

let url = "https://user:password@api.example.com/v1/data?key=secret";
println!("Connecting to: {}", obfuscate_url(url));
// Output: "Connecting to: https://api.example.com/***"

let key = "sk_live_abcdefghijklmnop";
println!("Using key: {}", obfuscate_api_key(key));
// Output: "Using key: sk_l***mnop"

Structs§

Sensitive
Helper struct for wrapping sensitive values.

Traits§

Obfuscate
Trait for types that can be obfuscated for safe logging.

Functions§

obfuscate_api_key
Obfuscate an API key, showing only prefix and suffix.
obfuscate_header
Obfuscate a header value based on the header name.
obfuscate_redis_url
Obfuscate a Redis URL, preserving host and port but hiding authentication.
obfuscate_url
Obfuscate a URL by removing credentials, path, and query parameters.