Spring Security
๐Ÿ™‰

Spring Security

Created
Apr 12, 2024 07:14 AM
Last edited time
Last updated April 12, 2024
Tags
CS
Spring
Language
URL

Intro::

Spring Security ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž.
ย 

Spring Security๋ž€?

์Šคํ”„๋ง ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ณด์•ˆ(์ธ์ฆ๊ณผ ์ธ๊ฐ€)๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ
์Šคํ”„๋ง ์‹œํ๋ฆฌํ‹ฐ๋Š” ํ•„ํ„ฐ(Filter) ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์Šคํ”„๋ง MVC์™€ ๋ถ„๋ฆฌ๋˜์–ด ๊ด€๋ฆฌ ๋ฐ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.
ํ•„ํ„ฐ(Filter)๋Š” Dispatcher Servlet์œผ๋กœ ๊ฐ€๊ธฐ ์ „์— ์ ์šฉ๋˜๋ฏ€๋กœ ๊ฐ€์žฅ ๋จผ์ € URL ์š”์ฒญ์„ ๋ฐ›์ง€๋งŒ, Interceptor๋Š” Dispatcher์™€ Controller ์‚ฌ์ด์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค.
Client โ†’ Filter โ†’ Dispatcher Servlet โ†’ Interceptor โ†’ Controller
ย 

๊ธฐ๋Šฅ

  1. ์ธ์ฆ(Authentication): ์‚ฌ์šฉ์ž๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์Šคํ”„๋ง ์‹œํ๋ฆฌํ‹ฐ๋Š” ํผ ๊ธฐ๋ฐ˜ ๋กœ๊ทธ์ธ, LDAP, JSON Web Token, OAuth2 ๋“ฑ ๋‹ค์–‘ํ•œ ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  1. ๊ถŒํ•œ ๋ถ€์—ฌ(Authorization): ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํŠน์ • ์—ญํ• ์„ ๊ฐ€์ง„ ์‚ฌ์šฉ์ž๋งŒ์ด ํŠน์ • ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. CSRF(Cross-Site Request Forgery) ๋ณดํ˜ธ: ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ CSRF ๊ณต๊ฒฉ์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค. ์Šคํ”„๋ง ์‹œํ๋ฆฌํ‹ฐ๋Š” ์ด๋ฅผ ์œ„ํ•œ ํ† ํฐ ๊ธฐ๋ฐ˜ ๋ฐฉ์‹์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  1. ์„ธ์…˜ ๊ด€๋ฆฌ: ์„ธ์…˜ ๊ณ ์ •, ์„ธ์…˜ ๋งŒ๋ฃŒ, ๋™์‹œ ์„ธ์…˜ ์ œ์–ด ๋“ฑ ์„ธ์…˜์„ ๋ณด๋‹ค ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  1. HTTPS ๊ฐ•์ œ ์‚ฌ์šฉ: ๋ณด์•ˆ์ด ํ•„์š”ํ•œ ํŽ˜์ด์ง€์— ๋Œ€ํ•ด HTTPS ํ”„๋กœํ† ์ฝœ์„ ๊ฐ•์ œ๋กœ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
ย 
ย 

References::

[Spring] Spring Security ๊ฐœ๋…๊ณผ ์ฒ˜๋ฆฌ ๊ณผ์ • ๐Ÿ‘ฎโ€โ™€๏ธ (+๊ทผ๋ฐ ์ƒํ™ฉ๊ทน์„ ๊ณ๋“ค์ธ)
์˜ค๋Š˜๋„ ๋…ธ๋“œ ๋งˆ์„์—์„œ ์˜จ.. ํ† ๋ผ๋Š” ๋‚ฏ์„  ๊ธฐ์ˆ ์— ์šธ๊ณ  ์žˆ๋‹ค..(?) ๊ทธ๋ ‡๋‹ค.. ์œ ์ €๊ฐ€ ์žˆ๋Š” ์„œ๋น„์Šค๋ผ๋ฉด ์ธ์ฆ๊ณผ ์ธ๊ฐ€ ์ฒ˜๋ฆฌ๋Š” ํ•„์ˆ˜์ด๋‹ค. Spring์—์„œ๋Š” Spring Security๋ผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค. ๊ฝค ๋„“๊ณ  ๋‚ด์šฉ์ด ๋งŽ์€ ํŒŒํŠธ์ด๋‹ค. CS ์Šคํ„ฐ๋””๋ฅผ ๋™๊ธฐ ์‚ผ์•„ ๊ฑด๋“œ๋ฆฌ๊ธฐ ๋ฌด์„œ์› ๋˜ ํŒŒํŠธ๋ฅผ ํ•œ ๋ฒˆ ๊ณต๋ถ€ํ•ด ๋ณด์ž. ์˜ค๋Š˜์€ Security ๊ฐœ๋…๊ณผ ์ฒ˜๋ฆฌ ๊ณผ์ •์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๐Ÿ‘ฎโ€โ™€๏ธ Spring Security /** ํ‰ํ™”๋กœ์šด ํ† ๋ผ ๋งˆ์„ */ ํ† ๋ผ ๋งˆ์„์— ์ž…์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‹ ์›์„ ์ž…์ฆํ•ด์•ผ ํ•œ๋‹ค. ๐Ÿฐ : ์•ˆ๋…•ํ•˜์„ธ์š”. ํ† ๋ผ์ž…๋‹ˆ๋‹ค. ์ €๋Š” ํ† ๋ผ๋งˆ์„ ์ฃผ๋ฏผ์ด์—์š”. ๋”ฑ ๋ด์š”? ํ† ๋ผ์ƒ์ด๋ด? ๐Ÿค– : ์‚๋น…. ๋ฐ•.์ฃผ.๋””. ์‹ ์›์ด ์ž…์ฆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ์ฃผ๋””๊ฐ€ ํ•œ ๊ฒƒ์ด ์ธ์ฆ(Authentication)์ด๋‹ค. ..
[Spring] Spring Security ๊ฐœ๋…๊ณผ ์ฒ˜๋ฆฌ ๊ณผ์ • ๐Ÿ‘ฎโ€โ™€๏ธ (+๊ทผ๋ฐ ์ƒํ™ฉ๊ทน์„ ๊ณ๋“ค์ธ)

Loading Comments...