Авторизация в Kafka: управление изменениями, когда у тебя тысячи клиентов и миллионы RPS
У нас были две сотни брокеров, шесть тысяч топиков, клиенты на четырех языках программирования, миллионы сообщений в секунду и целое море различных паттернов использования Kafka. А также жесткие требования по latency, тонна SLA и желание сделать гибкую систему аутентификации и авторизации для сервисов. Не то, чтобы все это было категорически необходимо для начала этой истории, но если уж начал рассказывать про асинхронные взаимодействия, то иди в этом до конца.
Единственное, что меня беспокоило — это авторизация. В мире нет ничего более желанного для ИБ и ненавистного разработчиками, чем контроль доступа. И я знал, что довольно скоро мы доберёмся и до этого вопроса.
Если вам интересно распутать клубок асинхронного взаимодействия тысяч продюссеров и консьюмеров, узнать, где документация Kafka нас обманывает, а librdkafka и Confluent.Kafka не могут договориться, и как один потерянный пакет может привести к Permission denied, добро пожаловать под хабракат. Эта история для тех, кто догадался, что недостаточно было «просто включить флажок в конфиге».
Привет, Хабр! Меня зовут Виктор Корейша и я — руководитель направления Managed Services в Ozon. Я и моя команда, в том числе, отвечаем за всю инфраструктуру асинхронного взаимодействия между сервисами, которую строим на базе Kafka. А ещё я ведущий подкастов «Кода кода» и «Три тимлида заходят в бар».
Эта статья написана по мотивам моего доклада для DevOps Conf 2025. Расскажу нашу историю про внедрение авторизации и аутентификации в Kafka. Инженеры по эксплуатации найдут в ней обзор решений реализации SASL-сервера, разработчики — историю о конфликтах в production-ready клиентах, архитекторы — любопытные кейсы взаимодействия высоконагруженных систем, ну а менеджеры — эпос о внедрении технически сложных изменений в больших компаниях.
Источник: Хабрахабр
Похожие новости
- Почему безопасность на этапе релиза обходится в десять раз дороже и как это исправить
- Как пчёлы, муравьи и рыбы привели нас к мультиагентному ИИ — и почему его так трудно защитить
- ИБ глазами архитектора: между «карточным домиком» и «бетонным саркофагом»
- ИИ-браузер: сотрудник, который ходит по сайтам, кликает баннеры и верит скидкам 90%
- Как одна кривая регулярка может «положить» ваш сервер: разбираем уязвимость ReDoS
- Я открыл боевую базу своего clipboard-sync, чтобы показать, что он знает о вашем пароле. Ответ: ничего
- Интернет выключили целиком: офлайн-чат на Bluetooth и Wi-Fi Direct, и почему мы не обещаем mesh на весь город
- Muxalma — обмен пакетами данных через общее хранилище
- Western Digital создала жесткий диск с защитой от квантовых атак: разбираем, как он работает
- Как платформа управления AI-агентами будет справляться с нагрузкой: архитектура без магии