고기 대신 재미있는 상식

Identity Provider (IdP)

지식한점 2023. 1. 11. 09:50
반응형

클라우드 환경으로 빠른 전환이 이루어지고 있고, 그에 따른 기회와 위협도 증가하고 있는 상태입니다. 기존 보안 체계의 바깥의 클라우드 환경과 SaaS 애플리케이션 및 새롭게 도입되는 다양한 앱에 대한 IT 서포트의 어려움도 존재합니다. 또한 인증 시스템 파편화로 단일 아이덴티티 스토어 부재와 인증 시스템 개발에 따른 앱 도입 프로젝트 지연이 있습니다. 이러한 사항들이 기업 변화에 무거운 부담이 되고 새로운 보안 환경 및 요구사항 대응에 어려움을 겪게 됩니다. 

또한 복잡한 고객 가입 절차가 존재하고, 고객에 대한 통합 뷰가 없으며, 이에 따른 인증 시스템 개발로 인한 시장 접근 지연이 발병하고 보안 및 컴플라이언스 리스크가 존재하는 등 파편화된 고객 아이덴티티 관리가 필요하며, 이런 솔루션을 제공하는 것인 Identity Provider (IdP) 접근입니다.

그래서 새로운 아이덴티티 전략이 필요하게 되었는데요 그 이유로는 데이터 유출 사고 81%는 탈취된 암호 혹은 취약한 자격증명 때문에 발생하는 보안 리스크, 레거시 아이덴티티는 클라우드 대비 최대 3배로 비용 증가 발생되고, 직원 전입/전출시 수동으로 여러 계정 등록/삭제의 복잡성 증가, 인증 시스템 구축에 6개월 이상 소요외는 시간적 문제, 고객 71%는 서비스 가입에 어려움을 겪을 경우 서비스 이용 포기하는 경향이 있어 성장 지연의 원인이 될 수 있습니다.

 

Identity Provider ( IdP)는 무엇인가?

해당 서비스를 사용해 내부 사용자가 필요한 리소스에 접속할 수 있도록 지원합니다.

  • 대표적으로 구글이나 페이스북 로그인을 사용해서 특정 서비스에 로그인한 경험이 있다면 IdP를 이미 사용해본 것입니다.
  • 사용자는 계정 정보만 입력하여 서비스에 로그인할 뿐 다른 작업은 없습니다.

 

Identity Provider ( IdP) 어떻게 동작하나?

일반적으로 아래와 같이 진행되며 사용자는 해당 동작 방식을 알지 못해도 됩니다.

  • 요청: 사용자가 로그인(구글, 페이스북등)할 때 계정 정보를 입력합니다.
  • 인증(Authentication): IdP 가 해당 사용자가 특정 서비스에 접근(로그인) 권한이 있는지 그리고 어떤 작업 권한을 갖고있는지 확인합니다.
  • 인가(Authorization): 사용자에게 접근(로그인) 권한과 작업 권한이 확인되면 허용됩니다.

 

Identity Provider ( IdP)는 왜 필요한가?

아래는 IdP 도입 시 대표적인 장점에 대한 사항입니다.

  • 패스워드 관리
    • 일반적으로 기업에서 현재 사용하고 있는 Github, Slack, JIRA/Wiki, AWS콘솔 에서 해당 시스템마다 회원가입을 하고 패스워드를 지정해야합니다.
    • 추후 G-Suite, VPN, 그리고 내부 서비스 어드민들도 생기고 마찬가지로 회원가입을 하고 패스워드를 지정해야합니다.
    • IdP 를 도입하면 하나의 계정과 패스워드 로 접근할 수 있어서 피로도를 줄일 수 있습니다.
  • 사용자 관리
    • 근무자가 퇴사하거나 신규 채용을 계속할 경우 신규 입사 및 퇴사
    • 자가 발생할 때 마다 위의 시스템마다 계정을 관리해야합니다.
    • 이렇게되면 시스템의 계정 관리를 담당하는 부서에서는 계정 관리에 대한 업무 부담이 발생하게 됩니다.
    • IdP 를 도입하면 시스템을 담당하는 부서에서 사용자 계정 관리와 권한 관리가 수월해져 업무 부담을 줄일 수 있습니다.
  • 보안
    • 사람은 누구나 실수할 수 있고 실수를 바로 잡기 위해서는 로그가 필요합니다.
    • 누가 언제 어떠한 시스템에 접근하였는지 로그를 남길 수 있습니다. 그로 인해서 문제 파악이 수월해지고 빠르게 해결할 수 있습니다.

그럼 SSO(Single Sign-On) 는?

  • IdP 와 위에 기술한 깃헙 등과 같은 시스템(SP,Service Provider) 간에 사용자를 인증할 수 있는 증명 정보에 대한 통신이 이뤄져야 합니다.
  • 이렇게 사용자의 정보 증명을 위한 통신이 이뤄지게 하는 기술을 크게 SSO 라고 합니다. 그리고 SSO는 다시 기술 스펙등에 따라서 SAML(XML) 과 OAuth(JSON) 로 구분됩니다.

 

IdP 도입 도식화

 

 

IdP 솔루션

아래는 대표적인 솔루션만 작성하였습니다.

  • google: 위에서 말씀드렸듯이 구글도 SSO 를 제공합니다. 추후 G-Suite 를 도입하면 사용할 수 있습니다.
  • keycloak: 오픈소스로 직접 구축해야합니다.
  • okta: 요즘 기업에서 가장 많이 도입하여 사용하고 있는 솔루션입니다.

이중에서 okta 는 IdP 서비스 제공 전문 업체이며 다양한 SP 들과 연동이 가능합니다.

  • Saas 제품, 지난 2년동안 연간 장애 5분 이내, 대략 약 7100여개의 연동 가능한 어플리케이션

구글은 주로 B2C 에 적합해보이고 keycloak 은 오픈소스이고 좋은 솔루션이지만 직접 구축하여 운영해야하는 부담이 있습니다.

  • 200명 기준으로 월 비용은 대략 $1,400 정도 예상됩니다. 비용참고
    • SSO: $5 X 200 = $1,000
    • Directory: $2 X 200 = $400
    • MFA: $6 X 200 = $1,200
  • OKTA Solution 
    OKTA는 Sass솔루션 입니다.

반응형