Професионална програма
Loading...
ibosev avatar ibosev 54 Точки

Spring Security Login

Здравейте,

имам въпрос относно Spring Security. Така както го разбирам, с конфигуирацията, която беше показана на лекцията, нямаме достъп до post заявката, която правим за логин на даден юзър - спринг си прави магиите отзад и връща UserDetails, не можем да сложим @PostMapping анотация в контролера и да оперираме със сесията или каквото и да е. В контролерите имаме достъп до Principal, който държи само username.

Конкретно въпросът ми е как при логин да запазя в сесията (или другаде) друга информация от юзъра, която се държи в ентитито - например кога се е регистрирал, рождена дата или друго? Да кажем, че искам в navbar-а, след успешен login, да се изписва Hello, {fullName}, което го няма в Principal и трябва да правя нова завка към базата. 

Тагове:
0
Java MVC Frameworks - Spring
vancho avatar vancho 430 Точки

Не става ли така? Примерно да ти даде logout само ако си се логнал.

<div sec:authorize="hasAnyRole('ADMIN', 'CHEMIST', 'MEDIC')" class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
        <li class="nav-item">
            <a class="nav-link" th:href="@{/logout}">logout</a>
        </li>
    </ul>
</div>
0
22/03/2017 21:08:09
ibosev avatar ibosev 54 Точки

Явно не съм успял да обясня както трябва. Това, което си показал е при дадена роля дали да се показва някакъв хтмл елемент или не.

Искам в хедъра да сложа информация, която я има в User entity-то. Примерно fullName полето. Най-елементарното е да го сложа в Session-а. Може и в Cookie. И оттам да си го дам на navbar-а. Трябва да има нещо много елементарно като решение, но не го знам :)

0
sukalu88 avatar sukalu88 11 Точки

The article is easy to understand, detailed and meticulous! I had a lot of harvest after seeing this post from you! I found it interesting, your article gave me a new perspective! I have read many other articles on the same topic, but yours convinced me! fireboy and watergirl

0
goalken avatar goalken 1 Точки

I really like reading through a post that can make people think. Also, many thanks for permitting me to comment! basketball legends

0