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

1"""Security contracts for Lexigram Framework. 

2 

3Provides protocols and types for security-related concerns, including 

4secret management, guards, input sanitization, and response headers. 

5""" 

6 

7from __future__ import annotations 

8 

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) 

40 

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]