[서버] SSO(Single Sign-On) 란?

2023. 10. 25. 16:12초기 과업/BackEnd

작성자알 수 없는 사용자

728x90
반응형

 

 

 

 

 

 

기깔나는 사람들에서 새로운 크루를 찾고 있어요 👀 우리와 함께 하고 싶다면? 이 곳을 확인해 주세요. 😀

 

크루 모집 공고

IT 서비스 개발 크루 기깔나는 사람들

www.notion.so

 

 

Looking for a new crew in the cool guys 👀  if you want to join us? Please check this page. 😀

 

Crew Recruitment Notice(Global)

IT Service Development Team <Giggal People>

www.notion.so

 

 

 

 

 

 

 

 

안녕하세요? 기깔나는 사람들에서 백엔드를 맡고있는 김혜린입니다.

'Spring Boot를 이용한 SSO 구축 실습' 이라는 초기 과업을 부여 받았고, 
이번 글에서는 SSO(Single Sign-On)에 대해 알아보고, SSO를 왜 사용하는가에 대해 설명하려고 합니다.

 

 

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로이에 따른 일정액의 수수료를 제공받습니다."

 

 

🚀 SSO (Single Sign-On) 

SSO는 Single Sign-On의 약자로, '통합 인증' 이라고도 불립니다.
여러 다른 웹 애플리케이션 및 서비스에 대한 액세스를 재 로그인 없이 한 번의 로그인으로 자격 증명으로 관리하는 인증 및 권한 부여 메커니즘입니다. 사용자는 SSO를 통해 한 번 로그인하면 여러 서비스에 액세스할 수 있어 편리하게 다양한 애플리케이션을 사용할 수 있습니다.

 


 

 

SSO를 왜 사용하는가?

SSO 비교

첫번째 방식은 SSO를 사용하지 않는 경우입니다. 사용자는 각 서비스에 대해 각각 로그인을 시도해야 합니다. 서비스가 늘어나게 되면 각 서비스 마다의 Id와 Password를 기억해야 합니다.

SSO (단일 로그인) 을 사용한다면 

 

3SSO 적용

위와 같이 한 번의 인증을 거친다면 여러 서비스를 인증 필요없이 이용할 수 있습니다.

 

즉, SSO를 사용하는 이유는 다음과 같이 정리해볼 수 있습니다.

1. 편리한 사용자 경험 : 다른 서비스로의 로그인 프로세스 간소화.

2. 비밀번호 관리 간소화 : 하나의 비밀번호만 기억하면 된다.

3. 보안 관리

 

 

 

 

 

 

 


 

 

SSO의 유형

SSO는 2가지로 나눠집니다.

1. 인증 대행 방식

2. 인증 정보 전달 방식

 

인증 대행 모델

인증 대행 방식은 인증 방식을 변경하기 어려울 경우 많이 사용합니다. 

시스템에 대한 인증 정보가 담긴 DB(LDAP) 에서 통합 에이전트가 인증 작업을 대행합니다.

인증 정보 전달 모델

웹 기반의 시스템에서 주로 사용합니다. 미리 인증된 토큰을 받아 각 시스템 접근 시 자동으로 전달됩니다.

이 모델에서는 사용자의 인증 정보를 전달하는 방식을 선택해야 합니다. 

 

 

 

 

반응형

 

 


 

 

인증 정보 전달 모델에서의 인증 방법

인증 정보 전달 모델에서는 인증 하는 방식을 정해야 합니다.

Session Id를 쿠키로 받아 쿠키를 인증하던 예전 방식은 매 요청 마다 서버가 Session 정보를 확인해야 하는 부담과 세션 저장소 사용으로 인한 서버의 부하가 일어납니다.

따라서 이번 사용자의 인증 정보를 전달하는 방식으로 JWT를 사용할 예정입니다. 

[백엔드 초기 과업]
Spring Boot를 이용한 SSO 구축 실습
- JWT 인증
- 인증 서버 구축
- 게시판 서버 2대 구축

위 과업에 따라 제가 생각해본 대략적인 흐름은 다음과 같습니다.

1. 사용자는 게시판 A(SP) 에 접속하여 로그인 시도
2. 인증 서버(idP)로 해당 요청 Redirect
3. 인증 서버(SSO) 에서 인증 수행
4. 인증 완료 시 JWT 토큰 발급(=사용자 인증 정보 전달)
5. 사용자 게시판 B(SP)에 접속
6. 토큰 유효 확인 후 이용 가능 처리

 

 

 




 

기깔나는 사람들에서 새로운 크루를 찾고 있어요 👀 우리와 함께 하고 싶다면? 이 곳을 확인해 주세요. 😀

 

크루 모집 공고

IT 서비스 개발 크루 기깔나는 사람들

www.notion.so

 

 

Looking for a new crew in the cool guys 👀  if you want to join us? Please check this page. 😀

 

Crew Recruitment Notice(Global)

IT Service Development Team <Giggal People>

www.notion.so

 

 

 

 

 

 

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 

 

 

 

참고자료

🔗 -https://www.okta.com/blog/2021/02/single-sign-on-sso/

https://www.renovodata.com/blog/2019/01/17/single-sign-on

 

 

 

 

728x90
반응형