कंटेंट सिक्योरिटी पॉलिसी जेनरेटर
XSS हमलों और कोड इंजेक्शन से सुरक्षा के लिए CSP हेडर जेनरेट करें। सुरक्षा प्रीसेट और Nginx, Apache, HTML meta कॉन्फ़िग शामिल हैं।
सुरक्षा प्रीसेट
डायरेक्टिव कॉन्फ़िगर करें
fetch Directives
default-srcFallback for other fetch directives
Examples: 'self', 'self' https:, 'none'
script-srcSources for JavaScript execution
Examples: 'self', 'self' 'unsafe-inline', 'self' https://cdn.example.com
style-srcSources for stylesheets
Examples: 'self', 'self' 'unsafe-inline', 'self' https://fonts.googleapis.com
img-srcSources for images
Examples: 'self', 'self' data:, 'self' https: data:
font-srcSources for fonts
Examples: 'self', 'self' https://fonts.gstatic.com, 'self' data:
connect-srcSources for XHR, WebSocket, and EventSource
Examples: 'self', 'self' https://api.example.com, 'self' wss:
media-srcSources for audio and video
Examples: 'self', 'self' https://media.example.com, 'none'
object-srcSources for plugins (object, embed, applet)
Examples: 'none', 'self', 'self' https://plugins.example.com
frame-srcSources for nested browsing contexts (iframe)
Examples: 'self', 'none', 'self' https://www.youtube.com
worker-srcSources for Worker, SharedWorker, or ServiceWorker
Examples: 'self', 'none', 'self' blob:
manifest-srcSources for web app manifests
Examples: 'self', 'none', 'self' https://cdn.example.com
document Directives
base-uriRestrict URLs for <base> elements
Examples: 'self', 'none', 'self' https://example.com
navigation Directives
form-actionRestrict form submission URLs
Examples: 'self', 'none', 'self' https://api.example.com
frame-ancestorsRestrict embedding this page in frames
Examples: 'none', 'self', 'self' https://trusted.example.com
reporting Directives
report-uriURL to send CSP violation reports
Examples: https://example.com/csp-report, /csp-violation-endpoint
जेनरेट की गई कंटेंट सिक्योरिटी पॉलिसी
CSP पॉलिसी
default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'
HTTP हेडर
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'
HTML Meta Tag
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'">
Nginx कॉन्फ़िगरेशन
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'";
Apache कॉन्फ़िगरेशन
Header always set Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; font-src 'self'; connect-src 'self'; media-src 'self'; object-src 'none'; frame-src 'self'; worker-src 'self'; manifest-src 'self'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'"
कॉन्फ़िगरेशन डाउनलोड करें
सुरक्षा सुझाव
- • ब्रेकिंग बदलावों की पहचान के लिए रिपोर्ट-ओनली मोड से शुरू करें
- • जब संभव हो 'unsafe-inline' और 'unsafe-eval' से बचें
- • इनलाइन स्क्रिप्ट/स्टाइल के लिए nonces या hashes का उपयोग करें
- • जैसे-जैसे आपकी साइट विकसित हो, CSP की नियमित समीक्षा और अपडेट करें
- • हमलों और गलत कॉन्फ़िगरेशन पकड़ने के लिए CSP उल्लंघन रिपोर्ट की निगरानी करें
- • आधुनिक CSP कार्यान्वयन के लिए nonces के साथ 'strict-dynamic' का उपयोग करें
संबंधित उपकरण
इस टूल के बारे में
यह कैसे काम करता है
- संसाधन लोडिंग नियंत्रित करने के लिए CSP डायरेक्टिव कॉन्फ़िगर करें
- सामान्य सुरक्षा स्तरों के लिए सुरक्षा प्रीसेट का उपयोग करें
- विभिन्न वेब सर्वर के लिए हेडर जेनरेट करें
- एन्फोर्समेंट से पहले रिपोर्ट-ओनली मोड से परीक्षण करें
सामान्य उपयोग के मामले
- XSS हमलों और कोड इंजेक्शन को रोकें
- थर्ड-पार्टी संसाधन लोडिंग नियंत्रित करें
- गहन रक्षा सुरक्षा लागू करें
- सुरक्षा सर्वोत्तम प्रथाओं का पालन करें
अक्सर पूछे जाने वाले प्रश्न
कंटेंट सिक्योरिटी पॉलिसी (CSP) क्या है और मुझे इसकी आवश्यकता क्यों है?
CSP एक सुरक्षा सुविधा है जो आपकी वेबसाइट पर लोड होने वाले संसाधनों को नियंत्रित करके क्रॉस-साइट स्क्रिप्टिंग (XSS) हमलों और डेटा इंजेक्शन को रोकने में मदद करती है। यह दुर्भावनापूर्ण कोड निष्पादन से बचाने के लिए सुरक्षा की अतिरिक्त परत है।
एन्फोर्समेंट और रिपोर्ट-ओनली मोड में क्या अंतर है?
एन्फोर्समेंट मोड CSP पॉलिसी के उल्लंघनों को सक्रिय रूप से ब्लॉक करता है, जबकि रिपोर्ट-ओनली मोड उल्लंघनों को ब्लॉक किए बिना लॉग करता है। अपनी पॉलिसी परीक्षण करने के लिए पहले रिपोर्ट-ओनली मोड का उपयोग करें।
मुझे कौन सा सुरक्षा प्रीसेट चुनना चाहिए?
अधिकतम सुरक्षा के लिए 'स्ट्रिक्ट सिक्योरिटी', बाहरी संसाधनों वाली अधिकांश वेबसाइटों के लिए 'मॉडरेट सिक्योरिटी', या डेवलपमेंट/लीगेसी साइटों के लिए 'पर्मिसिव' से शुरू करें।
क्या मैं HTTP हेडर के बजाय meta tags के साथ CSP का उपयोग कर सकता हूं?
हां, लेकिन HTTP हेडर अनुशंसित हैं क्योंकि वे अधिक कार्यक्षमता और सुरक्षा प्रदान करते हैं। ध्यान दें कि रिपोर्ट-ओनली मोड केवल HTTP हेडर का उपयोग करके लागू किया जा सकता है, meta tags से नहीं।
'unsafe-inline' का क्या अर्थ है और क्या मुझे इसे टालना चाहिए?
'unsafe-inline' इनलाइन स्क्रिप्ट और स्टाइल को निष्पादित करने देता है, जो सुरक्षा जोखिम हो सकता है। बाहरी फ़ाइलों का उपयोग करना या इनलाइन कंटेंट के लिए nonces/hashes लागू करना बेहतर है।
Google Analytics या CDN जैसी थर्ड-पार्टी सेवाओं को कैसे संभालें?
विशिष्ट डोमेन को उचित डायरेक्टिव में जोड़ें (उदाहरण के लिए, analytics के लिए script-src, वेब फ़ॉन्ट के लिए font-src)। Google Analytics के लिए, script-src में 'https://www.google-analytics.com' जोड़ें।
अगर CSP मेरी वेबसाइट को तोड़ दे तो मुझे क्या करना चाहिए?
पहले, कार्यक्षमता को तोड़े बिना उल्लंघनों की पहचान करने के लिए रिपोर्ट-ओनली मोड का उपयोग करें। CSP उल्लंघन त्रुटियों के लिए ब्राउज़र कंसोल जांचें, फिर आवश्यक संसाधनों को अनुमति देने के लिए अपनी पॉलिसी अपडेट करें।
CSP उल्लंघन रिपोर्टिंग कैसे लागू करें?
एक report-uri डायरेक्टिव सेट करें जो CSP उल्लंघन डेटा के साथ POST अनुरोध प्राप्त कर सके। कई सेवाएं CSP उल्लंघन मॉनिटरिंग प्रदान करती हैं, या आप उल्लंघनों को लॉग करने के लिए अपना खुद का एंडपॉइंट बना सकते हैं।
क्या मैं एक ही पेज पर एकाधिक CSP पॉलिसी का उपयोग कर सकता हूं?
यदि एकाधिक CSP पॉलिसी परिभाषित की गई हैं (हेडर और meta tags के माध्यम से), तो सबसे प्रतिबंधात्मक पॉलिसी लागू होती है। एकाधिक विरोधाभासी पॉलिसी के बजाय एकल, अच्छी तरह से कॉन्फ़िगर की गई पॉलिसी का उपयोग करने की अनुशंसा की जाती है।
frame-src और frame-ancestors में क्या अंतर है?
frame-src नियंत्रित करता है कि आपका पेज iframes में कौन से URL एम्बेड कर सकता है, जबकि frame-ancestors नियंत्रित करता है कि कौन से URL आपके पेज को एम्बेड कर सकते हैं। frame-ancestors: 'none' का उपयोग करें ताकि आपका पेज कहीं भी एम्बेड न हो।
मुझे कितनी बार अपनी CSP पॉलिसी अपडेट करनी चाहिए?
जब भी आप नई थर्ड-पार्टी सेवाएं जोड़ें, साइट आर्किटेक्चर बदलें या CSP उल्लंघन रिपोर्ट प्राप्त करें तो अपनी CSP पॉलिसी की समीक्षा करें। नियमित सुरक्षा ऑडिट में CSP पॉलिसी समीक्षा शामिल होनी चाहिए।
क्या CSP सभी ब्राउज़र पर काम करती है?
CSP सभी आधुनिक ब्राउज़र द्वारा समर्थित है, हालांकि कुछ पुराने संस्करणों में नई CSP सुविधाओं के लिए सीमित समर्थन हो सकता है। CSP सुंदर ढंग से डिग्रेड होती है — असमर्थित डायरेक्टिव को अनदेखा किया जाता है।