Embed presentation
Downloaded 172 times





![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOW_HOSTS SECRET_KEY ! $ python manage.py --settings=[setting path] $ django-admin.py --settings=[setting path] $ export DJANGO_SETTINGS_MODULE=[setting path]](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-6-2048.jpg)

![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOWED_HOSTS SECRET_KEY ! # Must be set when DEBUG = False ALLOWED_HOSTS = [ 'localhost', 'www.example.com', '.example.com', '*' # Avoid ! ]](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-8-2048.jpg)

![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOWED_HOSTS SECRET_KEY ! ! def get_env_variable(varname): try: return os.environ[varname] except KeyError: msg = "Set the %s environment variable" % var_name raise ImporperlyConfigured(msg)](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-10-2048.jpg)











































![Data Validation • Django Forms • User-Uploaded Content from django.utils.image import Image ! try: Image.open(file).verify() except Exception: # Pillow (or PIL) doesn't recognize it as an image. six.reraise(ValidationError, ValidationError( self.error_messages['invalid_image'], code='invalid_image', ), sys.exc_info()[2])](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-54-2048.jpg)

























The document outlines best practices for Django security, covering configurations, security features, and admin access. Key areas of focus include preventing XSS, CSRF, SQL injection, and clickjacking, as well as proper password storage and data validation. Recommendations also emphasize server hardening, timely updates, and careful management of environment variables.





![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOW_HOSTS SECRET_KEY ! $ python manage.py --settings=[setting path] $ django-admin.py --settings=[setting path] $ export DJANGO_SETTINGS_MODULE=[setting path]](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-6-2048.jpg)

![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOWED_HOSTS SECRET_KEY ! # Must be set when DEBUG = False ALLOWED_HOSTS = [ 'localhost', 'www.example.com', '.example.com', '*' # Avoid ! ]](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-8-2048.jpg)

![Django Configurations Designate Settings DEBUG / TEMPLATE_DEBUG ALLOWED_HOSTS SECRET_KEY ! ! def get_env_variable(varname): try: return os.environ[varname] except KeyError: msg = "Set the %s environment variable" % var_name raise ImporperlyConfigured(msg)](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-10-2048.jpg)











































![Data Validation • Django Forms • User-Uploaded Content from django.utils.image import Image ! try: Image.open(file).verify() except Exception: # Pillow (or PIL) doesn't recognize it as an image. six.reraise(ValidationError, ValidationError( self.error_messages['invalid_image'], code='invalid_image', ), sys.exc_info()[2])](https://image.slidesharecdn.com/djangoworkshop-securitybestpractices-140406010317-phpapp02/75/Two-scoops-of-Django-Security-Best-Practices-54-2048.jpg)























