通过SSL将Django连接到RDS时拒绝访问

通过SSL将Django连接到RDS时拒绝访问,django,amazon-aurora,Django,Amazon Aurora,我正在尝试将Django连接到AWS Aurora服务器(RDS Aurora 5.6.10a),但我得到了 django.db.utils.OperationalError: (1045, "Access denied for user 'admin'@'xx.xx.xx.xx' (using password: YES) 在Django settings.py中,我使用了以下设置 DATABASES = { 'default': { 'ENGINE': 'djang

我正在尝试将Django连接到AWS Aurora服务器(RDS Aurora 5.6.10a),但我得到了

django.db.utils.OperationalError: (1045, "Access denied for user 'admin'@'xx.xx.xx.xx' (using password: YES)
在Django settings.py中,我使用了以下设置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': MYSQL_DATABASE,
        'USER': MYSQL_USER,
        'PASSWORD': MYSQL_PASSWORD,
        'HOST': MYSQL_SERVER,
        'PORT': '3306',
        'OPTIONS': {
            'ssl': {
                'ca': '/Users/mac-user/workspace/project/settings/rds-combined-ca-bundle.pem',
            }
        }
    }
}
我也研究过类似的问题,比如,但不起作用

我还尝试使用
mysql-connector-python
mysql.connector.django
作为数据库引擎进行连接,并确保设置了正确的配置(设置
OPTIONS
ssl\u-ca
ssl\u-verify\u-cert
),但我也遇到了类似的错误:

 mysql.connector.errors.ProgrammingError: 1045 (28000): Access denied for user 'admin'@'xx.xx.xx.xx' (using password: YES)
我尝试使用PHP和命令行连接到数据库,效果很好:

mysql -h '<host>' -u '<username>' -p'<password>' --ssl-ca='<SSL_certificate_absolute_path>'
mysql-h'-u'-p'-sslca=''

我是否缺少Django的任何配置?

我对您的问题没有直接的答案,但显然,当MySQL客户端没有启用ssl(如MySQL命令行和您的PHP解决方案)时,Aurora没有做出有意义的(或正确的)响应


因此,我的建议是以某种方式强制Django使用的MySQL客户端使用SSL连接,显然默认情况下它没有启用/强制(您使用的选项可能不够)。

我没有直接回答您的问题,但显然,当MySQL客户端没有启用SSL时,Aurora没有做出有意义的响应(或正确的响应)(比如MySQL命令行和PHP解决方案)

因此,我的建议是以某种方式强制Django使用的MySQL客户端使用SSL连接,显然默认情况下它没有启用/强制(您使用的选项可能不够)