ํผ๋๋ก ๋์๊ฐ๊ธฐ
Dev.toSecurity
์๋ฌธ ์ฝ๊ธฐ
Djangular ์คํ ๊ธฐ๋ฐ์ Enterprise๊ธ ๊ฒ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ด๋ฆฌ ์์คํ ์ค๊ณ
Game on Djangular ๐ฎ Ep.1
AI ์์ฝ
Context
ํํธํ๋ ๊ฒ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ด๋ฆฌ์ ์ ์ฅ ๋ฐ์ดํฐ์ ํตํฉ ํ์์ฑ ๋๋. ๋จ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋์ด ์ธ๋ถ ์๋ฒ์์ ๋ฐ์ดํฐ ๋๊ธฐํ ๋ฐ ์ํฐํ๋ผ์ด์ฆ ์์ค์ ๋ณด์ ์ธ์ฆ ์ฒด๊ณ ๊ตฌ์ถ์ด ์๊ตฌ๋จ.
Technical Solution
- Django REST Framework์ Angular๋ฅผ ๊ฒฐํฉํ Djangular ์ํคํ ์ฒ๋ฅผ ํตํ ํ๋ก ํธ์๋-๋ฐฑ์๋ ๊ด์ฌ์ฌ ๋ถ๋ฆฌ
- PostgreSQL ๊ธฐ๋ฐ์ Game, UserGame, Review ๋ชจ๋ธ ์ค๊ณ๋ฅผ ํตํ ๋ค๋๋ค ๊ด๊ณ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ์ดํฐ ์ ๊ทํ
- JWT(JSON Web Token) ๊ธฐ๋ฐ์ ์ธ์ฆ ์ฒด๊ณ์ Angular Interceptor๋ฅผ ํตํ ์ํ ์ ์ง ๋ฐ ๋ณด์ ์์ฒญ ์ฒ๋ฆฌ
- XML-Bridge ๋ชจ๋ ๊ตฌํ์ผ๋ก ์ธ๋ถ Linux ์๋ฒ์ HTTP/HTTPS ๊ธฐ๋ฐ์ ๋ฐ์ดํฐ ๊ตํ ์ธํฐํ์ด์ค ํ๋ณด
- mTLS(Mutual TLS) ๋ฐ PKI ์ธํ๋ผ ๋์ ์ ํตํ ์๋ฒ ๊ฐ ์ํธ ์ธ์ฆ ๋ฐ ๋ฐ์ดํฐ ์ ์ก ๋ณด์ ๊ฐํ
- SailPoint IAM ๋ฐ SCIM 2.0 ์ ์ฉ์ ํตํ ์ํฐํ๋ผ์ด์ฆ ์์ค์ ID ๊ด๋ฆฌ ๋ฐ ์ ๊ทผ ์ ์ด ๊ตฌํ
์ค์ฒ ํฌ์ธํธ
- ๋ถ์ฐ ํ๊ฒฝ์ ์๋ฒ ๊ฐ ํต์ ์ TLS๋ฅผ ๋์ด mTLS ๋์ ์ ํตํ ์๋ฐฉํฅ ์ ๋ขฐ ๊ด๊ณ ๊ฒํ - ๋จ์ DB ์ ์ฅ์ ๋์ด XML/JSON ๋ฑ ํ์ค ํฌ๋งท์ Bridge ๋ ์ด์ด ์ค๊ณ๋ฅผ ํตํ ์ธ๋ถ ์์คํ ํ์ฅ์ฑ ํ๋ณด - JWT ๊ธฐ๋ฐ ์ธ์ฆ ์ Guard์ Interceptor๋ฅผ ํตํ ํ๋ก ํธ์๋ ์ง์ ์ ์ ์ด ๋ก์ง ๊ตฌํ - django-ca์ ๊ฐ์ ๋๊ตฌ๋ฅผ ํ์ฉํ ๋ด๋ถ PKI ์ฒด๊ณ ๊ตฌ์ถ ๋ฐ ์ธ์ฆ์ ๊ฐฑ์ ํ๋ก์ธ์ค ์ค๊ณ