Получить доступ

Что важно учесть при выставлении наружу эндпоинтов Actuator?

MiddleSpring Boot и ActuatorSpring Boot
Ещё спрашивают так:
  • Какие эндпоинты Actuator можно открывать наружу?
Коротко

Наружу по HTTP по умолчанию открыт только health. Остальное (env, heapdump, loggers, configprops, threaddump) раскрывает секреты и внутренности — включают осознанно, на отдельном порту (management.server.port) и за авторизацией.

  • heapdump содержит пароли и данные пользователей из памяти
  • Детали health наружу — show-details: never или when-authorized
  • Prometheus-эндпоинт — только для сети мониторинга

А ещё Открытый /actuator/env — частая находка пентестеров

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Умолчание намеренно консервативное, но разработчики часто ставят exposure.include=* «чтобы всё работало» и забывают откатить — так наружу утекают строки подключения, значения свойств и возможность снять дамп кучи. Правильная схема: включать только нужные эндпоинты, вынести их на management.server.port, закрытый на уровне сети, и дополнительно защитить через Spring Security. Отдельная деталь про health: подробности состояния по умолчанию скрыты, и show-details=always стоит включать только для внутреннего доступа, иначе наружу уйдут адреса баз и брокеров.

Что хотят услышать

  • Опасные эндпоинты и почему.
  • Отдельный порт, авторизация, минимум наружу.

Частые ошибки

  • Ставить exposure.include=* и оставлять так в production.
  • Считать, что Actuator защищён по умолчанию.

Проверьте себя

Несколько верных вариантов. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✓По умолчанию через HTTP открыт только health — остальные включаются явно через management.endpoints.web.exposure.include
  • ✓Эндпоинты вроде env, configprops и heapdump раскрывают конфигурацию и содержимое памяти, поэтому наружу их не выпускают
  • ✓Management-эндпоинты обычно выносят на отдельный порт, недоступный из интернета
  • ✗Actuator сам требует аутентификацию для всех эндпоинтов независимо от настроек

Что спросят дальше

  • Чем опасен эндпоинт heapdump?
  • Как показывать детали health только внутренним потребителям?

Разбор темы

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем