Django Postgres连接的强制SSL

Django Postgres连接的强制SSL,django,postgresql,Django,Postgresql,我想强制Django使用SSL连接到我的postgres数据库 指示我需要将sslmode='require'传递给psycopg2 connect调用。如何将其添加到Django的数据库参数中?将'OPTIONS':{'sslmode':'require'},添加到数据库配置中。例如: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': "d

我想强制Django使用SSL连接到我的postgres数据库


指示我需要将
sslmode='require'
传递给psycopg2 connect调用。如何将其添加到Django的数据库参数中?

'OPTIONS':{'sslmode':'require'},
添加到数据库配置中。例如:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': "db_name",
        'USER': "db_username",
        'PASSWORD': "db_password",
        'HOST': "db_host",
        'OPTIONS': {'sslmode': 'require'},
    },
}
postgres://DB_USERNAME:DB_PASSWORD@DB_HOST:PORT/DB_NAME?sslmode=require
同样,如果您正在使用数据库URL,例如通过django Enviro,请在数据库URL的末尾添加
?sslmode=require
。例如:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': "db_name",
        'USER': "db_username",
        'PASSWORD': "db_password",
        'HOST': "db_host",
        'OPTIONS': {'sslmode': 'require'},
    },
}
postgres://DB_USERNAME:DB_PASSWORD@DB_HOST:PORT/DB_NAME?sslmode=require
如果您正在使用,您可以传递为您设置选项的
ssl\u require=True

import dj_database_url
DATABASES['default'] = dj_database_url.config(ssl_require=True)

如果要配置数据库URL,可以将选项作为查询参数传递:

DATABASE_URL=postgres://USER:PASSWORD@HOST:PORT/NAME?sslmode=require
这对和都有效。 Django配置基于
dj_database_url
,因此您还可以传递
ssl_require=True
,正如@frmdstryr所说:

DATABASES = values.DatabaseURLValue(environ_required=True, ssl_require=True)

在哪里指定证书?