Какие были проблемы с MDC?Что вы подразумеваете под Spring security layer ?Я использовал этот подход в одном веб-приложении, и он работал хорошо.Поскольку MDC привязан к потоку, все операторы журналирования, поступающие из этого потока, будут иметь установленное имя пользователя, то есть уровень сервиса и репозитория.
Конечно, если некоторые пользователи обслуживаются с использованием потоков (например, асинхронная обработка сервлета 3.0,JMS-слушатели, исполнители), вам понадобится другой способ ввода имени пользователя в MDC в объединенных потоках.
Также смотрите мой ответ здесь .