Микросервисная архитектура, SpringBoot, Zuul

169
11 октября 2018, 15:50

Помогите понять как это должно выглядеть и работать. У меня есть gateway и есть сервис который занимается бизнес логикой (для примера хватит одного, в проекте их больше). Я хочу сделать что бы gateway занимался проверкой прав у того или иного юзера и вообще занимался определением юзера. В обычном монолите я бы просто навесил свою какую то аннотацию (@RolesAllowed, @FeaturesAllowed) на метод контроллера

@GetMapping(path = "/some-path")
@RolesAllowed("USER")
@FeaturesAllowed({"PRINT"});
public Object getSomeObject(UserState userState) {
    // do something with data from user state
    return null;
}

Но как должна выглядеть эта проверка на уровне gateway? Ведь там навешивать аннотации не на что, и делать получается только через фильтра?

И еще одна не понятная мне вешь для проверки всей нужной информации в gateway мне необходим UserState, за которым я полезу в базу, но этот же UserState мне нужен и в контроллерах микросервисов, для получения той же id юзера и еще кое какой информации. Мне его нужно передавать из gateway или же формировать его непосредственно в самом микросервисе? Откуда должен браться этот UserState в методах контроллера?

READ ALSO
Не конфигурируется Hibernate

Не конфигурируется Hibernate

Весь день уже мучаюсь, не знаю что делать

213
SpringBoot Single Page Application

SpringBoot Single Page Application

Начал делать приложение и пытаюсь сделать single page applicationДля этого я создал один маппинг на "/":

181
Интеграция Apache2 и Tomcat 9

Интеграция Apache2 и Tomcat 9

Установил Apache, Tomcat и mod_jkЧасть worker

207
Как улучшить запросы в контроллере и форме для вложенных объектов?

Как улучшить запросы в контроллере и форме для вложенных объектов?

Я новичок в Spring MVC и thymeleafНаписал работающий код, но есть подозрение, что я использую костыли в контроллере и форме (результат поверхностного...

186