Контроллер Spring (или любой другой компонент контейнера сервлета в этом отношении), с или без Spring-security, легко аутентифицируется с контейнером EJB в зависимости от того, как вы настроили контейнер сервлета.Вы должны проверить документацию вашего сервлет-контейнера о том, как настроить распространение контекста безопасности или установить уровень доверия с контейнером EJB в режиме запуска.
Пожалуйста, добавьте более подробную информацию о вашей конфигурации (контейнеры EJB и сервлета, версии,или нет, они находятся в одном месте, где происходит аутентификация и т. д.), чтобы мы могли предоставить более подробную информацию.
Редактировать 20 февраля. Распространение контекста безопасности
Предполагается, что вы получаете контекст, используя конструктор без аргументов:
InitialContext context = new InitialContext();
Вы можете быть уверены в распространении безопасности в OpenEJB.Никаких других настроек не требуется.Как только вы выполняете поиск компонента с использованием контекста, контекст безопасности (пользователь и роли) передается в контейнер EJB.
Так что вам просто нужно сосредоточиться на безопасности в tomcat.Я еще не понял, как вы настроили кота.Можете ли вы показать дополнительную конфигурацию пользователей, ролей, области и т. Д. В tomcat?
Редактировать 20 февраля. Тест на tomcat
Пожалуйста, посмотрите Как получить пользователяроли в JSP / Servlet и первый тест в JSP / Servlet, чтобы убедиться, что вы правильно получаете участника и роли пользователя.После того, как этот тест пройден, вы можете проверить аннотированный EJB-метод безопасности для проверки распространения безопасности.