Bevezetés a tavaszi biztonsági taglibekbe

1. Áttekintés

Ebben az oktatóanyagban megnézzük a Spring Security Taglibs programot, amely alapvető támogatást nyújt a biztonsági információkhoz való hozzáféréshez és a biztonsági megszorítások alkalmazásához a JSP-kben.

2. Maven-függőségek

Először tegyük hozzá a spring-security-taglibs függőséget a sajátunkhoz pom.xml:

 org.springframework.security spring-security-taglibs 5.2.2.FELHASZNÁLÁS 

3. A Taglibek deklarálása

Most, mielőtt használhatnánk a címkéket, be kell importálnunk a taglibet a JSP fájlunk tetején:

Ennek hozzáadása után megadhatjuk a Spring Security címkéit a mp előtag.

4. A engedélyezzék Címke

4.1. hozzáférés Kifejezések

Alkalmazásainkban lehetnek olyan információk, amelyeket csak bizonyos szerepkörök vagy felhasználók esetében szabad megjeleníteni.

Ebben az esetben használhatjuk a engedélyezzék címke:

 Bejelentkezés Kijelentkezés 

Ezenkívül ellenőrizhetjük, hogy egy hitelesített felhasználó rendelkezik-e meghatározott szerepekkel:

 Felhasználók kezelése 

És bármilyen tavaszi biztonsági kifejezést használhatunk értékként hozzáférés:

  • hasAnyRole („ADMIN”, „USER”) visszatér igaz ha az aktuális felhasználó rendelkezik a felsorolt ​​szerepek bármelyikével
  • isAnonymous () visszatér igaz ha a jelenlegi megbízó névtelen felhasználó
  • isRememberMe () visszatér igaz ha a jelenlegi megbízó emlékszem rám
  • isFullyAuthenticated () visszatér igaz ha a felhasználó hitelesített és nem névtelen, és nem emlékszik rám

4.2. url

Ettől eltekintve ellenőrizhetjük azokat a felhasználókat, akik jogosultak kéréseket küldeni az egyes URL-ekre:

 Felhasználók kezelése 

4.3. Hibakeresés

Vannak esetek, amikor nagyobb ellenőrzést akarunk a felhasználói felület felett, például tesztelési forgatókönyvek esetén. Ahelyett, hogy a Spring Security kihagyná ezeket az illetéktelen szakaszokat, beállíthatjuk tavasz.biztonság.kikapcsolhatóUISbiztonság=igaz mondjuk a miénkben alkalmazás.tulajdonságok fájl.

Amikor ezt megtesszük, a engedélyezzék a címke nem rejti el a tartalmát. Ehelyett be fogja csomagolni a tartalmat helyett. Ezután testreszabhatjuk a megjelenítést néhány CSS-sel.

Ne feledje, hogy a tartalom CSS-en keresztüli elrejtése nem biztonságos! A felhasználó egyszerűen megtekintheti a forrást, hogy megismerje az illetéktelen tartalmat.

5. A hitelesítés Címke

Máskor a bejelentkezett felhasználó részleteit szeretnénk megjeleníteni, például valami olyat mondani, hogy „Welcome Back, Carol!” az oldalon.

Ehhez a hitelesítés címke:

 Üdv újra, 

6. A csrfInput Címke

Remélhetőleg a Spring Security CSRF védelme engedélyezve van az alkalmazásunkban!

Ha mégis, akkor a Spring Security már beilleszt egy CSRF rejtett űrlap bemenetet címkék nekünk.

De ha használni szeretnénk helyette, manuálisan megadhatjuk, hogy a Spring Security hova helyezze el ezt a rejtett beviteli mezőt csrfInput:

  Szövegmező:

Ha a CSRF védelem nincs engedélyezve, ez a címke nem ad ki semmit.

7. Az csrfMetaTags Címke

Vagy, ha a CSRF tokent szeretnénk elérni Javascriptben, valószínűleg a tokent metatagként szeretnénk beszúrni.

Megtehetjük ezt a csrfMetaTags címke:

  JavaScript CSRF-védelemmel var csrfParameter = $ ("meta [name = '_ csrf_parameter']"). Attr ("content"); var csrfHeader = $ ("meta [név = '_ csrf_header']"). attr ("tartalom"); var csrfToken = $ ("meta [név = '_ csrf']"). attr ("tartalom"); ... 

Ismételten, ha a CSRF védelem nincs engedélyezve, ez a címke nem ad ki semmit.

8. Következtetés

Ebben a gyors cikkben néhány általános Spring Security taglib használati esetre összpontosítottunk.

És, mint megtudtuk, nagyon hasznosak a hitelesítés és az autoritás-tudatos JSP-tartalmak megjelenítéséhez.

Minden példa, mint mindig, a Github oldalon található.


$config[zx-auto] not found$config[zx-overlay] not found