| ||||||||||||
SP2 출시로 인해 윈도우 사용자들은 보안과 설정에 대한 선택권이 보다 넒어졌다. 그러나 기본적인 보안 기능을 강화됨에 따라 웹사이트 개발자들에게는 그 동안 별 문제 없이 사용되던 웹사이트의 기능들이 제한될 수 있다는 점을 유념해야 한다. 팝업창 차단과 해법 서비스팩2에 포함된 가장 중요한 기능 중 하나가 인터넷 익스플로러에 대한 대대적인 업데이트이다. 이 중 다른 브라우저에 탑재되어 많은 사용자들의 호응을 받았던 기능 중 하나가 팝업창 차단이다. 이 기능이 브라우저에 기본값으로 설정되며, 웹사이트에 따라 브라우저 주소 표시줄 아래에 표시되는 '알림 표시줄'을 통해 사용자가 차단 여부를 선택할 수 있다.
이렇게 되면, 싸이월드의 경우 주소를 치면 미니 홈피가 자동으로 뜨던 것을 할 수가 없게 된다. 또한 팝업 광고나 알림을 위해 웹사이트에서 띄우는 공지들도 모두 차단되는 것이다. 가장 먼저 할 수 있는 것이 팝업 차단 기능을 해제하거나, 자신의 사이트에서는 팝업을 허용하도록 하는 가이드를 만들어 공지하는 일이다. 그 다음으로 자동으로 뜨는 팝업창이 어떤 액션을 수행하게 될 때 팝업창이 차단되었는지 여부를 확인하여 이에 대한 적절한 경고를 사용자에게 해주는 것이 필요하다. 팝업창이 차단되면 window.open()함수는 리턴 값으로 null을 반환하므로 이를 이용해 차단 여부를 알 수 있다. 아래 내용이 팝업창 차단을 확인해 그 여부를 알려주도록 수정된 자바스크립트 코드다. 수정 전 <script language = "javascript" > function onLoad() { var objPopup = window.open("popup.htm", ""); location.href = "other.html"; } </script> <body onload= onLoad()" > 수정 후 <script language = "javascript"> function onLoad() { var objPopup = window.open("popup.htm", ""); if (objPopup == null) { alert("차단된 팝업창을 허용해 주십시오."); } else { location.href = "other.html"; } } </script> <body onload= onLoad()" > 예를 들어 팝업창을 자동으로 띄우고 원래 페이지가 다른 페이지로 이동한다거나 창을 닫거나 하는 경우가 있으면 팝업창 차단 여부를 확인하도록 스크립트를 바꿔야 한다. 액티브X 컨트롤 자동 설치 차단과 해법 웹사이트를 돌아다니다 보면 직사각형의 보안 경고창을 흔히 볼 수 있다. 이것은 웹페이지에 추가적인 기능을 부여하는 액티브X 컨트롤을 다운로드 하기 위한 확인창이라 할 수 있다. 대부분의 사용자들이 직관적으로 예를 누르기 때문에 이를 이용하면 악의적인 코드를 담고 있는 프로그램을 PC에 설치할 수 있어 많은 문제가 돼 왔다. 이번 XP 서비스팩2에서는 아예 이러한 창 자체가 뜨지 않는다. 즉 액티브X 기능을 포함하는 페이지의 경우, 현재 보고 있는 페이지에 액티브X가 포함돼 있으며 설치하려면 사용자가 직접 선택하라는 메시지가 '알림 표시줄'에 뜬다.
예를 들어 국세청의 홈택스 서비스의 경우 2~3개 회사의 여러 액티브X가 웹페이지에 포함돼 있어 하나를 설치하더라도 사용자는 메시지를 보내는 알림 표시줄을 통해 아직 설치하지 않은 액티브X를 설치해야 한다. 이럴 경우 아래와 같이 소스코드를 변경해 설치 여부를 확인, 안내 페이지로 옮겨줌으로써 사이트 방문자들이 수동으로 다운로드해 설치하도록 하는 것이 좋다.
수정 전
<body onload ="checkControl()" > <object id = "objCtl" classid ="...." codebase="xxx.cab"> </object> </body> 수정 후 <script language = "javascript" > function checkControl() { If (objCtl == null) { top.location.href = "error.asp"; //필요한 기능을 설치하는 소개 페이지로 이동합니다 } objCtl.do(); } </script> <body onload ="checkControl()" > <object id = "objCtl" classid ="...." codebase="xxx.cab"> </object> </body> 또한 SP2는 이제 신뢰되지 않은 게시자가 배포하는 액티브X 프로그램을 원천 차단함으로써 아예 설치할 수 없도록 변경해버렸다. 액티브X 개발사들은 인증 과정과 비용의 번거러움 때문에 테스트 인증서로 서명한 액티브X를 배포하기도 하였는데, SP2가 설치된 PC에서는 베리사인(VeriSign)과 트와트(Thawte) 등 글로벌 인증 기관에서 발행한 인증서로 서명된 코드만 설치된다. 따라서 이전에 코드사인 인증서를 가지고 있지 않은 회사는 인증서를 발급 받아 사용해야 한다. 현재 국내에서는 베리사인과 트와트 양사의 코드사인 인증서를 함께 대행하는 웹사이트(www.thawte.co.kr)가 있기 때문에 안내를 받을 수 있다.
팝업창 차단과 함께 포함된 기능이 팝업창 사이즈 제한 기능이다. 이것은 팝업으로 뜬 창이 윈도우 전체에 표시되거나, 사용자가 제어할 수 없는 상황을 막아 주기 위한 것이다. 음란 사이트나 링크 사이트 같은 곳에서 심심치 않게 경험하는 것이다. 이 제한에는 스크립트를 이용한 창 크기 조절을 사용할 수가 없다. 팝업에서의 window.resize 같은 기능이 제한되는 것이다. 그리고 이전에는 팝업 윈도우의 위치를 정할 수 있었지만 이제 이것도 조절된다. fullwindows=yes 같은 스크립트로 화면 전체에 표시하던 기능도 창 최대화 기능으로만 사용된다는 점도 염두해야 한다. 즉 지금까지 사용하던 온라인 전면 광고나 웹사이트 등은 영향을 받을 수 있다. 따라서 이러한 기능을 사용하고 있는 웹사이트들은 수정이 필요하다.
또한 팝업을 만들 때 주소창, 메뉴바, 상태 표시줄 등을 제어할 있었지만 모든 팝업에 상태 표시줄은 꼭 들어가게 된다. 따라서 기존의 팝업 윈도우의 크기에서 상태 표시줄이 표시되는 20~30픽셀 정도의 크기가 더 늘어남에 따라 윈도우 사이즈를 약간 늘여야 모든 컨텐트와 UI를 제대로 표시할 수 있다. 정확한 MIME 핸들링 웹서버에서 브라우저로 데이터를 보낼 때에는 HTTP 헤더에 데이터 컨텐트-타입을 적어주게 돼 있다. 대부분의 아파치 웹서버는 text/plain이 기본으로 설정돼 있으며 MIME 타입에 설정돼 있지 않는 확장자로 데이터를 보내면 웹브라우저는 어떤 형식인지 인식할 수 없게 된다. 로컬 머신 잠금 기능 사용자의 로컬 머신 보안 영역이 인터넷보다 한층 더 높아져 윈도우 XP를 사용해 웹페이지 및 액티브X의 내부 테스트를 하는 데 어려움이 따르게 됐다. 자바스크립트 실행이나 액티브X 실행 자체가 원천적으로 불가능하게 됐기 때문에 윈도우 XP 개발자들은 테스트 진행에 애로를 겪게 될 것이다.
|
from : http://www.zdnet.co.kr/techupdate/lecture/os/0,39024998,39130016,00.htm
'IT_Programming > JavaScript' 카테고리의 다른 글
javascript : merge (0) | 2008.01.25 |
---|---|
[JS] Multiple Select 순서 바꾸기 예제 (0) | 2008.01.25 |
[펌] 플래시에서 자바스크립트 호출하기 (0) | 2008.01.25 |
[펌] 같은 swf파일로 페이지마다 다른 메뉴보여주기 (0) | 2008.01.25 |
문자열을 아스키 코드로 만들기 (0) | 2007.09.30 |