Сейчас я пытаюсь использовать действительный сертификат организации, но некоторые как я не могу заставить его работать,
Сертификат выглядит следующим образом: 1 — файл ключа в формате ключа
1 — файл сертификата в формате crt, который имеет следующие блоки ->
-----НАЧАЛО ЧАСТНОГО КЛЮЧА -----
----- КОНЕЦ ЧАСТНОГО КЛЮЧА -----
----- НАЧАТЬ СЕРТИФИКАТ -----
----- КОНЕЦ СЕРТИФИКАТА -----
----- НАЧАТЬ СЕРТИФИКАТ -----
----- КОНЕЦ СЕРТИФИКАТА -----
теперь не могли бы вы помочь мне, что именно мне нужно передать в конфигурации RabbitMQ
Код: Выделить всё
ssl_options.cacertfile = filename
ssl_options.certfile = filename
ssl_options.keyfile = filename
Код: Выделить всё
import os
import ssl
class Publisher:
def __init__(self):
self.rabbitmq_host = 'queue.orgname.com'
self.rabbitmq_port = 5671
self.rabbitmq_username = 'username'
self.rabbitmq_password = 'pw'
self.connection = None
self.channel = None
self.connect()
def connect(self):
credentials = pika.PlainCredentials(self.rabbitmq_username, self.rabbitmq_password)
ssl_context = ssl.create_default_context()
ssl_context.load_cert_chain(certfile='path to ca certificate file')
#ssl_context.options = ssl.OP_NO_TLSv1_2 # optional, to disable older TLS versions
#ssl_context.verify_mode = ssl.CERT_REQUIRED
#ssl_context.check_hostname = False
#ssl_context.verify_mode = ssl.CERT_NONE
parameters = pika.ConnectionParameters(self.rabbitmq_host, self.rabbitmq_port, '/', credentials, ssl_options=pika.>
self.connection = pika.BlockingConnection(parameters)
self.channel = self.connection.channel()
def publish(self, queue, payload):
print(queue)
try:
properties = pika.BasicProperties(delivery_mode=2)
self.channel.basic_publish(exchange='', routing_key=queue, body=payload, properties=properties)
except Exception as e:
print(f"Couldn't publish {e}")
def close_connection(self):
if self.connection.is_open:
self.connection.close()
if __name__ == "__main__":
p = Publisher()
print(p.channel)
p.publish('queuename', "hello world")
Пожалуйста, помогите.
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/784 ... n-rabbitmq