“보안 관리 없이 SOA/웹 서비스 확산 없다”
상태바
“보안 관리 없이 SOA/웹 서비스 확산 없다”
  • 데이터넷
  • 승인 2008.08.13 00:00
  • 댓글 0
이 기사를 공유합니다

IT 아키텍처 기반 SOA/웹 서비스 보안
“보안 관리 없이 SOA/웹 서비스 확산 없다”
속도·유연성·비용절감 개선 ‘탁월’ … 보안수준 보장 요구 수용

서비스 지향 아키텍처/웹 서비스(SOA/WS)는 도입이 확산됨에 따라 이와 관련된 보안 문제도 떠오르고 있다. 전사적으로 SOA/WS의 도입을 보호하고 관리하는데 있어 발생하는 문제가 무엇이고 그 해결책은 어떤 것이 있는지 살펴본다. <편집자>

연재순서
1회 : SOA로의 진입(이번호)
2회 : SOA 보안에 대한 이해
3회 : 다양한 산업에 대한 SOA 적용


조상원 //
한국CA 보안시니어컨설턴트
Sangwon.cho@ca.com

서비스 지향 아키텍처와 웹 서비스(SOA/WS)는 IT 중심적인 기업의 애플리케이션 아키텍처에 새로운 물결을 예고하고 있다. 기업들은 내/외부 용도의 애플리케이션을 구축하고 도입하는 것과 관련된 속도와 유연성, 비용 문제를 개선하기 위해 SOA/WS의 활용을 적극적으로 고려하고 있다.
그러나 새롭게 등장한 여느 IT 아키텍처와 마찬가지로 고도로 분산된 형태의 IT 아키텍처에 있어 보안 관리는 매우 중요한 과제이다. 적절하게 구조화되지 않을 경우, 애플리케이션 보안은 복잡다단하게 쌓아 올린 ‘사일로(silos)’ 형태가 되고 말 것이기 때문이다. 또 정보가 누출될 위험성은 증가하고, 보안 관리 비용은 늘어나며, IT 관련 규제를 준수하기가 곤란한 결과를 초래할 수 있다.

중앙화된 보안 관리 ‘절실’
보안 관리를 중앙화할 경우, 기업들은 얼마나 많은 웹 서비스가 도입되건 혹은 어떤 인프라 기술로 구축되건 자사의 SOA/WS 도입과 관련된 보안을 어려움 없이 운영/관리할 수 있다. SOA/WS 서비스 인프라에 통합된 방식으로 중앙화된 정책 기반의 보안을 제공하게 되면, 웹 서비스 자체에서 발생하는 보안 문제를 ‘외부화(externalization)’할 수 있다. 이는 곧 SOA/WS에 대한 관리 부담을 경감할 뿐만 아니라, 일관되며 신뢰성이 높은 전사적 보안을 제공하는데 필요한 비용을 줄이게 된다는 의미가 된다.
서비스 지향 아키텍처(SOA)는 가장 최근에 등장한 개념이며 IT 애플리케이션 구축과 도입에 있어 최고의 방식으로 꼽힌다. XML 기반의 웹 서비스(WS)를 통해 인터넷 표준을 수용하는 SOA 접근 방법은 IT의 유연성을 높여주고 민첩성을 향상시켜주는 방식으로 잠재적인 내외부 서비스 고객에게 기업들의 서비스를 ‘퍼블리시(publish)’하도록 해준다.
이러한 서비스 기반 접근 방식은 기본적으로 애플리케이션의 설계 및 구조를 바꾸고 비즈니스 프로세스를 무한대로 지원할 수 있지만, 동시에 IT 조직들이 애플리케이션과 데이터를 통제(govern)하고 관리(manage)하며 보호(secure)하는 방식에 많은 과제를 안겨준다.
1990년대 수많은 웹 애플리케이션과 포털이 처음 등장했을 때처럼, SOA/WS 기반 애플리케이션은 확산되기 전에 해결해야 할 수많은 IT 및 보안 관리 문제가 존재한다. SOA/WS가 내부와 외부에서 사용된다는 점을 감안해 볼 때 우선 ‘누가 무엇에 접근하는가?(Who gets access to what?)’란 문제가 제기된다. 게다가 SOA/WS는 XML에 초점을 맞춘 새로운 형태의 멀웨어(malware) 등에 취약할 수 있다. 즉, SOA/WS는 웹 사이트와 포털 등에서 표준이 되고 있는 방화벽이나 웹 접근 관리(WAM) 시스템과 같은 기능을 동일하게 필요로 하는 것이다.
그러나 웹 사이트 보안에서 SOA/WS는 입증된 일반적인 접근 방법 활용을 요구하지만, 동시에 이를 도입함에 있어서는 서비스 지향적이며 XML을 토대로 한 웹 서비스에 특화된 형태를 요구하는 특징이 있다.

입증된 일반적 접근 방법 활용
SOA/WS 보안 관리를 위해서 아주 새로운 것이 필요한 것은 아니며, SOA/WS의 보안 요구 사항은 웹 기반 애플리케이션에 적용되는 것과 대부분 일치한다. 웹 사이트와 SOA/WS 모두 개인정보를 보호하고, 메시지의 무결성을 보장하고, 요청자의 신원을 확인하며(인증), 애플리케이션의 요청에 대한 권한 수준을 판단하고(인가), 상황에 따라 어떤 일이 일어나는지를 보안 관점에서 추적하며(감사/보고), 서비스 이용을 방해하거나 기밀 정보를 훔치려는(멀웨어 위협) 시도를 차단하는 것이 중요하게 요구되는 것이다.
일반적으로 현재 도입되고 있는 SOA/WS 구축의 첫 번째 단계에서는 사용자들을 위한 전통적인 포털(front-end)을 구축하고, 내부에서 호스팅되거나 외부의 협력사로부터 제공되는 웹 서비스 사용자를 위한 웹 서비스 요청(back-end)을 결합시킨다. 이러한 시나리오에서 상당수 기업들은 계정 및 보안환경이 애플리케이션 전체 단계에서 결함 없이 유지되기를 요구하고 있다.
사용자의 세션이 전통적인 사용자 로그인 방법을 통해 시작된 후에 백 엔드에 존재하는 여러 웹 서비스 트랜잭션으로 연결되는 방법을 구현하는 방법을 선호하는 것이다. 또한 이러한 웹 서비스 ‘홉(hop)’은 종종 내부 혹은 외부의 분리된 도메인에 관련돼 있기 때문에 보안 도메인 간 신뢰성이 표준 기반의 확장 가능한 방법으로 통합·구현돼야 한다.
예를 들어 ‘CA SOA 시큐리티 매니저(CA SOA Security Manager)’는 서비스 사용자들이 제출하는 XML 문서에 포함된 보안 정보를 검사해 서비스에 대한 액세스를 보호하는 ID 중심적인 SOA/WS 보안 소프트웨어 제품을 제공함으로써 이런 문제를 해결하고 있다.
보다 구체적으로 살피면, CA SOA 시큐리티 매니저는 일련의 핵심적인 SOA/WS 표준을 활용해 XML 위협을 방지하고, 인증과 권한을 부여하며, 세션을 관리하고, 보안 감사 서비스를 제공하도록 중앙화된 보안 정책을 활용하도록 한다. 이러한 방식은 에이전트와 중앙화된 정책결정지점(PDP : Policy Decision Points), 즉 정책 서버가 통제하고 관리하는 프록시 서버 기반의 정책집행지점(PEP : Policy Enforcement Points)을 모두 제공함으로써 이기종의 SOA/WS 도입에 적합하다고 말할 수 있다.

SOA로의 진입
전세계 주요 기업 상당수가 SOA/WS를 사용하기 시작했거나 조만간 도입할 계획인 것으로 추정된다. SOA/WS가 갖는 장점은 애플리케이션 개발 및 도입 속도, 재활용성, 및 유연성을 높여주는 동시에 IT 비용을 절감시켜 준다는 점이다.
SOA/WS는 전통적인 웹 포털과 웹 애플리케이션을 활용해 실현한 이점을 확장해 사용자들을 대상으로 하는 ‘교차 도메인 애플리케이션(cross-domain application)’ 모델을 정립했으며 이러한 개념을 인간의 직접적인 통제와는 상관없는 컴퓨터 지향적인 애플리케이션으로 일반화시켰다.
SOA/WS는 인터넷과 인터넷 기술의 장점을 십분 활용해 서비스 사용자들이 인터넷에 있건 또는 기업의 인트라넷이나 엑스트라넷에 있건 상관없이 애플리케이션을 통합할 수 있는 유연성을 제공한다. SOA/WS를 활용할 경우 내부 애플리케이션의 통합을 쉽게 이룰 수 있을 뿐만 아니라 동일한 서비스를 고객이나 파트너, 또는 써드파티 등 외부로 개방할 때에도 표준을 활용할 수 있다.
이러한 써드파티와의 관계를 구현하고 향상시키는데 있어 IT를 사용하는 것은 새로운 현상이 아니다. 파트너간 데이터를 송수신하기 위해 기업들은 전자문서교환(EDI)과 같은 고정된 형태의 데이터 구조를 이용해 왔다. EDI는 현재와 같이 통합된 글로벌 비즈니스 프로세스 시대에서 기업들이 필요로 하는 무한한 형태의 커뮤니케이션 시스템에 적합한 형태는 아니지만, 비교적 폭넓은 조직간에 데이터를 이동시킬 수 있어 디지털 정보 교환의 1세대 기술이라고 말할 수 있다. 하지만, 이제 비즈니스 시스템을 안전하고 신뢰성이 높은 방법으로 통합 사용하기 위해 보다 개방적이고 표준화된 인터페이스가 요구되고 있다.
모든 새로운 기술들과 마찬가지로 SOA/WS 역시 기술이 폭넓게 사용되기에 앞서 해결할 과제들이 있다. 광범위한 확대와 유연성이 SOA/WS의 고유 장점임을 감안하면, 도입 솔루션은 신뢰성이 있으며, 이용 가능하고 확장 가능하며, 관리 가능하고 안전해야 하는 동시에 효과적으로 모니터링이 이뤄져야 한다.
이러한 핵심적인 IT 관리 문제는 생각의 진보를 요구한다. 여기서는 SOA/WS가 제기하는 새로운 보안 관리 문제에 초점을 맞추고 있지만 보안은 SOA/WS가 촉발하는 수많은 IT 관리 문제 중의 하나에 불과하다는 점을 잊지 말아야 한다.
SOA/WS 기반의 세계로 진화하기 위해서는 먼저 ‘공공(public)’의 요구 사항에 대한 정의를 내려야 한다. 과거 ‘나쁜 사람들’은 조직 외부에 있는 공격자들로, 이들은 서비스 거부(DoS)나 메시지 스푸핑(spoofing), DNS 포지셔닝 등의 공격을 통해 애플리케이션의 성능을 방해했다.
하지만 이제 이와 같은 정의는 더 이상 유효하지 않다. 자신의 의도와는 상관 없이 공격을 정당화하고 중요한 데이터를 훔치며 비즈니스 프로세스를 방해하는 내부인의 소행이 늘어나고 있기 때문이다. 이에 보안 측면에서 ‘내부인’과 ‘외부인’의 개념은 이제 더 이상 분리돼 존재하지 않는다.

인증·권한부여 보안 서비스 중요
SOA/WS의 경우에도 내외인과 외부인의 개념은 점차 사리지고 있다. 이러한 애매함으로 인해 여러 계층에서 보안을 구축하는 전통적인 방법 즉, 다양한 제품과 프로세스를 통해 네트워크와 데이터 센터, 애플리케이션, 엔드 포인트를 보호하는 방법은 더 이상 충분치 않다고 지적되며, 인증이나 권한부여와 같은 보안 서비스의 중요성이 그 어느 때보다 높아지고 있다.
SOA/WS는 새로운 세대의 개방적이며 통합된 형태로 접근이 가능한 애플리케이션을 구현해주지만, 증가된 보안위협으로 인해 과거에 IT 환경에서 보았던 것 이상의 범위와 세밀한 수준으로 관리 서비스를 전사적으로 제공할 수 있는 확장된 사용자 정책의 일관된 집행이 중요시된다.
SOA/WS의 또 다른 보안 관리 위험으로는 공유된 형태의 보안 서비스로 제공하는 방식과 달리 직접 각 서비스별로 개별적인 보안 로직(요청자의 신원확인이나 액세스 제어 등)을 구현하는 관행이다. 이에 따라 SOA/WS 도입이 ‘보안 사일로(security silos)’를 구축하는 방향으로 계속 확장되는 것은 수천 개 이상으로 쉽게 늘어날 수 있는 서비스를 지닌 기업들에게는 점점 더 실용적이지 않게 됐다.
중첩되는 부분이 많은 형태의 보안 사일로는 도입 및 유지비용이 많이들 뿐만 아니라 위험성도 증가하며 규제를 따르기도 쉽지 않기 때문이다.
결국, 문제는 책임성과 통제로 귀결된다. SOA/WS 기반 애플리케이션 확산에 따라 기업들은 현 세대의 클라이언트/서버와 웹 기반 애플리케이션에서 최소한 동일 수준의 보안을 보장하도록 요구받고 있다. 하지만 개인의 기밀정보를 보호하면서 트랜잭션 및 관련 회계 보고서의 투명성을 요구하는 규제가 갈수록 심해지는 상황을 감안하면 보안 수준 보장은 결코 쉬운 일이 아니라고 할 수 있다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.