Úvod do jarných bezpečnostných značiek

1. Prehľad

V tomto tutoriáli sa pozrieme na Spring Security Taglibs, ktoré poskytujú základnú podporu pre prístup k bezpečnostným informáciám a uplatnenie bezpečnostných obmedzení v JSP.

2. Maven závislosti

Najskôr pridajme do našej závislosti jarné zabezpečenie-taglibs pom.xml:

 org.springframework.security spring-security-taglibs 5.2.2.RELEASE 

3. Deklarovanie tagilií

Teraz, skôr ako budeme môcť značky používať, je potrebné importovať taglib v hornej časti nášho súboru JSP:

Po pridaní tohto budeme môcť určiť značky Spring Security s sek predpona.

4. The povoliť Označiť

4.1. prístup Výrazy

V našich aplikáciách môžeme mať informácie, ktoré by sa mali zobrazovať iba pre určité role alebo používateľov.

V takom prípade môžeme použiť povoliť značka:

 Prihlásiť sa Odhlásiť sa 

Ďalej môžeme skontrolovať, či má autentifikovaný užívateľ špecifické roly:

 Správa používateľov 

A ako svoju hodnotu pre môžeme použiť akýkoľvek výraz Spring Security prístup:

  • hasAnyRole („ADMIN“, „USER“) vracia pravda ak má aktuálny používateľ niektorú z uvedených rolí
  • isAnonymous () vracia pravda ak je aktuálny príkazca anonymný užívateľ
  • isRememberMe () vracia pravda ak je súčasný príkazca používateľom na zapamätanie
  • isFullyAuthenticated () vracia pravda ak je užívateľ autentifikovaný a nie je ani anonymný, ani zapamätateľný užívateľ

4.2. url

Okrem toho môžeme skontrolovať, či sú používatelia oprávnení odosielať žiadosti na určité adresy URL:

 Správa používateľov 

4.3. Ladenie

Môžu sa vyskytnúť prípady, keď chceme mať väčšiu kontrolu nad používateľským rozhraním, napríklad v testovacích scenároch. Namiesto toho, aby Spring Security preskočilo vykreslenie týchto neoprávnených častí, môžeme nastaviť spring.security.disableUISecurity=pravda v, povedzme, našom application.properties spis.

Keď to urobíme, povoliť značka nebude skrývať svoj obsah. Namiesto toho zabalí obsah značky. Potom môžeme vykreslenie prispôsobiť pomocou niektorých CSS.

Pamätajte však, že skrytie obsahu pomocou CSS nie je bezpečné! Používateľ môže jednoducho zobraziť zdroj, aby videl nepovolený obsah.

5. Overenie Označiť

Inokedy budeme chcieť zobraziť podrobnosti o prihlásenom používateľovi, napríklad povedať napríklad „Vitajte späť, Carol!“ na strane.

Na tento účel používame Overenie značka:

 Vitaj späť, 

6. csrfInput Označiť

Dúfajme, že v našej aplikácii máme povolenú obranu CSRF od Spring Security!

Pokiaľ to urobíme, potom Spring Security už vloží CSRF skrytý vstup formulára dovnútra značky pre nás.

Ale pre prípad, že by sme chceli použiť namiesto toho môžeme ručne určiť, kam by mala Spring Security umiestniť toto skryté vstupné pole csrfInput:

  Textové pole:

Ak nie je povolená ochrana CSRF, táto značka nebude mať na výstupe nič.

7. The csrfMetaTags Označiť

Alebo ak chceme získať prístup k CSRF tokenu v Javascript, pravdepodobne budeme chcieť vložiť token ako metaznačku.

Môžeme to urobiť pomocou csrfMetaTags značka:

  JavaScript s ochranou CSRF var csrfParameter = $ ("meta [name = '_ csrf_parameter']"). Attr ("content"); var csrfHeader = $ ("meta [name = '_ csrf_header']"). attr ("obsah"); var csrfToken = $ ("meta [name = '_ csrf']"). attr ("obsah"); ... 

Pokiaľ opäť nie je povolená ochrana CSRF, táto značka nebude mať na výstupe nič.

8. Záver

V tomto rýchlom článku sme sa zamerali na niektoré bežné prípady použitia Spring Security taglib.

A ako sme sa dozvedeli, sú veľmi užitočné na vykreslenie obsahu JSP s autentifikáciou a autorizáciou.

Všetky príklady, ako vždy, nájdete na Githube.


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