فعال کردن Security Headers در Django
برای فعال کردن و تنظیم Security Headers در یک برنامه Django، میتوانید از تنظیمات middleware و settings استفاده کنید. در زیر چند Security Header کلیدی و روش اضا
فعال کردن و تنظیم Security Headers در Django
برای فعال کردن و تنظیم Security Headers در یک برنامه Django، میتوانید از تنظیمات middleware و settings استفاده کنید. در زیر چند Security Header کلیدی و روش اضافه کردن آنها به پروژه Django خود آورده شده است:
-
HTTP Strict Transport Security (HSTS):
- این سربرگ مرورگر را مجاب میکند تا تنها از ارتباطات HTTPS استفاده کند.
- در تنظیمات
settings.pyخود، مقدارSECURE_HSTS_SECONDSرا تنظیم کنید. مثلاً برای تنظیم آن به 1 سال:
SECURE_HSTS_SECONDS = 31536000
اگر میخواهید این تنظیمات به زیر دامنهها نیز اعمال شود، این خط را نیز اضافه کنید:
SECURE_HSTS_INCLUDE_SUBDOMAINS = True
X-Content-Type-Options:
- این سربرگ جلوگیری میکند که مرورگرها تیپ محتوایی فایلها را تشخیص داده و تغییر دهند.
- به تنظیمات
settings.pyخود، این خط را اضافه کنید:
SECURE_CONTENT_TYPE_NOSNIFF = True
X-XSS-Protection:
- این سربرگ به مرورگرها میگوید که چطوری با محتواهای مشکوک به حمله XSS برخورد کنند.
- به تنظیمات
settings.pyخود، این خط را اضافه کنید:
SECURE_BROWSER_XSS_FILTER = True
X-Frame-Options:
- این سربرگ کنترل میکند که صفحه شما میتواند در یک iframe توسط سایتهای دیگر نمایش داده شود یا خیر.
- به تنظیمات
settings.pyخود، این خط را اضافه کنید:
X_FRAME_OPTIONS = 'DENY'
Content Security Policy (CSP):
- Django به طور مستقیم پشتیبانی نمیکند، اما میتوانید از پکیج
django-cspاستفاده کنید. - نصب
django-cspبا دستور:
pip install django-csp
سپس به MIDDLEWARE در settings.py خود این خط را اضافه کنید:
'csp.middleware.CSPMiddleware',
و در نهایت، تنظیمات CSP را به settings.py اضافه کنید، مثلاً:
CSP_DEFAULT_SRC = ("'self'",)
افزودن Middleware:
- به مطمئن شوید که
SecurityMiddlewareدر تنظیماتMIDDLEWAREخود درsettings.pyفعال است:
MIDDLEWARE = [
# ...
'django.middleware.security.SecurityMiddleware',
# ...
]
🐍با اعمال این تنظیمات، Security Headers شما در پروژه Django فعال میشوند. برخی از این تنظیمات ممکن است با کد یا محتوای شما تعارض داشته باشند، بنابراین پس از اعمال هر تغییر، برنامه خود را بررسی کنید و اطمینان حاصل کنید که همچنان به درستی کار میکند.
دیدگاه های مربوط به این مقاله (برای ارسال دیدگاه در سایت حتما باید عضو باشید و پروفایل کاربری شما تکمیل شده باشد)