summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2019-09-07 09:52:10 +0200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-09-09 08:15:26 +0200
commit05d0eca635853564c57e639ac5590674a7de2ed6 (patch)
treeb1c129224e58ed5cda1a2aad142b06be96c4d144 /docs
parent5495ea3ae0a64f61ae15f44970ea91ed7ce17a38 (diff)
Fixed #30426 -- Changed X_FRAME_OPTIONS setting default to DENY.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/checks.txt5
-rw-r--r--docs/ref/clickjacking.txt12
-rw-r--r--docs/ref/settings.txt5
-rw-r--r--docs/releases/3.0.txt9
4 files changed, 24 insertions, 7 deletions
diff --git a/docs/ref/checks.txt b/docs/ref/checks.txt
index 88b09b008d..4da932720e 100644
--- a/docs/ref/checks.txt
+++ b/docs/ref/checks.txt
@@ -420,9 +420,8 @@ The following checks are run if you use the :option:`check --deploy` option:
* **security.W019**: You have
:class:`django.middleware.clickjacking.XFrameOptionsMiddleware` in your
:setting:`MIDDLEWARE`, but :setting:`X_FRAME_OPTIONS` is not set to
- ``'DENY'``. The default is ``'SAMEORIGIN'``, but unless there is a good reason
- for your site to serve other parts of itself in a frame, you should change
- it to ``'DENY'``.
+ ``'DENY'``. Unless there is a good reason for your site to serve other parts
+ of itself in a frame, you should change it to ``'DENY'``.
* **security.W020**: :setting:`ALLOWED_HOSTS` must not be empty in deployment.
* **security.W021**: You have not set the
:setting:`SECURE_HSTS_PRELOAD` setting to ``True``. Without this, your site
diff --git a/docs/ref/clickjacking.txt b/docs/ref/clickjacking.txt
index 88b45fd63b..c7cac17ca4 100644
--- a/docs/ref/clickjacking.txt
+++ b/docs/ref/clickjacking.txt
@@ -67,10 +67,15 @@ This middleware is enabled in the settings file generated by
:djadmin:`startproject`.
By default, the middleware will set the ``X-Frame-Options`` header to
-``SAMEORIGIN`` for every outgoing ``HttpResponse``. If you want ``DENY``
-instead, set the :setting:`X_FRAME_OPTIONS` setting::
+``DENY`` for every outgoing ``HttpResponse``. If you want any other value for
+this header instead, set the :setting:`X_FRAME_OPTIONS` setting::
- X_FRAME_OPTIONS = 'DENY'
+ X_FRAME_OPTIONS = 'SAMEORIGIN'
+
+.. versionchanged:: 3.0
+
+ The default value of the :setting:`X_FRAME_OPTIONS` setting was changed
+ from ``SAMEORIGIN`` to ``DENY``.
When using the middleware there may be some views where you do **not** want the
``X-Frame-Options`` header set. For those cases, you can use a view decorator
@@ -116,6 +121,7 @@ Browsers that support ``X-Frame-Options``
-----------------------------------------
* Internet Explorer 8+
+* Edge
* Firefox 3.6.9+
* Opera 10.5+
* Safari 4+
diff --git a/docs/ref/settings.txt b/docs/ref/settings.txt
index 493d99e92a..aa9bc1ddb8 100644
--- a/docs/ref/settings.txt
+++ b/docs/ref/settings.txt
@@ -2795,12 +2795,15 @@ and :setting:`MONTH_DAY_FORMAT`.
``X_FRAME_OPTIONS``
-------------------
-Default: ``'SAMEORIGIN'``
+Default: ``'DENY'``
The default value for the X-Frame-Options header used by
:class:`~django.middleware.clickjacking.XFrameOptionsMiddleware`. See the
:doc:`clickjacking protection </ref/clickjacking/>` documentation.
+.. versionchanged:: 3.0
+
+ In older versions, the default value is ``SAMEORIGIN``.
Auth
====
diff --git a/docs/releases/3.0.txt b/docs/releases/3.0.txt
index a105abfae6..1fc64a442d 100644
--- a/docs/releases/3.0.txt
+++ b/docs/releases/3.0.txt
@@ -535,6 +535,15 @@ upload handler is used.
``FILE_UPLOAD_PERMISSION`` now defaults to ``0o644`` to avoid this
inconsistency.
+New default value for the ``X_FRAME_OPTIONS`` setting
+-----------------------------------------------------
+
+In older versions, the :setting:`X_FRAME_OPTIONS` setting defaults to
+``'SAMEORIGIN'``. To make Django projects more secure by default,
+:setting:`X_FRAME_OPTIONS` now defaults to ``'DENY'``. If your site uses frames
+of itself, you will need to explicitly set ``X_FRAME_ORIGINS = 'SAMEORIGIN'``
+for them to continue working.
+
Miscellaneous
-------------