summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorAndi Albrecht <albrecht.andi@gmail.com>2014-05-18 09:56:55 +0200
committerTim Graham <timograham@gmail.com>2014-09-10 11:14:20 -0400
commit00535e8e6b402cab29ea3dbb7b4cc470f9839678 (patch)
tree4b756fd4fdfdefb3a756439ed0d725b4a38f4e16 /docs
parent61f56e239f6747589046a3da9c294860e0ff1196 (diff)
Fixed #20743 -- Added support for keyfile/certfile in SMTP connections.
Thanks jwmayfield, serg.partizan, and Wojciech Banaƛ for work on the patch.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/settings.txt34
-rw-r--r--docs/releases/1.8.txt4
-rw-r--r--docs/spelling_wordlist1
-rw-r--r--docs/topics/email.txt12
4 files changed, 48 insertions, 3 deletions
diff --git a/docs/ref/settings.txt b/docs/ref/settings.txt
index 6c380dd2c3..00f9a1e629 100644
--- a/docs/ref/settings.txt
+++ b/docs/ref/settings.txt
@@ -1228,6 +1228,38 @@ see the explicit TLS setting :setting:`EMAIL_USE_TLS`.
Note that :setting:`EMAIL_USE_TLS`/:setting:`EMAIL_USE_SSL` are mutually
exclusive, so only set one of those settings to ``True``.
+.. setting:: EMAIL_SSL_CERTFILE
+
+EMAIL_SSL_CERTFILE
+------------------
+
+.. versionadded:: 1.8
+
+Default: ``None``
+
+If :setting:`EMAIL_USE_SSL` or :setting:`EMAIL_USE_TLS` is ``True``, you can
+optionally specify the path to a PEM-formatted certificate chain file to use
+for the SSL connection.
+
+.. setting:: EMAIL_SSL_KEYFILE
+
+EMAIL_SSL_KEYFILE
+-----------------
+
+.. versionadded:: 1.8
+
+Default: ``None``
+
+If :setting:`EMAIL_USE_SSL` or :setting:`EMAIL_USE_TLS` is ``True``, you can
+optionally specify the path to a PEM-formatted private key file to use for the
+SSL connection.
+
+Note that setting :setting:`EMAIL_SSL_CERTFILE` and :setting:`EMAIL_SSL_KEYFILE`
+doesn't result in any certificate checking. They're passed to the underlying SSL
+connection. Please refer to the documentation of Python's
+:func:`python:ssl.wrap_socket` function for details on how the certificate chain
+file and private key file are handled.
+
.. setting:: FILE_CHARSET
FILE_CHARSET
@@ -2926,6 +2958,8 @@ Email
* :setting:`EMAIL_HOST_PASSWORD`
* :setting:`EMAIL_HOST_USER`
* :setting:`EMAIL_PORT`
+* :setting:`EMAIL_SSL_CERTFILE`
+* :setting:`EMAIL_SSL_KEYFILE`
* :setting:`EMAIL_SUBJECT_PREFIX`
* :setting:`EMAIL_USE_TLS`
* :setting:`MANAGERS`
diff --git a/docs/releases/1.8.txt b/docs/releases/1.8.txt
index 2c99172f9b..999b0ef295 100644
--- a/docs/releases/1.8.txt
+++ b/docs/releases/1.8.txt
@@ -140,6 +140,10 @@ Email
* :ref:`Email backends <topic-email-backends>` now support the context manager
protocol for opening and closing connections.
+* The SMTP email backend now supports ``keyfile`` and ``certfile``
+ authentication with the :setting:`EMAIL_SSL_CERTFILE` and
+ :setting:`EMAIL_SSL_KEYFILE` settings.
+
File Storage
^^^^^^^^^^^^
diff --git a/docs/spelling_wordlist b/docs/spelling_wordlist
index 8fbe5fd20d..60b07e9734 100644
--- a/docs/spelling_wordlist
+++ b/docs/spelling_wordlist
@@ -426,6 +426,7 @@ Palau
params
parens
pdf
+PEM
perl
permalink
pessimization
diff --git a/docs/topics/email.txt b/docs/topics/email.txt
index eaf953dada..a7a9329974 100644
--- a/docs/topics/email.txt
+++ b/docs/topics/email.txt
@@ -445,13 +445,14 @@ can :ref:`write your own email backend <topic-custom-email-backend>`.
SMTP backend
~~~~~~~~~~~~
-.. class:: backends.smtp.EmailBackend([host=None, port=None, username=None, password=None, use_tls=None, fail_silently=False, use_ssl=None, timeout=None, **kwargs])
+.. class:: backends.smtp.EmailBackend([host=None, port=None, username=None, password=None, use_tls=None, fail_silently=False, use_ssl=None, timeout=None, ssl_keyfile=None, ssl_certfile=None, **kwargs])
This is the default backend. Email will be sent through a SMTP server.
The server address and authentication credentials are set in the
:setting:`EMAIL_HOST`, :setting:`EMAIL_PORT`, :setting:`EMAIL_HOST_USER`,
- :setting:`EMAIL_HOST_PASSWORD`, :setting:`EMAIL_USE_TLS` and
- :setting:`EMAIL_USE_SSL` settings in your settings file.
+ :setting:`EMAIL_HOST_PASSWORD`, :setting:`EMAIL_USE_TLS`,
+ :setting:`EMAIL_USE_SSL`, :setting:`EMAIL_SSL_CERTFILE` and
+ :setting:`EMAIL_SSL_KEYFILE` settings in your settings file.
The SMTP backend is the default configuration inherited by Django. If you
want to specify it explicitly, put the following in your settings::
@@ -481,6 +482,11 @@ SMTP backend
If unspecified, the default ``timeout`` will be the one provided by
:func:`socket.getdefaulttimeout()`, which defaults to ``None`` (no timeout).
+ .. versionchanged:: 1.8
+
+ The ``ssl_keyfile`` and ``ssl_certfile`` parameters and
+ corresponding settings were added.
+
.. _topic-email-console-backend:
Console backend