Я пытаюсь использовать Confluent Avro Producer для получения данных со схемой, зарегистрированной в реестре схем. Для тестирования я установил режим совместимости как «НЕТ». Ниже приведен пример:
p = AvroProducer({'bootstrap.servers':
broker_list,'client.id':client_name,'security.protocol':'sasl_ssl','sasl.mechanism':'SCRAM-
SHA-512',
'sasl.username':'kafka_test_user','sasl.password':pwd,
'ssl.ca.location':certificate_location,
'schema.registry.url': 'https://kafka-schema-registry:8081',
'schema.registry.ssl.ca.location':sr_certificate_location},
default_value_schema=value_schema)
Когда я произвожу так, меняя схему (например, изменяя поле от целого числа до строки) внутри value_schema, новая версия схемы регистрируется внутри схемы реестр. Я знаю, что это потому, что я установил «НЕТ» в качестве режима совместимости. Однако я не хочу, чтобы продюсеру было позволено изменять схемы. Если он хочет изменить свою схему, это следует делать только суперпользователю, который может использовать некоторые вызовы REST для внесения изменений. Как я мог настроить такой механизм авторизации? Разве я не должен предоставлять доступ "SUBJECT_WRITE" для производителя? У меня такое чувство, что если я не предоставлю такой доступ, то, по сути, продюсер вообще не сможет использовать AvroProducer.
Не могли бы вы помочь / уточнить это? Заранее спасибо