Utilities¶
The utils module provides helper functions for security operations.
Logging Functions¶
def setup_custom_logging(log_file: str | None = None, log_format: str = "text") -> logging.Logger:
"""Setup custom logging for DjangoAPI Guard."""
def log_activity(request, logger, log_type="request", reason="", passive_mode=False, trigger_info="", level="WARNING"):
"""Universal logging function for all types of requests and activities."""
Security Check Functions¶
def is_user_agent_allowed(user_agent: str, config: SecurityConfig) -> bool:
"""Check if user agent is allowed."""
def is_ip_allowed(ip: str, config: SecurityConfig, ipinfo_db=None) -> bool:
"""Check if IP address is allowed."""
def detect_penetration_attempt(request: HttpRequest) -> tuple[bool, str]:
"""Detect potential penetration attempts using the Detection Engine."""
def extract_client_ip(request: HttpRequest, config: SecurityConfig, agent_handler=None) -> str:
"""Securely extract the client IP address from the request."""