Używam plątaniny klawiszy do ochrony mojego serwletu. Muszę dodawać nowe role i dynamicznie przypisywać je użytkownikom. Działa na keycloak używając interfejsu API administratora, ale nie wiem, jak uzyskać role dla konkretnego użytkownika w serwlecie.Uzyskiwanie ról użytkownika w aplikacji serwletu za pomocą placków klawiszowych
próbowałem tego rozwiązania, ale pojawia się zbiór pusty:
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
...
KeycloakSecurityContext context = (KeycloakSecurityContext)request.getAttribute(KeycloakSecurityContext.class.getName());
Set<String> roles = AdapterUtils.getRolesFromSecurityContext((RefreshableKeycloakSecurityContext) context);
...
}
Dodawanie ról do kontekstu bezpieczeństwa Keycloak to zły pomysł. Te role będą obecne tylko do odświeżenia tokena. – Scott