Coverage for src / lexigram / contracts / security / __init__.py: 0%
9 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-19 05:41 +0800
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-19 05:41 +0800
1"""Security contracts for Lexigram Framework.
3Provides protocols and types for security-related concerns, including
4secret management, guards, input sanitization, and response headers.
5"""
7from __future__ import annotations
9from lexigram.contracts.exceptions.components import (
10 SecretNotFoundError,
11)
12from lexigram.contracts.exceptions.security import (
13 CORSViolationError,
14 GuardDeniedError,
15 InputSanitizationError,
16 SecretAccessError,
17 SecurityError,
18)
19from lexigram.contracts.security.protocols import (
20 CORSProtocol,
21 CSPProtocol,
22 CSRFProtocol,
23 EncryptionProtocol,
24 GuardChainProtocol,
25 HasherProtocol,
26 InputSanitizerProtocol,
27 KeyDerivationProtocol,
28 SecurityHeadersProtocol,
29)
30from lexigram.contracts.security.rotation import SecretRotationPolicy
31from lexigram.contracts.security.secrets import (
32 SecretStoreProtocol,
33)
34from lexigram.contracts.security.stores import AsyncSecretStoreProtocol
35from lexigram.contracts.security.url_safety import (
36 HostResolver,
37 is_safe_url_for_request,
38 resolve_hostname,
39)
41__all__ = [
42 "AsyncSecretStoreProtocol",
43 "CORSProtocol",
44 "CORSViolationError",
45 "CSPProtocol",
46 "CSRFProtocol",
47 "EncryptionProtocol",
48 "GuardChainProtocol",
49 "GuardDeniedError",
50 "HasherProtocol",
51 "HostResolver",
52 "InputSanitizationError",
53 "InputSanitizerProtocol",
54 "KeyDerivationProtocol",
55 "SecretAccessError",
56 "SecretNotFoundError",
57 "SecretRotationPolicy",
58 "SecretStoreProtocol",
59 "SecurityError",
60 "SecurityHeadersProtocol",
61 "is_safe_url_for_request",
62 "resolve_hostname",
63]