Új hozzászólás Aktív témák

  • Zahze

    csendes tag

    Sziasztok! Segítséget szeretnék kérni Spring Security témakörben.

    Röviden: Rest service (SpringBoot projekt), H2 adatbázisban tárol adatokat.
    Az adatbázis elérés illetve a Controller mapping eddig jól működött, mindent elértem, mindent úgy tárolt ahogy szerettem volna.

    A hiba a security "berakása" után keletkezett.

    Feldobtam pastebin-re a szerintem releváns kódrészletet. Ha kihagytam volna valamit akkor szóljatok és pótlom.

    Értelmezésem szerint ennek úgy kéne működnie hogy a "szabad elérésű" mapping-eket eléri bárki (megtörténik), a /blogposts -t csak USER role-al rendelkező blogger éri el, a /blogposts/** -t pedig csak ADMIN role-al rendelkező.
    Amikor el akarom érni a /blogposts-ot akkor ki is dobja automatikusan a bejelentkező oldalt, bejelentkezek, tovább enged (nem írja ki hogy nem jó felhasználó/jelszó, amit rossz adat megadásakkor kiír), de kapásból egy HTTP Status 403 – Forbidden oldalra irányít
    egyéb adat az oldalról:
    (Type Status Report
    Description The server understood the request but refuses to authorize it.)

    Nem tudom hogy miért nem authentikálja be, vagy hogy mi is történik igazából...
    Lekérdezéskor kiírattam az adatbázisból érkező adatokat, és minden flottul megjön...

    Megj.: pastebin-re felrakott kódból kiszedtem azt a részt, de ha a UserDetailsImp-ben a getPassword metódust a pastebin-es kód állapotába hagyom akkor a hibaüzenet a PasswordEncoder null értékére háklis... olvastam hogy ha a password-ba szerepel a {noop} akkor az egy jelzés hogy ne próbálja meg dekódolni a jelszót, így a UserDetailsImp-be erre írtam át:
    @Override
    public String getPassword() {
    return "{noop}"+user.getPassword();
    }

    Mivel a felh/jelszó párost így is elfogadja és jelen pillanatba kissebb bajom is nagyobb a nem enkódolt jelszónál így ezt most még ígyhagytam.

    A netet már szétböngésztem, a javaslatok alapján változtattam is a kódot de nem jártam sikerrel így most az elejétől próbálom meg megint.. :O

    Mit rontottam el ? :F

    [Kód]

    Előre is köszi a segítséget.

    [ Szerkesztve ]

    Talk is cheap. Show me the code - Linus Torvalds

Új hozzászólás Aktív témák