Forårssikkerhed - Spring Security

Forårssikkerhed
Udvikler (r) 4
Stabil frigivelse
5.2.1 / 4. november 2019 ; For 16 måneder siden  ( 04-11-2019 )
Skrevet i Java
Operativ system Tværplatform
Type webapplikationsframework sikkerhed
Licens Apache-licens 2.0
Internet side projekter .spring .io / spring-security /

Spring Security er en Java / Java EE- ramme, der giver godkendelse , autorisation og andre sikkerhedsfunktioner til virksomhedsapplikationer. Projektet blev startet i slutningen af ​​2003 som 'Acegi Security' (udtalt Ah-see-gee / ɑː s / , hvis bogstaver er de første, tredje, femte, syvende og niende tegn fra det engelske alfabet for at forhindre navnekonflikter) af Ben Alex, hvor det offentliggøres under Apache-licensen i marts 2004. Derefter blev Acegi indarbejdet i Spring- porteføljen som Spring Security, et officielt Spring-underprojekt. Den første offentlige udgivelse under det nye navn var Spring Security 2.0.0 i april 2008 med kommerciel support og træning tilgængelig fra SpringSource .

Godkendelsesflow

Diagram 1 viser den grundlæggende strøm af en godkendelsesanmodning ved hjælp af Spring Security-systemet. Det viser de forskellige filtre, og hvordan de interagerer fra den indledende browseranmodning til enten en vellykket godkendelse eller en HTTP 403-fejl.

ACEGI-godkendelse.JPG

Browser indsender " godkendelsesoplysninger "
" Godkendelsesmekanisme " samler detaljerne
Der oprettes et " godkendelsesanmodning " -objekt
Godkendelsesanmodning sendt til en AuthenticationManager
AuthenticationManager (dette er ansvarlig for at sende anmodninger gennem en kæde af AuthenticationProviders ')
" Godkendelsesudbyder " vil bede en UserDetailsService om at levere et UserDetails- objekt
Det resulterende UserDetails- objekt (som også indeholder GrantedAuthority [] s ) bruges til at opbygge det fuldt udfyldte godkendelsesobjekt .
Hvis " Godkendelsesmekanisme " modtager det fuldt udfyldte godkendelsesobjekt , vil det betragte anmodningen som gyldig, læg godkendelsen i SecurityContextHolder ; og få den oprindelige anmodning til at blive prøvet igen.
Hvis AuthenticationProvider på den anden side afviste anmodningen, beder godkendelsesmekanismen brugeragenten om at prøve igen.
AbstractSecurityInterceptor godkender den regenererede anmodning og kaster Java-undtagelser. (Anmoder AccessDecisionManager om beslutning).
ExceptionTranslationFilter oversætter undtagelserne fra AbstractSecurityInterceptor til HTTP-relaterede fejlkoder
Fejlkode 403 - hvis hovedmanden er godkendt og derfor simpelthen mangler tilstrækkelig adgang
Start en godkendelsesEntryPoint - hvis hovedmanden ikke er godkendt, hvilket er en godkendelsesmekanisme

Nøglefunktioner til godkendelse

Nøglefunktioner til autorisation

Instansbaserede sikkerhedsfunktioner

Andre funktioner

Udgivelser

  • 2.0.0 (april 2008)
  • 3.0.0 (december 2009)
  • 3.1.0 (7. december 2011)
  • 3.1.2 (10. august 2012)
  • 3.2.0 (16. december 2013)
  • 4.0.0 (26. marts 2015)
  • 4.1.3 (24. august 2016)
  • 4.2.0 (10. november 2016)
  • 3.2.10, 4.1.4, 4.2.1 (22. december 2016)
  • 4.2.2 (2. marts 2017)
  • 4.2.3 (8. juni 2017)
  • 5.0.0 (28. november 2017)
  • 5.0.8, 4.2.8 (11. september 2018)
  • 5.1.0 GA (27. september 2018)
  • 5.1.1, 5.0.9, 4.2.9 (16. oktober 2018)
  • 5.1.2, 5.0.10, 4.2.10 (29. november 2018)
  • 5.1.3, 5.0.11, 4.2.11 (11. januar 2019)
  • 5.1.4 (14. februar 2019)
  • 5.1.5, 5.0.12, 4.2.12 (3. april 2019)

Referencer

eksterne links