Hi,
thanks for the sample code.
But I questions because I got some problems to understand the code:
Collection<Map> principalMaps =
subject.getPrincipals().byType(Map.class);
if (CollectionUtils.isEmpty(principalMaps)) {
name = subject.getPrincipal().toString();
} else {
name = (String)
principalMaps.iterator().next().get("username");
}
When the map of the principals is empty, why and how do I get then the
logged user by getPrincipal? I would expect that a call of
getPrincipal() is null because the map is empty.
When the map is not empty, I got the first entry of the map as
principal. But for instance three users are logged in, how do I got the
correct one out of the map?
Am 13.04.2024 um 17:53 schrieb le...@flowlogix.com:
Hi,
Take a look at Shiro’s SpringBoot 3 example.
This should get your started:
https://github.com/apache/shiro/blob/main/samples/spring-boot-3-web/src/main/java/org/apache/shiro/samples/HelloController.java
<https://github.com/apache/shiro/blob/main/samples/spring-boot-3-web/src/main/java/org/apache/shiro/samples/HelloController.java>
Let us know if you have any further questions.
On Apr 13, 2024, at 10:29 AM, Helge Wiemann <h...@feedbager.de> wrote:
Hi all,
I am quite new to Shiro and currently moving from Spring Security to Shiro.
One question: After a user is successfully authenticated and authorized, what
is the best way to get the user in a Spring controller method?
With used Spring Security it was something like that:
publicModelAndView
index(*@AuthenticationPrincipalUsernamePasswordAuthenticationTokenauthenticatedUser*,
HttpServletRequest request, HttpServletResponse response) throwsIOException {
Best regards,
Helge