2007년 04월 21일
WIndows Vista의 UAC(User Account Control, 사용제 계정 컨트롤)에 대한 생각...
노트북을 Windows Vista로 upgrade하면서 가장 먼저 부딪히는 불편함은 바로 UAC였다. UAC라는 것은 일반적인 환경에서 사용자가 Administrator 권한으로 프로그램을 실행시키지 못하게 하는 것이다.

기존의 Windows에서 별 불편함이 없이 사용하려면 사용자가 항상 Administrator 권한을 가지고 있어야 했다. Windows PC는 대부분 개인 사용자들이기 때문에 직접 PC에 프로그램도 설치/제거해야 하고 하드웨어도 설치/제거해야 하기도 하며 시스템 설정을 바꾸기도 해야 하는데 그 때마다 로그인을 다시 해야 한다거나 한다면 상당한 불편함을 초래할 수 밖에 없다. 기존의 Windows 2000/XP에도 Administrator가 아닌 User 또는 Power User group이 있었지만 사실상 거의 사용되지 않았다.
하지만 이것은 UNIX로 따지면 모든 사용자가 root 권한을 가지고 사용하는 것이나 마찬가지니 사실상 엄청난 보안 취약점이다. 물론 UNIX와 같이 원격지에서 직접 접속해서 shell을 구동하고 명령을 직접 실행시키는 것이 쉬운 일은 아니나, ActiveX 등을 통해 컴퓨터에서 무언가 프로그램을 구동하게 되면 그 프로그램이 Administrator 권한을 직접 갖게 되고 이는 ActiveX가 보안에 취약하다는 이유 중의 하나가 될 수 밖에 없다.
UNIX 기반의 OS로 변모한 Mac OS X에서는 이런 것을 해결하기 위해 sudo를 사용했다. UNIX system에서는 sudo가 보안상의 문제로 대부분 사장되고 있지만 Mac OS X는 관리자 권한을 수시로 행사해야 하는 사용자들의 필요와 system 보안이라는 두 가지 목표를 동시에 달성하기 위해 sudo를 이용한 것이다. 참고로 sudo는 UNIX 시스템에서 일반 사용자가 특정 명령어를 관리자(root) 권한으로 실행할 수 있도록 해 주는 명령어로 이를 위해 관리자의 암호 없이 일부 사용자에게 관리자 권한을 행사할 수 있게 해 준다. Mac OS X는 프로그램 설치와 같이 관리자 권한이 필요한 부분에 있어서는 sudo를 구동하고 사용자의 암호를 그 때마다 입력받는 방식을 사용하여 이 문제를 해결했다. 그런데 Windows Vista의 UAC를 보면 바로 이러한 Mac OS X의 idea를 차용했다는 느낌이 강하게 든다. 즉, 관리자 권한이 필요한 부분에서 관리자 권한이 필요하다는 창을 띄우고 그 프로그램은 관리자 권한으로 실행하도록 하는 것 방식 자체가 너무 유사하다. 물론 그 때마다 사용자 암호 입력을 요구하지도 않고, 단순히 관리자 권한이 필요하다는 알림일 뿐이고 Windows용 application들이 대부분 관리자 권한을 요구하는 경우가 많아서 호환성에 문제를 일으키기도 하는 등 Mac OS만큼 깔끔하지는 못하다.
Windows Vista 보급 이후로 이 UAC 때문에 호환성에 문제를 일으키는 많은 website들이나 프로그램들이 호환성을 위해 여러가지 수정을 하고 있다. 보안이라는 측면에서 보면 프로그램 설치 이후에 사용에 있어서는 일부 시스템 유틸리티를 제외한다면 당연히 관리자 권한이 필요하면 안된다. 또한 웹사이트에서 다운받아 실행되는 ActiveX control이라면 더더욱 그렇다. 하지막 아직도 사용에 불편함을 초래하고 있는 것은 사실이다. 이런 불편함을 없애려면 Administrator 계정을 활성화하여 그 계정을 주 계정으로 사용하던지, UAC 기능을 끄면 된다. 하지만 그렇다면 보안 강화라는 Windows Vista의 큰 장점 하나가 사라지는 것이다. (물론 사용자들이 불편해서 UAC 기능을 끄게 한 뒤 보안에 관한 많은 책임을 사용자에게 전가하려는 Microsoft의 음모가 아닐까 하는 생각이 들기도 한다.) 불편하더라도 꾸준히 사용하다 보면 Windows platform의 개발자들도 좀 더 보안에 대한 의식이 높아지지 않을까...?
# by | 2007/04/21 13:37 | Computer & Network | 트랙백 | 덧글(1)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]