Spring Boot 2 Actuator / конечная точка работоспособности не показывает дополнительную информацию при использовании аутентификации - PullRequest
0 голосов
/ 28 декабря 2018

Я в процессе миграции проекта из Spring Boot 1.X в Spring Boot 2.X.Единственное, что осталось, и это доставляет мне неприятности - это Spring Boot Actuator.

В Spring Boot 1.X при достижении конечной точки / health с учетными данными вы обычно получаете большеподробный список индикаторов, как например, результат по умолчанию org.springframework.boot.actuate.health.DiskSpaceHealthIndicator .

{ "status": "UP", "diskSpace": { "status": "UP", "total": 1000240963584, "free": 909162590208, "threshold": 10485760 } }

Я бы также увиделЗдесь также определяются пользовательские индикаторы работоспособности.

Теперь, когда я использую более новую версию библиотеки Actuator, я больше не получаю эту дополнительную информацию (при предоставлении учетных данных).Все, что я вижу, это:

{ "status": "UP" }

Сначала я подумал, что, возможно, я неправильно установил учетные данные, но преднамеренно предоставив неверные учетные данные, я получаю 401 Unauthorized .Так что это не может быть аутентификация.

Я немного углубился в отладчик и увидел, что бин DiskSpaceHealthIndicator фактически создается вместе со всеми другими моими пользовательскими индикаторами.Но, похоже, они не регистрируются Spring Boot, чтобы я не видел их при достижении конечной точки / health .

Есть предложения?

1 Ответ

0 голосов
/ 28 декабря 2018

Проблема была исправлена ​​добавлением:

management.endpoint.health.show-details=when_authorized

, как предложил @ValentinCarnu.

И это то, что я потом нашел в документации: https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html#production-ready-health

Значением по умолчанию является , никогда .Пользователь считается авторизованным, когда он находится в одной или нескольких ролях конечной точки.Если конечная точка не имеет настроенных ролей (по умолчанию), все аутентифицированные пользователи считаются авторизованными.Роли можно настроить с помощью свойства management.endpoint.health.roles.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...