问题描述
我现在将 celery.py 设置如下 -
os.environ.setdefault('DJANGO_SETTINGS_MODULE','project.settings')
app = Celery('project')
app.conf.timezone = 'Europe/London'
app.config_from_object('django.conf:settings')
app.conf.update(broKER_URL=str(os.getenv('REdis_URL')),CELERY_RESULT_BACKEND=str(os.getenv('REdis_URL')),broker_use_ssl = {
'ssl_cert_reqs': ssl.CERT_NONE
},redis_backend_use_ssl = {
'ssl_cert_reqs': ssl.CERT_NONE
})
app.autodiscover_tasks()
但是,当启动 celery 时,我收到此警告消息“连接到 redis 时设置 ssl_cert_reqs=CERT_NONE 意味着 celery 在连接时不会验证 redis 代理的身份。这使您容易受到中间人攻击。”
>我想添加我的 SSL 证书,但不完全确定如何添加或从何处获取信息。我知道 celery 配置的设置应该是这样的 -
os.environ.setdefault('DJANGO_SETTINGS_MODULE',broker_use_ssl = {
'keyfile': ????,'certfile': ????,'ca_certs': ????,'ssl_cert_reqs': ssl.CERT_required
},redis_backend_use_ssl = {
'keyfile': ????,'ssl_cert_reqs': ssl.CERT_required
})
app.autodiscover_tasks()
但我不确定从哪里获取密钥文件、证书文件和 ca_certs 的凭据。我正在使用 Heorku 托管创建 SSL 证书的位置。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)