ë°ì´í° 공격 ë°©ë²ì´ ë§ë¯ì´ ë°ì´í°ë¥¼ ìì íê² ë³´í¸í ë°©ë²ë ë§ìµëë¤. MFA (Multi-factor Authentication, ë¤ì¤ ìì ì¸ì¦)ììë¶í° SSO (Single Sign-On), ì¨íë ë¯¸ì¤ (On-premise) ë°©íë²½ì ì´ë¥´ê¸°ê¹ì§ ë¤ì±ë¡ì´ ìµì
ì´ ì ê³µë©ëë¤. ê°ë°ìì IT ì 문ê°ë¤ìê²ë íëë ì´ì
ë ìì´ë´í°í°ë¥¼ ìì íê² ë³´í¸í ì ìë íì¤ì ì ì íë ê²ì´ ì¤ìí©ëë¤.
ì¸ ê°ì§ íì¤ì´ ê°ê° íëë ì´ì
íë¡ì¸ì¤ë¥¼ 구조íí기 ë문ì ë§ì ì´ë¤ì´ ìì§ë OAuth 2.0ê³¼ OpenID Connect, SAML(Security Assertion Markup Language)ì 구ë¶íë ë° ì´ë ¤ìì ê²ªê³ ììµëë¤. ì´ ê¸ììë ì¸ ê°ì§ íì¤ì ì미ì ì°¨ì´ì , ê·¸ë¦¬ê³ ê¸°ì
ìì ê° íì¤ì ì¬ì©íë 목ì ì ëí´ ìì¸í ììë³´ê² ìµëë¤.
ëí SAMLê³¼ OAuthì ë¹êµì ê´í ê¸ì íµí´ ë ì¸ì¦ íë¡ì¸ì¤ì ì ì ë° ì°¨ì´ì ë íì¸íì¤ ì ììµëë¤.
ê° íì¤ì ì°¨ì´ì
ì¸ ê°ì§ íì¤ì ê°ì¥ í° ì°¨ì´ì ì OAuth 2.0ì´ ì í리ì¼ì´ì
ì´ë íì¼ê³¼ ê°ì´ ë³´í¸ë¥¼ ë°ë 리ìì¤ì ëí ê¶í ì¸ì¦ì ì ì´íë íë ììí¬ì¸ ë°ë©´ OpenID Connectì SAMLì íëë ì´ì
ì¸ì¦ì ê´í ì
ê³ íì¤ì´ë¼ë ë° ììµëë¤. ë°ë¼ì OAuth 2.0ì 근본ì ì¼ë¡ ëë¨¸ì§ ë íì¤ê³¼ ë¤ë¥¸ ìí©ìì ì¬ì©ëì§ë§(ìë ìì 참조), OpenID Connectë SAMLê³¼ í¨ê» ì¬ì©ë기ë í©ëë¤.
기ì
ì OpenID Connectë SAML ì¤ íë를 ì¬ì©íì¬ ì¬ì©ì ì¸ì¦ì ë¬ì±íê³ SSO(Single Sign-On)를 구ì¶í ì ììµëë¤. ë íì¤ ëª¨ë ë¡ê·¸ì¸ì ì²ë¦¬íì§ë§ ì¥ë¨ì ì´ ë¤ë¦
ëë¤.
- OpenID Connectë OAuth 2.0 íë¡í ì½ì 기ë°ì¼ë¡ ê°ë°ëì´ ID í í°ì´ë¼ê³ ë¶ë¦¬ë JWT(JSON Web Token)를 ì¬ì©í´ ë²ì, ìëí¬ì¸í¸ íì ë± OAuth 2.0ìì ì í ììì íì¤íí©ëë¤. í¹í ì¬ì©ì ì¸ì¦ì ì´ì ì ë§ì¶ê¸° ë문ì ì¼ë° ì¹ì¬ì´í¸ ë° ëª¨ë°ì¼ ì±ìì ì¬ì©ì ë¡ê·¸ì¸ì íì±ííë ë° ë리 ì¬ì©ë©ëë¤.
- SAMLì OAuthì ê´ë ¨ì´ ìì¼ë©°, JWTì ë¬ë¦¬ ë©ìì§ êµíì íµí´ XML SAML íìì¼ë¡ ì¸ì¦í©ëë¤. ì´ íì¤ì 기ì
ì¬ì©ìê° ë¨ì¼ ë¡ê·¸ì¸ì ì¬ì©í´ ë¤ìì ì í리ì¼ì´ì
ì ë¡ê·¸ì¸íë ë° ì£¼ë¡ ì¬ì©ë©ëë¤.
OAuth 2.0, OpenID Connect, SAMLì ë¹êµ
ì¤ìí ê²ì ì´ê²ì´ 기ì
ìì ì¬ì©í´ì¼ íë 구조ì ëí 문ì ê° ìëë¼ ê° íì¤ì ë°°í¬ ì기ì ëí 문ì ë¼ë ê²ì
ëë¤. ê°ë ¥í ì¸ì¦ ì루ì
ì´ë¼ë©´ ì¸ ê°ì§ 구조를 ë³´í¸ê° íìí ì´ìì ë°ë¼ ê°ê° ë¤ë¥¸ 목ì ì¼ë¡ ì¬ì©í©ëë¤.Â
OAuth 2.0: ì를 ë¤ì´ ìë¡ì´ ì í리ì¼ì´ì
ì ê°ì
íë©´ì Facebookì´ë í´ëì í ì°ë½ì²ë¥¼ íµí´ ìë¡ì´ ì°ë½ì²ë¥¼ ìëì¼ë¡ ì ê³µíë ë° ëìíë¤ë©´ OAuth 2.0ì ì¬ì©íì ê°ë¥ì±ì´ ëìµëë¤. ì´ íì¤ì ìì í ìì ì¡ì¸ì¤ë¥¼ ì ê³µí기 ë문ì
ëë¤. ë¤ì ë§í´ì ì í리ì¼ì´ì
ì´ ì격 ì¦ëª
ì ê³µì íì§ ìê³ ë ì¬ì©ì를 ëì í´ ìë²ìì 리ìì¤ì ì¡ì¸ì¤í ì ììµëë¤. ì´ê²ì´ ê°ë¥í ì´ì ë ìì´ë´í°í° ê³µê¸ì
ì²´(IdP)ê° ì¬ì©ìì ì¹ì¸ì ë°ì íì¬ ì í리ì¼ì´ì
ì í í°ì ë°íí ì ì기 ë문ì
ëë¤.
OpenID Connect: Googleì ì¬ì©í´ YouTube ë±ì ì í리ì¼ì´ì
ì ë¡ê·¸ì¸íê±°ë, Facebookì ì¬ì©í´ ì¨ë¼ì¸ ì¼í ì¹´í¸ì ë¡ê·¸ì¸íë¤ë©´ ì´ë¬í ì¸ì¦ ìµì
ì ëí´ ì ìê³ ìë ì
ì
ëë¤. OpenID Connectë ì¬ì©ì ì¸ì¦ì ì¬ì©ëë ê°ë°©í íì¤ì
ëë¤. IdPê° ì´ íì¤ì ì¬ì©íë ì´ì ë ì¬ì©ìê° IdPì ë¡ê·¸ì¸í í ë¤ì ë¡ê·¸ì¸íê±°ë ë¡ê·¸ì¸ ì 보를 ê³µì íì§ ìê³ ë ë¤ë¥¸ ì¹ì¬ì´í¸ì ì±ì ì¡ì¸ì¤í ì ì기 ë문ì
ëë¤.Â
SAML: SAML ì¸ì¦ì ë¤ë¥¸ ê³³ë³´ë¤ ì
무 íê²½ìì ê²½ííì ê°ë¥ì±ì´ ëìµëë¤. ì를 ë¤ì´ 기ì
ì¸í¸ë¼ë·ì´ë IdPì ë¡ê·¸ì¸í í ì격 ì¦ëª
ì ë¤ì ì
ë ¥íì§ ìê³ ë Salesforce, Box ëë Workdayì ê°ì ë³ëì ìë¹ì¤ì ì¡ì¸ì¤í ì ì기 ë문ì
ëë¤. SAMLë IdPì ìë¹ì¤ ê³µê¸ì
ì²´ ì¬ì´ìì ì¸ì¦ ë° ê¶í ì¸ì¦ ë°ì´í°ë¥¼ êµííë ë° ì¬ì©ëë XML ê¸°ë° íì¤ì¼ë¡, ì¬ì©ìì ìì´ë´í°í°ì ê¶íì íì¸í í ìë¹ì¤ì ëí ì¡ì¸ì¤ë¥¼ íì©íê±°ë ê±°ë¶í©ëë¤.
기ì
ì OAuth 2.0, OpenID, SAML ë±ì ì¹ íë ììí¬ì íë¡í ì½ì ì¬ì©í´ íëë ì´ì
ë ìì´ë´í°í°ë¥¼ 구조ííì¬ ìì íê² ë³´í¸í©ëë¤. ê° íì¤ì ì¬ì© ìì ì íì
íë ê²ì ì¡°ì§ì ë°ì´í°ë¥¼ ì² ì í ë³´í¸í기 ìí íµì¬ ë¨ê³ì
ëë¤.