SSO(Single Sign-On)
๊ธฐํ ์๋ฆฌ์ฆ: Web Authentication
- Cookie & Session & JWT
- OAuth
- OpenID Connect(OIDC)
- SSO ๐
- SAML
์ด ๊ธ์ SSO๋ฅผ ๊ณต๋ถํ๋ฉด์ ๊ฐ์ธ์ ์ผ๋ก ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ์ง์ ๊ณผ ์กฐ์ธ์ ์ธ์ ๋ ํ์์ ๋๋ค ใ ใ
SSO(Single Sign-On)์ ํ๋ฒ์ ๋ก๊ทธ์ธ์ผ๋ก ์ฌ๋ฌ ์ฌ์ดํธ์ ๋ํ ์ธ์ฆ์ ํ๋ฒ์ ์ํํ์ฌ ๋ค๋ฅธ ์ฌ์ดํธ๋ค์ ์ด์ฉํ ๋ ์ถ๊ฐ์ ์ธ ๋ก๊ทธ์ธ ์์ด ์ฌ์ฉํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋งํ๋ค.
SSO์ ๋ํ์ ์ธ ์ฌ๋ก๋ Google ๋ก๊ทธ์ธ์ผ๋ก ํ๋ฒ์ ๋ก๊ทธ์ธ์ผ๋ก, Gmail, YouTube, Google Calendar ๋ฑ์ ์๋น์ค๋ฅผ ๋ก๊ทธ์ธ ์์ด ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ค! ๐
๋ณดํต โํตํฉ ์ธ์ฆโ์ SSO๋ผ๊ณ ์ด๋ฅด๋ฉฐ, ํ๋์ ์์คํ ์์ ํตํฉ ์ธ์ฆ์ผ๋ก ๋ก๊ทธ์ธ์ ํ๋ค๋ฉด, ๋ค๋ฅธ ์์คํ ์ ์ด์ฉํ ๋ ์ธ์ฆ ์ ๋ณด ์ ๋ฌด๋ฅผ ํ์ธํด ์์ผ๋ฉด ๊ทธ๊ฒ์ผ๋ก ๋ก๊ทธ์ธ์ ์ฒ๋ฆฌํ๊ณ , ์๋ค๋ฉด ๋ค์ ํตํฉ ์ธ์ฆ์ผ๋ก ๋ก๊ทธ์ธ ํ๋๋ก ์ด์๋๋ค.
์ฅ์ .
- ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ์ํธ์ ๋๋ฆฝ์ ์ฐจ๋จํจ์ผ๋ก์จ ์ฌ์ฉ์ ๊ฒฝํ(UX) ๊ฐ์
- ์ฌ์ฉํ๋ ์ด๋ฆ๊ณผ ์ํธ์ ์๋ฅผ ์ค์ฌ ์ํธ ์์ ์ํ๋ฅผ ๊ฐ์ ํ์ฌ ๋ณด์์ฑ์ ํฅ์์ํจ๋ค.
(์ฆ, ์ฌ์ด ์ํธ๋ฅผ ์ฌ๋ฌ ๊ณณ์์ ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๋ผ SSO๋ก ํ๋์ ๋ก๊ทธ์ธ์ ์ฌ์ฉํ๋ ๊ทธ SSO์ ์ํธ๋ ๋ณต์กํ ๊ฒ์ ์ฌ์ฉํ๋ค๋ ๋ง์ด๋ค!) - ํ์ฅ์ฑ
- ์ธ์ฆ์ ๋ํ ๋ถ๋ถ์ ์ค์์์ ๊ด๋ฆฌํจ์ผ๋ก์จ, ์ธ์ ์์์ ์ ์ฝ
SSO๋ ํฌ๊ฒ ๋ ๊ฐ์ง ๋ชจ๋ธ๋ก ๋๋์ด ์ง๋ค.
1. Delegation Model; ์ธ์ฆ ๋ํ ๋ชจ๋ธ
Image from here
๊ฐ ๊ฐ๋ณ ์๋น์ค์ ์ธ์ฆ์ ํตํฉ ์ธ์ฆ์ ํตํด ์ ๊ทผ. ๋ณธ์ธ์ด ์ฌํ ์ค์ธ POSTECH SSO๊ฐ ์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค.
2. Propagation Model; ์ธ์ฆ ์ ๋ณด ์ ๋ฌ ๋ชจ๋ธ
Image from here
SSO ํตํฉ ์ธ์ฆ์ ๋ก๊ทธ์ธ ํ์ ๋, โ์ธ์ฆ ํ ํฐโ์ ๋ฐ๊ธ ๋ฐ์. โ์ธ์ฆ ํ ํฐโ์ผ๋ก ๊ฐ๋ณ ์๋น์ค์์ ์ธ์ฆ์ ์ํํจ. Google ๋ก๊ทธ์ธ์ด ์ด๊ฒ์ ํด๋นํจ.
๋ง์ฝ Cookie๋ก ์ธ์ฆ ํ ํฐ์ ๊ตฌํํ๋ค๋ฉด, ์๋์ ์กฐ๊ฑด์ ์ถฉ์กฑํด์ผ ํ๋ค.
- Data Confidentiality; ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์ ์ง: ํ ํฐ์ ์ ์ ํ ์ํธ ์๊ณ ๋ฆฌ์ฆ์ ์ํธํ ๋์ด์ผ ํ๋ค.
- Data Integrity; ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ: ํ ํฐ์ MAC(๋ฉ์์ง ์ธ์ฆ ์ฝ๋) ๋ฑ์ ํฌํจํด ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํด์ผ ํ๋ค.
- ํ ํฐ์ ์ ๊ทผํ ์ ์๋ ์ฃผ์๋ฅผ ์ ํํ๊ฑฐ๋ ์ ํจ ์๊ฐ์ ์ค์ ํด์ผ ํ๋ค.