본문 바로가기
정보보안(산업)기사

[정보보안기사] 3.접근통제 - SSO(Single Sign-On)

by 다니엘(Daniel) 2023. 8. 16.
반응형

 

SSO(Single Sign-On)이란 무엇인가요?

SSO (Single Sign-On)은 하나의 인증 정보로 여러 애플리케이션 및 서비스에 로그인할 수 있는 인증 방식입니다. 보통 기업 내부 시스템에서 많이 사용되며, 사용자가 한 번 로그인하면, 같은 인증 정보로 여러 가지 다른 시스템에 로그인할 수 있습니다. SSO를 사용하면 사용자가 따로 로그인 정보를 입력하지 않아도 되므로, 사용자 경험이 좋아지고, 보안도 향상됩니다. 또한, SSO 시스템은 사용자 계정을 중앙에서 관리하므로, 사용자 이용 관리 및 보안 측면에서도 이점을 가집니다.

 

SSO 사용 방법은 어떻게 되나요?

SSO를 사용하려면, SSO 시스템을 구성해야 합니다. 구성 방법은 다음과 같습니다.

 

1. 인증서버 구성 SSO 시스템에서는 인증을 위한 인증서버를 구성해야 합니다. 이를 위해서는 보안 정책, 인증 방식, 사용자 정보 등을 고려하여 인증서버 구성 방법을 결정해야 합니다.

2. 애플리케이션 등록 SSO 시스템에 연동해야 할 애플리케이션을 등록해야 합니다. 각 애플리케이션마다 연동 방식이 다르기 때문에, 각 애플리케이션마다 연동 방법을 파악해야 합니다.

3. SSO 연동 설정 등록한 애플리케이션과 인증서버를 연동하기 위한 SSO 연동 설정을 수행해야 합니다. 이 설정은 각 애플리케이션마다 다르므로 각 애플리케이션에서 해당 설정 방법을 확인해야 합니다.

4. SSO 테스트 연동된 애플리케이션에서 SSO 기능을 테스트해야 합니다. 테스트를 통해 SSO 시스템 구성의 문제점을 파악하고 수정할 수 있습니다.

 

이와 같이 SSO 시스템을 구성하면, 사용자는 하나의 인증 정보로 여러 애플리케이션에 동시에 로그인할 수 있습니다.

 

SSO를 사용하면 어떤 장점이 있나요?

SSO (Single Sign-On)를 사용하는 것에는 다음과 같은 장점이 있습니다.

 

1. 사용자 경험 향상 SSO를 사용하면 사용자가 매번 로그인 정보를 입력할 필요가 없으므로, 사용자 경험이 향상됩니다. 여러 개의 애플리케이션에 대해 동시에 로그인 가능하며, 로그인 시간 역시 절약됩니다.

2. 보안 강화 SSO를 사용하면 여러 개의 애플리케이션에 대해 하나의 인증 정보로 접속할 수 있으므로, 각 애플리케이션마다 따로 인증 정보를 입력할 때와 달리 보안 위협이 줄어듭니다. 또한, 사용자 인증 내역을 중앙에서 관리하므로 보안 측면에서 이점을 가집니다.

3. IT 비용 절감 SSO를 사용하면 인증 정보를 중앙에서 관리하므로, IT 관리 비용이 절감됩니다. 사용자 계정을 중앙에서 관리하면, 사용자 계정 관리 비용도 줄어듭니다.

4. 비즈니스 생산성 향상 SSO를 사용하면 사용자가 매번 로그인 정보를 입력할 필요가 없어서 작업 시간을 절약할 수 있습니다. 이는 비즈니스 생산성 향상에 기여합니다.

 

따라서, SSO는 사용자 경험 향상, 보안 강화, IT 비용 절감, 비즈니스 생산성 향상 등 다양한 장점을 가지고 있습니다.

 

SSO를 사용하면 보안에 어떤 이점이 있나요?

SSO(Single Sign-On)를 사용하면 보안에 다음과 같은 이점이 있습니다.

 

1. 패스워드 관리 용이성 SSO를 사용하면 복수의 시스템에서 사용하는 패스워드를 단일 패스워드로 대체할 수 있습니다. 그리고 대체 된 이전 패스워드들을 관리 할 필요없이 단일 패스워드 관리만으로도 보안성을 유지할 수 있습니다.

2. 접근제어 강화 SSO를 사용하면, 사용자의 접근 및 권한을 중앙에서 통합해서 관리할 수 있으므로, 보안성이 향상될 수 있습니다. 이는 잘못된 권한이나 액세스를 제한하고, 중요한 데이터를 보호함으로써 막대한 위협 요소를 제거하는 데에도 도움이 됩니다.

3. 인증 강화 SSO를 사용하면 각 시스템을 구축 및 관리하는 것이 아니기 때문에 SSO 시스템 자체를 보안성 높은 인증 수단으로 사용할 수 있습니다. 이것은 이중 인증 및 다중 인증을 구현하여 보안성을 높일 수 있습니다.

4. 로그 및 감사 서비스 SSO 위치에서 식별을 수행하므로, 사용자 활동과 다른 시스템들 사이의 메타 데이터로 구성되는 IoT 환경 개념에 대한 추가 보안이 고려됩니다. 이러한 로그 및 감사 서비스 서비스가 제공되면, 규제 준수 및 대리 실적 문제 해결에 도움이 됩니다.

 

이러한 이점들로 인해, SSO를 사용함으로써 보안성을 쉽게 관리할 수 있습니다.

 

SSO를 적용하려면 무엇을 해야 하나요?

SSO를 적용하려면 다음과 같은 단계를 따라야 합니다.

 

1. 요구분석 가장 먼저 해야 할 일은 어떤 SSO 시스템이 필요한지를 결정하는 것입니다. 이를 위해서는 기업의 요구 사항과 인프라, 시스템 및 애플리케이션, 사용자 프로필 등을 분석해야 합니다.

2. SSO 시스템 선택 분석 단계를 통해 실제로 필요한 SSO 시스템을 선택해야 합니다. SSO 솔루션은 다양한 기능과 유형을 가지고 있으므로, 기업의 요구 사항을 제대로 만족시킬 수 있는 솔루션을 선택해야 합니다.

3. 애플리케이션 및 시스템 연동 선택한 SSO 시스템과 연동할 애플리케이션 및 시스템을 선택하고 연동해야 합니다. 이 과정에서 각 시스템의 인증 및 권한 관리 방식을 확인하고, SSO 시스템에서 핸들링할 수 있는지 여부를 파악해야 합니다.

4. 사용자 인증 설정 SSO 시스템과 각 애플리케이션 및 시스템 사이의 인증 방식을 설정해야 합니다. 이를 통해 사용자 인증 정책을 설정하고 보안을 강화할 수 있습니다.

5. SSO 테스트 및 개선 SSO 시스템을 구성한 후 테스트를 수행해야 합니다. 이를 통해 SSO 시스템 구성의 문제점을 파악하고 수정해야 합니다. 또한, SSO 시스템을 지속적으로 개선해나가야 합니다.

 

즉, SSO를 적용하려면 요구분석부터 시작하여 SSO 시스템 선택, 시스템 연동, 사용자 인증 설정, 테스트 및 개선 단계를 거쳐야 합니다.

 

SSO를 사용하지 않을 때의 보안 위협은?

SSO를 사용하지 않으면 여러 가지 보안 위협이 발생할 수 있습니다. 대표적인 것은 다음과 같습니다.

 

1. 강제 비밀번호 변경 다수의 서비스나 애플리케이션을 사용하는 경우, 비밀번호를 까다롭게 변경하기 어렵습니다. 이에 따라 하나의 서비스에서 비밀번호 유출 발생 시, 다른 서비스에도 영향을 미칠 수 있습니다. 그 외에도 회사에서 권장하는 복잡성 조건이 다른 서비스가 있다면 이를 유지하기 어렵고, 아이디와 비밀번호 조합이 많을수록 기억하기 어렵기 때문에 사용자들이 보안 위협에서 벗어나기 어려워집니다.

2. phishing 사기 다수의 시스템에서 로그인 하는 것은 어려움과 번거러움이 따릅니다. 이에 악성코드 판매 사이트 등에서는 다양한 서비스들을 흉내내어 로그인 시도를 유도하고, 이를 통해 사용자 계정 정보를 탈취하는 경우가 많습니다. 중간에 인증 단계를 중단 시키거나 길게 늘어진 복잡한 프로토콜을 거치기 때문에, HTTPS 보안 따위로는 대응하기 어렵습니다.

3. 인증 강도 낮음 SSO를 사용하지 않아 각 서비스에서는 자신만의 인증 방식을 사용합니다. 이렇게 되면, 각 시스템 마다 인증 강도가 다르게 설정될 수 있으며, 이는 여러 보안 위협을 갖게 됩니다. 심지어 모든 시스템에서는 인증을 통해 사용자 정보를 유지하는 것이 아니기 때문에 사용자 정보 간 충돌이 발생할 위험도 큽니다.

 

위와 같은 문제점들로 인해 SSO를 사용하지 않을 경우 보안에 취약해집니다. SSO는 보안성을 강화하며 사용자 경험을 향상시키는 등 다양한 이점을 제공합니다.

 

SSO를 도입한 기업 사례가 있나요?

많은 기업이 SSO를 도입하고 있습니다. 대표적인 SSO 도입 기업 사례로는 다음과 같은 것들이 있습니다.

 

구글(Google): 구글은 인터넷 검색, 온라인 광고, 클라우드 컴퓨팅 등 다양한 분야에서 서비스를 제공하는 기업입니다. 구글은 SSO를 도입함으로써 사용자 인증 및 보안을 강화하고, 사용자 경험을 향상시켰습니다.

페이스북(Facebook): 페이스북은 소셜 네트워크 서비스를 제공하는 기업으로, 사용자 인증 및 보안을 강화하기 위해 SSO를 도입하였습니다. 페이스북은 인증 서비스를 제공할 때 OAuth 2.0을 사용하며, 이를 통해 다른 앱과 연동한 인증 정보를 편리하게 관리하고 사용할 수 있습니다.

유니데일(Unilever): 유니레버는 판매하는 제품과 브랜드의 범위가 광범위한 FMCG (Fast moving consumer goods) 분야의 대표적인 기업입니다. 유니레버는 사용자 경험 및 보안 강화를 위해 SSO를 도입하여, 사용자의 인증 및 권한 관리를 중앙집중적으로 관리할 수 있게 되었습니다.

IBM: IBM은 클라우드, 보안 등 다양한 IT 분야에서 서비스를 제공하는 기업입니다. IBM은 SSO를 도입하여, 여러 서비스들을 통합하여 인증 및 권한 관리를 효율적으로 수행하고 있습니다.

미국 연방정부(Federal Government): 미국 연방정부는 국가보안을 위해 민감한 정보를 관리하고 있습니다. 연방정부는 SSO를 도입하여, 보안성을 강화하고 사용자 간 데이터 공유를 원활하게 수행하고 있습니다.

 

위와 같은 기업들은 SSO 도입을 통해 보안성을 강화하고, 사용자들의 경험을 향상시켰습니다. 최근에는 SSO를 지원하는 서비스들도 점점 늘어나고 있습니다.

 

SSO 시스템의 보안성은 어떤가요?

SSO 시스템의 보안성은 올바르게 구현된 경우 매우 높습니다. SSO 시스템은 많은 서비스에서 사용자 인증을 한꺼번에 관리하기 때문에 중앙 집중적인 보안 관리가 가능합니다. 다만, SSO 시스템 자체도 보안 취약점을 가질 수 있습니다. 따라서, SSO 시스템을 구현할 때 보안에 대한 고려가 필요합니다. 다음은 SSO 시스템의 보안성을 유지하기 위한 방법들입니다.

 

1. 강력한 암호화 SSO 시스템에서 사용되는 데이터는 민감한 정보이므로, 강력한 암호화가 필요합니다. 암호화를 통해 인증 정보를 보호하고, 해커들의 해킹을 방지할 수 있습니다. 2

. 다중 인증 요소 다중 인증 요소를 추가함으로써 인증 절차를 보다 강화시킬 수 있습니다. 예를 들어, 휴대폰 인증, 지문인식 등 다양한 인증 방식을 사용합니다.

3. 리버스 프록시 리버스 프록시를 사용하여 SSO 시스템의 IP 주소를 마스킹하고, 시스템을 보호할 수 있습니다.

4. 강력한 액세스 권한 관리 SSO 시스템을 이용하면 관리자는 높은 수준의 액세스 권한을 획득합니다. 이러한 권한을 관리할 때는 강력한 액세스 권한 관리절차가 필요합니다.

5. 보안 정책 엄격한 준수 SSO 시스템을 구축할 때는 보안 정책을 준수하면서 개발하고 운영해야 합니다. 또한, SSO 시스템을 사용하는 사용자들에게도 각 서비스에서의 보안 정책을 철저하게 준수할 수 있도록 교육해야 합니다.

 

위와 같은 방법들을 통해 SSO 시스템의 보안성을 높이면서 사용성도 유지할 수 있습니다.

 

SSO 시스템을 도입할 때 주의할 점은 무엇인가요?

SSO 시스템을 도입할 때 주의해야 할 점은 다음과 같습니다.

 

1. 시스템 구성 검토 SSO 시스템을 도입하기 전, 기존 시스템 구성도와 호환성을 검토해야 합니다. SSO 시스템은 다수의 서비스와 연동하여 동작하기 때문에, 기존 시스템의 구성과의 호환성 문제가 발생할 수 있습니다.

2. 보안 정책 마련 SSO 시스템은 여러 시스템에서 사용자 인증 정보를 한곳에서 관리하기 때문에 보안 정책 마련이 매우 중요합니다. 각각의 서비스에서 독자적으로 인증을 하다가 하나의 시스템에서 관리하는 것으로 전환하면서, 인증 정보 탈취 등의 보안적 위험도 커진다는 것을 인식하고, 이에 대한 대응책을 마련해야 합니다.

3. 사용자 인증 관리 SSO 시스템을 도입하면 사용자 인증 정보가 한곳에서 관리되므로, 이를 보호하기 위해 사용자 인증 관리도 매우 중요합니다. 각자의 인증 방식과 권한을 고려하여 SSO 시스템을 구성해야 합니다.

4. 연동 대상 시스템 검토 SSO 시스템을 도입하면 연동 대상 시스템은 SSO 시스템과의 호환성이 있는지를 검토해야 합니다. 이 때, 연동 대상 시스템의 문서를 충분히 확인해야 하며, 연동과 관련된 설정도 충분한 검토를 거쳐 해야 합니다.

5. 장애 대응 SSO 시스템은 여러 서비스와의 연동을 필요로 하기 때문에, 장애 대응이 필요합니다. SSO 시스템이 다운되면 모든 서비스에서 인증이 불가능하게 됩니다. 이를 방지하기 위해, 고 가용성을 보장할 수 있는 시스템을 구성해야 합니다.

6. 사용자 교육 SSO 시스템은 사용자들이 다수의 서비스에 로그인하지 않아도 되므로, 사용자들의 인증 정보를 한곳에서 관리하게 됩니다. 이를 위해서는 사용자들에 대한 교육이 필요합니다. 사용자들도 SSO 시스템을 잘 이해하고, 인증 정보를 안전하게 관리할 수 있도록 교육해야 합니다.

 

위와 같은 주의사항들을 고려하여 SSO 시스템을 구축하면, 보다 안전하고 효율적으로 다수의 시스템들을 관리할 수 있습니다.

 

SSO를 사용하는데 있어서의 잠재적인 위험은 무엇인가요?

SSO를 사용하는데는 다음과 같은 잠재적인 보안 위험이 있습니다.

1. Single Point of Failure(IP address/Server) SSO 시스템이 중단되면, 모든 사용자 인증이 영향을 받게됩니다. 따라서 SSO 시스템은 다른 시스템보다 더 높은 가용성을 유지해야 합니다. 이를 위해 여러 대의 서버를 둬서 부하 분산하고, 장애 대응 전략을 마련해야 합니다.

2. 개인 정보 유출 SSO 시스템에서 사용자의 인증 정보(로그인 ID, 비밀번호)가 한곳에서 관리되기 때문에, 이를 해커가 노릴 수 있습니다. 따라서, 보안 정책을 엄격히 준수해야 합니다. 또한, 암호화 방식을 강화하고, 접근 권한을 제한하여 보안성을 높여야 합니다.

3. 클릭재킹(CSRF:Cross-Site Request Forgery) 다른 사이트에서 사용자의 인증정보를 참조할 수 있도록 하는 해커의 기법입니다. 이를 방지하기 위해서는 쿠키 SameSite 옵션을 설정하고, CSRF 토큰 기반의 보안 체계를 도입해야 합니다.

4. 인해 반쪽짜리 Authorization가 되는 경우 SSO 시스템과 연동되는 서비스에서 사용자 권한을 다룰 때, SSO에서만 인증을 받은 경우 인가 문제가 발생할 수 있습니다. 이러한 인가 문제를 해결하기 위해서는, 권한 부여와 추적을 일관성 있게 처리해야 합니다.

5. 서비스 대상 자체 보안 결함 SSO 시스템은 여러 서비스와 연동되기 때문에, 이 중 하나라도 보안 결함이 있으면 전체적으로 위험이 발생합니다. 따라서, SSO 시스템을 구축할 때 보안 취약점을 최소화하는 방안을 마련하는 것이 중요합니다.

 

이러한 위험 사항들을 예방 및 대처할 수 있는 자체적인 보안 체계를 구축하면서, 안전하고 효율적인 SSO 시스템을 구축할 수 있습니다.

 

SSO 시스템을 사용하면 어떤 이점이 있나요?

SSO 시스템을 사용하면 다음과 같은 이점이 있습니다.

1. 사용자 편의성 SSO 시스템을 사용하면 사용자들은 다양한 웹 사이트나 애플리케이션에 로그인할 필요가 없습니다. 한번 인증을 거치면, 다른 모든 서비스에서도 자동으로 로그인되어 사용할 수 있기 때문에 사용자들은 매번 로그인을 입력하는 시간과 노력을 아낄 수 있습니다.

2. 보안성 강화 SSO 시스템을 사용함으로써, 사용자의 암호화된 인증 데이터가 중앙집중적으로 저장됩니다. 이를 통해서 접근통제와 보안성 강화를 도모할 수 있습니다.

3. 관리 용이성 SSO 시스템에서는 중앙 집중적으로 사용자의 인증과 권한 관리가 가능해집니다. 개별적인 서비스에서 관리해야 할 인증과 권한 관리를 하나의 시스템에서 처리할 수 있기 때문에, 복잡한 인증과 권한 관리 과정을 간편하게 처리할 수 있습니다. 또한, SSO 시스템 상에서 사용량 통계 데이터를 추적하고 분석할 수 있는 기능도 가지고 있으므로, 업무 효율성을 향상시키는데 도움이 됩니다.

4. 비용 절감 SSO 시스템을 사용하면 개별적인 서비스에서 인증 및 권한 관리를 할 필요가 없으므로, 관련 비용을 줄일 수 있습니다. 또한, SSO 시스템을 통해 사용자의 로그인 정보를 통합적으로 관리하면, 관리의 간소화로 인하여 인력 비용도 줄일 수 있습니다.

5. 표준화 SSO 시스템은 여러 웹 사이트나 앱이 공통적으로 사용할 수 있는 표준 인증 방식을 제공합니다. 이를 통해 서로 다른 로그인 시스템을 통합할 수 있으므로, 개발과 유지보수, 업그레이드 등의 프로세스를 간소화할 수 있습니다. 이러한 표준화로 인해 다음 단계에서 추가적인 개발 및 통합이 쉬워짐에 따라 애플리케이션 설계 및 개발에 대한 비용을 크게 줄일 수 있습니다.

6. 계정 관리 간소화 SSO 시스템을 사용하면, 로그인 ID와 패스워드 등 다양한 인증 수단이 중앙화되므로 각각의 서비스에서 별도의 계정 관리가 필요하지 않습니다. 이로 인해, 계정 관리와 관련된 복잡한 작업을 간소화하는 효과를 얻을 수 있습니다.

 

요약정리

 

 

 

 

반응형