λŒ€κ·œλͺ¨ 쑰직(λŒ€κΈ°μ—… ν˜Ήμ€ μ€‘μ†ŒκΈ°μ—…)의 μ‚¬μš©μžλŠ” SSO(Single Sign-On) μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ μ›ν™œν•˜κ²Œ λͺ¨λ“  μžμ›(μ‹œμŠ€ν…œ) 에 μ ‘κ·Όν•©λ‹ˆλ‹€.SSO μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ‚¬μš©ν•œ ID 및 μ•‘μ„ΈμŠ€ κ΄€λ¦¬λŠ” 일상적인 λΉ„μ¦ˆλ‹ˆμŠ€ 운영의 ν•„μˆ˜μ μΈ 뢀뢄이 λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 인기 μžˆλŠ” μ˜€ν”ˆ μ†ŒμŠ€ μ‹±κΈ€ μ‚¬μΈμ˜¨(SSO) μ†Œν”„νŠΈμ›¨μ–΄ μƒμœ„ 3κ°œλŠ” μ•„λž˜μ™€ κ°™λ‹€.

  • IdentityServer
  • KeyCloak
  • WSO2

IdentityServer

IdentityServerλŠ” μ˜€ν”ˆ μ†ŒμŠ€ 무료 μ‹±κΈ€ μ‚¬μΈμ˜¨ μ†Œν”„νŠΈμ›¨μ–΄μž…λ‹ˆλ‹€. OpenID Connect 및 OAuth 2λ₯Ό 기반으둜 ν•˜λŠ” ꡐ차 ν”Œλž«νΌ ν”„λ ˆμž„μ›Œν¬μž…λ‹ˆλ‹€. λ˜ν•œ 이 μ˜€ν”ˆ μ†ŒμŠ€ μ†Œν”„νŠΈμ›¨μ–΄λŠ” μ—¬λŸ¬ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— λŒ€ν•œ 쀑앙 인증 및 κΆŒν•œ λΆ€μ—¬ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. federated identities, 닀쀑 흐름 및 API 인증을 μ§€μ›ν•©λ‹ˆλ‹€. λ˜ν•œ 이 자체 ν˜ΈμŠ€νŒ… μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ‚¬μš©ν•˜λ©΄ μ‚¬μš©μžκ°€ μ—¬λŸ¬ μ•±μ—μ„œ 단일 μ‚¬μš©μž 이름/λΉ„λ°€λ²ˆν˜Έ μ„ΈνŠΈλ‘œ λ‘œκ·ΈμΈν•  수 μžˆμŠ΅λ‹ˆλ‹€.

IdentityServerλŠ” C#으둜 μž‘μ„±λ˜μ—ˆμœΌλ©° 배포 및 κ°œλ°œμ— κ΄€ν•œ λ¬Έμ„œμ™€ ν•¨κ»˜ Githubμ—μ„œ λͺ¨λ“  μ†ŒμŠ€ μ½”λ“œλ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

더 μ•Œμ•„λ³΄κΈ°

 

KeyCloak

KeyCloak은 OpenID Connect, OAuth2.0 λ° SAML2.0을 κΈ°λ°˜μœΌλ‘œ ν•˜λŠ” λ˜ λ‹€λ₯Έ λ¬΄λ£Œ μ†Œν”„νŠΈμ›¨μ–΄μž…λ‹ˆλ‹€. 

μ›Ή μ‘μš© ν”„λ‘œκ·Έλž¨ 및 μ›Ή μ„œλΉ„μŠ€μ—μ„œ SSO κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. 무엇보닀도 이 μ˜€ν”ˆ μ†ŒμŠ€ μ†Œν”„νŠΈμ›¨λŠ” LDAP 및 Active Directoryμ™€μ˜ 톡합을 μ œκ³΅ν•©λ‹ˆλ‹€.

μ‚¬μš©μžκ°€ μ—­ν• , κΆŒν•œ 및 μ„Έμ…˜μ„ 관리할 수 μžˆλŠ” 논리적 μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€κ°€ μžˆμŠ΅λ‹ˆλ‹€.

λ˜ν•œ Java, JavaScript 및 C#κ³Ό 같은 λ‹€μ–‘ν•œ 언어에 λŒ€ν•œ ν΄λΌμ΄μ–ΈνŠΈ 라이브러리λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.

KeyCloak은 주둜 Java둜 μž‘μ„±λ˜λ©° JavaScriptλ₯Ό μ§€μ›ν•©λ‹ˆλ‹€..

μ†ŒμŠ€ μ½”λ“œλŠ” Githubμ—μ„œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

더 μ•Œμ•„λ³΄κΈ°

 

WSO2

WSO2λŠ” λ„λ¦¬ μ‚¬μš©λ˜λŠ” λ˜ λ‹€λ₯Έ μ˜€ν”ˆ μ†ŒμŠ€ ID λ° μ•‘μ„ΈμŠ€ κ΄€λ¦¬ μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. κ±°μ˜ λͺ¨λ“  λŒ€μ€‘적인 μ‹ μ› ν‘œμ€€μ„ μ§€μ›ν•˜μ—¬ μΈμ¦μ„ μ œκ³΅ν•©λ‹ˆλ‹€. λ‹€λ₯Έ μ• ν”Œλ¦¬μΌ€μ΄μ…˜κ³Όμ˜ ν†΅ν•©μ„ μœ„ν•΄ API μ—”λ“œ νŒŒμΈνŠΈλ₯Ό κ³΅κ°œν–ˆμŠ΅λ‹ˆλ‹€. WSO2λŠ” μ‚¬μš©μž μ •μ˜κ°€ κ°€λŠ₯ν•œ μ‚¬μš©μž μΉœν™”적인 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. λ˜ν•œ μ΄ μ˜€ν”ˆ μ†ŒμŠ€ μ†Œν”„νŠΈμ›¨μ–΄λŠ” 2단계 μΈμ¦λ„ μ œκ³΅ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ£Όλ‘œ Java둜 μž‘μ„±λ˜μ—ˆμœΌλ©° λͺ¨λ“  μ†ŒμŠ€ μ½”λ“œλŠ” κ°œλ°œ λ° λ°°ν¬μ— κ΄€ν•œ λ¬Έμ„œμ™€ ν•¨κ»˜ Githubμ—μ„œ μ‚¬μš©ν•  μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.

 

더 μ•Œμ•„λ³΄κΈ°

 

μ–ΈκΈ‰λœ μ˜€ν”ˆ μ†ŒμŠ€ SSO μ†Œν”„νŠΈμ›¨μ–΄λŠ” μ—”ν„°ν”„λΌμ΄μ¦ˆ μˆ˜μ€€μ—μ„œ 널리 μ‚¬μš©λ©λ‹ˆλ‹€. 

λΉ„μ¦ˆλ‹ˆμŠ€λ₯Ό μœ„ν•œ 졜고의 μ‹±κΈ€ μ‚¬μΈμ˜¨ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ„ νƒν•˜λŠ” 쀑이라면 μœ„ λ‚΄μš©μ„ μ°Έκ³ ν•˜μ—¬ ν™•μΈν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

 

μ €λŠ” κ°€μž₯ μ‚¬μš©ν•˜κΈ° μ‰¬μš΄ KeyCloak을 ν†΅ν•œ 인증 방식에 λŒ€ν•΄μ„œ μ•žμœΌλ‘œ κ²Œμ‹œκΈ€μ„ μž‘μ„±ν•  μ˜ˆμ •μž…λ‹ˆλ‹€.

 

+ Recent posts