[SpringBoot] Spring Security

์ด๋ฒˆ์— ์Šคํ„ฐ๋””๋ฅผ ํ•˜๋ฉด์„œ spring security์— ๋Œ€ํ•ด ์ฒ˜์Œ ์ œ๋Œ€๋กœ ์ ‘ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ์ธ์Šคํƒ€๊ทธ๋žจ ํด๋ก  ํ”„๋กœ์ ํŠธ๋ฅผ ํ• ๋•Œ ์ธ์ฆ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ์„ธ์…˜์„ ์‚ฌ์šฉํ–ˆ์—ˆ๊ณ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ spring security๋ฅผ ์‚ฌ์šฉํ•˜๊ธด ํ–ˆ์ง€๋งŒ ์ด๊ฒƒ์ด ๋Œ€์ฒด ์–ด๋””์„œ ์“ฐ์ด๋Š”๊ฑด์ง€ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ์ง€ ๋ชปํ–ˆ์—ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ Spring ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ๋Š” Spring Security๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ํŠน์ • ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค๊ณ  ํ•˜๋‹ˆ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๊ตฌ๊ธ€๋งํ•˜๊ณ  ์ดํ•ดํ•œ ๊ฒƒ์„ ๊ธฐ๋กํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค. 1. Spring Security ์Šคํ”„๋ง ์ธ์ฆํ•˜๋ฉด ๋น ์งˆ ์ˆ˜ ์—†๋Š” ๊ฒƒ์ด Spring Security์ด๋‹ค. ๋Œ€๋ถ€๋ถ„ Spring ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ๋Š” Spring Security๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ํŠน์ • ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ญํ• ์„ ๋ถ€์—ฌํ•œ..

(๊ตฌ)Spring 2021. 1. 20. 22:26
aws ๊ตฌํ˜„ ์‚ฝ์งˆ ๊ธฐ๋ก

์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ (ํ†ฐ์บฃ๊ณผ ์Šคํ”„๋ง๋ถ€ํŠธ)๊ฐ€ ์ž‘๋™ํ•ด์•ผํ•˜๋Š” ์„œ๋ฒ„๋“ค์—์„œ๋Š” ํ•„์ˆ˜์ ์œผ๋กœ ํ•ด์•ผํ•˜๋Š” ์„ค์ •๋“ค Java 8 ์„ค์น˜ ํƒ€์ž„์กด ๋ณ€๊ฒฝ : ๊ธฐ๋ณธ ์„œ๋ฒ„์˜ ์‹œ๊ฐ„์€ ๋ฏธ๊ตญ ์‹œ๊ฐ„๋Œ€ ์ด๋‹ค. ํ•œ๊ตญ ์‹œ๊ฐ„๋Œ€๊ฐ€ ๋˜์–ด์•ผ์ง€ ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์‹œ๊ฐ„์ด ๋ชจ๋‘ ํ•œ๊ตญ ์‹œ๊ฐ„์œผ๋กœ ๋“ฑ๋ก๋˜๊ณ  ์‚ฌ์šฉ๋œ๋‹ค. ํ˜ธ์ŠคํŠธ๋„ค์ž„ ๋ณ€๊ฒฝ : IP๋งŒ์œผ๋กœ๋Š” ์–ด๋–ค ์„œ๋ฒ„๊ฐ€ ์–ด๋–ค ์—ญํ• ์„ ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์œผ๋‹ˆ๊นŒ ์ด๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ํ˜ธ์ŠคํŠธ ๋„ค์ž„์„ ๋“ฑ๋กํ•ด์ค€๋‹ค. Java 8 ์„ค์น˜ ๊ธฐ๋ณธ์ ์œผ๋กœ ์•„๋งˆ์กด ๋ฆฌ๋ˆ…์Šค 1์—์„œ๋Š” ์ž๋ฐ” ๋ฒ„์ „์ด 7์ด๋‹ค. ์ž๋ฐ” 8์„ EC2์— ์„ค์น˜ํ•œ๋‹ค. sudo yum install -y java-1.8.0-openjdk-devel.x86_64 ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด ์ธ์Šคํ„ด์Šค์˜ Java ๋ฒ„์ „์„ 8๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค. sudo /usr/sbin/alternatives --confi..

๋‚˜๋จธ์ง€ ํ•œ์ 

์ฒ˜์Œ์— ์ƒ๊ฐํ–ˆ์„ ๋•Œ minํ•จ์ˆ˜๋ฅผ ์จ์„œ ์ตœ์†Œ๊ฐ’์„ ์ฐพ์•„์„œ ๋น„๊ตํ•˜๋Š” ๋ฐฉ์‹์„ ์ƒ๊ฐํ–ˆ๋‹ค. ๊ทผ๋ฐ ์ด๋ ‡๊ฒŒํ•˜๋ฉด ๋น„๊ตํ•ด์•ผํ•  ๊ฒƒ๋„ ๋งŽ๊ณ  ์–ด๋–ค ์ ์ด ์ตœ์†Œ๊ฐ’์ด ๋˜๋Š”์ง€ ๋งค๋ฒˆ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋งž๋Š” ๋ฐฉ๋ฒ•์ด ์•„๋‹Œ๊ฒƒ๊ฐ™๋‹ค. ๋ ˆ๋ฒจ 1๋ฌธ์ œ์ธ๋ฐ๋„ ํ’€์ด ๋ฐฉ๋ฒ•์ด ๋– ์˜ค๋ฅด์ง€ ์•Š์•˜๋Š”๋ฐ ๊ฐ๊ฐ์˜ ์ˆซ์ž๊ฐ€ ์ „๋ถ€ ์ง์ˆ˜๊ฐ€ ๋˜์–ด์•ผ ์ ์ด ๋„ค๊ฐœ๊ฐ€ ๋‹ค ์žˆ๋Š”๊ฒƒ์ด ๋˜๋‹ˆ๊นŒ ํ™€์ˆ˜๊ฐœ์ธ ์ˆซ์ž๋ฅผ ๋ฝ‘์•„์„œ ๋ฆฌํ„ดํ•˜๋ฉด ๋‚˜๋จธ์ง€ ํ•œ ์ ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์ €๋ฒˆ ์Šคํ„ฐ๋””๋•Œ ์•Œ๊ฒŒ๋œ collection ๋ชจ๋“ˆ์˜ counter๋ฅผ ์ด์šฉํ•ด์„œ ์ˆซ์ž๋ฅผ ๋ฝ‘์•„๋‚ด๋ณด๊ฒ ๋‹ค! import collections def solution(v): answer = [] # 2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ 1์ฐจ์›์œผ๋กœ ๋งŒ๋“ค๊ธฐ v = sum(v, []) # ๋ฆฌ์ŠคํŠธ์•ˆ์˜ ๊ฐ’๋“ค ์ˆซ์ž์„ธ๊ธฐ v = collections.Counter(v) # ํ™€..