
PHP 8.4+ सुरक्षा लाइब्रेरी (मिरर)
व्यापक PHP सुरक्षा लाइब्रेरी जो CSP, सुरक्षा हेडर, CSRF सुरक्षा, सुरक्षित कुकीज़, पासवर्ड सत्यापन, इनपुट सैनिटाइज़ेशन, रेट लिमिटिंग, SRI, सीक्रेट लोडिंग, एन्क्रिप्शन, सत्र सुरक्षा, TOTP दो-कारक प्रमाणीकरण, हस्ताक्षरित URL और सुरक्षा इवेंट लॉगिंग प्रदान करती है।
unsafe-* नहीं, HTTPS-प्रथमwith*() APIext-domext-libxmlext-sodiumcomposer require zappzarapp/security
use Zappzarapp\Security\Headers\Builder\SecurityHeadersBuilder;
$headers = SecurityHeadersBuilder::recommended()->build();
foreach ($headers as $name => $value) {
header("{$name}: {$value}");
}
use Zappzarapp\Security\Csp\HeaderBuilder;
use Zappzarapp\Security\Csp\Directive\CspDirectives;
use Zappzarapp\Security\Csp\Nonce\NonceGenerator;
$generator = new NonceGenerator();
$csp = HeaderBuilder::build(CspDirectives::strict(), $generator);
header("Content-Security-Policy: {$csp}");
$nonce = $generator->get();
echo "<script nonce=\"{$nonce}\">console.log('Safe!');</script>";
use Zappzarapp\Security\Csrf\CsrfProtection;
use Zappzarapp\Security\Csrf\Storage\SessionCsrfStorage;
$csrf = new CsrfProtection(new SessionCsrfStorage());
// फॉर्म के लिए टोकन जनरेट करें
$token = $csrf->generateToken();
echo '<input type="hidden" name="_token" value="' . $token->value() . '">';
// सबमिशन पर सत्यापित करें
if (!$csrf->validateToken($_POST['_token'])) {
throw new Exception('CSRF validation failed');
}
use Zappzarapp\Security\Sanitization\Html\HtmlSanitizer;
use Zappzarapp\Security\Sanitization\Path\PathValidationConfig;
use Zappzarapp\Security\Sanitization\Path\PathValidator;
// HTML सैनिटाइज़ करें (खतरनाक टैग/एट्रिब्यूट हटाता है)
$sanitizer = new HtmlSanitizer();
$safe = $sanitizer->sanitize($userInput);
// फ़ाइल पथ सत्यापित करें (डायरेक्टरी ट्रैवर्सल रोकें)
$validator = new PathValidator(new PathValidationConfig(basePath: '/var/www/uploads'));
if (!$validator->isSafe($userPath)) {
throw new Exception('Invalid path');
}
सभी मॉड्यूल के विस्तृत उदाहरणों के लिए दस्तावेज़ीकरण देखें।
प्रत्येक मॉड्यूल में क्लास संदर्भ, कॉन्फ़िगरेशन विकल्प और कोड उदाहरणों के साथ विस्तृत API दस्तावेज़ीकरण है:
यह लाइब्रेरी सेमेंटिक वर्जनिंग 2.0.0 का पालन करती है।
Zappzarapp\Security नेमस्पेस में सभी क्लासेस, इंटरफेस और मेथड्स को सार्वजनिक API माना जाता है जब तक कि @internal से चिह्नित न किया गया हो। ब्रेकिंग परिवर्तन केवल प्रमुख संस्करणों में होते हैं, हटाने से कम से कम एक माइनर संस्करण पहले deprecation चेतावनियों के साथ।
रिलीज़ release-please के माध्यम से स्वचालित और GPG-हस्ताक्षरित हैं। रिलीज़ इतिहास के लिए CHANGELOG.md देखें।
भेद्यता रिपोर्टिंग और सुरक्षा विचारों के लिए SECURITY.md देखें।
विकास सेटअप और योगदान दिशानिर्देशों के लिए CONTRIBUTING.md देखें।
MIT लाइसेंस - विवरण के लिए LICENSE फ़ाइल देखें।
| मॉड्यूल | विवरण | मुख्य क्लासेस |
|---|
| CSP | कंटेंट सिक्योरिटी पॉलिसी हेडर निर्माण और उल्लंघन रिपोर्टिंग | CspDirectives, HeaderBuilder, NonceGenerator, CspReportParser |
| Headers | सुरक्षा हेडर (HSTS, Permissions-Policy, आदि.) | SecurityHeaders, SecurityHeadersBuilder |
| CSRF | क्रॉस-साइट रिक्वेस्ट फोर्जरी सुरक्षा | CsrfProtection, CsrfConfig |
| Cookie | सुरक्षित कुकी हैंडलिंग | SecureCookie, CookieBuilder, CookieOptions |
| Encryption | XChaCha20-Poly1305 प्रमाणित एन्क्रिप्शन | SymmetricEncryptor, EnvelopeEncryptor, EncryptionKey, KeyRingEncryptor |
| Password | पासवर्ड सत्यापन और हैशिंग | PasswordPolicy, PwnedPasswordChecker, PepperedPasswordHasher |
| Sanitization | इनपुट सैनिटाइज़ेशन (HTML, SQL, URI, Path) और फ़ाइल अपलोड सत्यापन | HtmlSanitizer, UriSanitizer, PathValidator, UploadValidator |
| RateLimiting | कई एल्गोरिदम के साथ रेट लिमिटिंग | DefaultRateLimiter, RateLimitConfig |
| SRI | सबरिसोर्स इंटीग्रिटी हैश जनरेशन | SriHashGenerator, IntegrityAttribute |
| Secrets | Docker/फ़ाइल-आधारित सीक्रेट लोडिंग | SecretLoader, SecretValue, FileSecretSource |
| Session | सत्र सख्तीकरण और फिक्सेशन सुरक्षा | SessionGuard, SessionConfig, SessionConfigurator |
| SignedUrl | अनिवार्य समाप्ति के साथ HMAC-हस्ताक्षरित URL | UrlSigner, SigningKey |
| TOTP | समय-आधारित वन-टाइम पासवर्ड (RFC 6238) | TotpAuthenticator, TotpSecret, ProvisioningUri, RecoveryCodeGenerator |
| Analyzer | सुरक्षा हेडर विश्लेषण और ऑडिटिंग | SecurityHeaderAnalyzer, AnalysisResult |
| Scanner | CLI सुरक्षा हेडर स्कैनर | ScanCommand, StreamHeaderFetcher |
| Middleware | ड्रॉप-इन फ्रेमवर्क एकीकरण के लिए PSR-15 मिडलवेयर | SecurityHeadersMiddleware, CspMiddleware, CspReportHandler, CsrfMiddleware, DoubleSubmitCsrfMiddleware, RateLimitMiddleware, CorsMiddleware |
| Logging | सुरक्षा इवेंट लॉगिंग | SecurityAuditLogger, SecurityEvent |
| मॉड्यूल | विवरण |
|---|
| CSP | नॉन्स और उल्लंघन रिपोर्टिंग के साथ कंटेंट सिक्योरिटी पॉलिसी |
| Headers | HSTS, COOP, COEP, CORP, Permissions |
| CSRF | टोकन पैटर्न और सत्यापन |
| Cookie | सुरक्षित कुकी हैंडलिंग |
| Encryption | प्रमाणित एन्क्रिप्शन, एनवेलप्स |
| Password | हैशिंग, नीतियाँ, ब्रीच डिटेक्शन |
| Sanitization | HTML, URI, पथ सैनिटाइज़ेशन और फ़ाइल अपलोड सत्यापन |
| Rate Limiting | टोकन बकेट, स्लाइडिंग विंडो |
| SRI | सबरिसोर्स इंटीग्रिटी हैश |
| Secrets | Docker/फ़ाइल-आधारित सीक्रेट लोडिंग |
| Session | सत्र सख्तीकरण, फ़िंगरप्रिंटिंग |
| Signed URLs | समाप्ति के साथ HMAC-हस्ताक्षरित URL |
| TOTP | वन-टाइम पासवर्ड, रिकवरी कोड |
| Analyzer | सुरक्षा हेडर ऑडिटिंग |
| Scanner | CI के लिए CLI हेडर स्कैनर |
| Middleware | PSR-15 मिडलवेयर |
| Logging | सुरक्षा इवेंट लॉगिंग |
| Glossary | सुरक्षा शब्दावली संदर्भ |