[文章]IE 8 Protected Mode及相容性問題解決方法

IE的安全性一直以來都被人詬病
因此在IE 7和IE 8就加入了Protected Mode
保護使用者避免惡意碼在未經授權的情況下安裝於系統上

IE的安全性一直以來都被人詬病
因此在IE 7和IE 8就加入了Protected Mode
保護使用者避免惡意碼在未經授權的情況下安裝於系統上
在IE的視窗中可以看到保護模式是否啟動

以微軟的四個主要Integrity Levels來區分的話
IE Protected Mode屬於等級最低、安全性最高的
四個Integrity Levels如下:
System:有關系統服務權限的等級,權限最高,安全性最低
High:由使用者應用程式提升上來的權限
Medium:一般使用者應用程式的權限(預設)
Low:IE Protected Mode

而IEPM僅能將資料寫入特定低風險的資料夾和登錄碼中,如下:
Temporary Internet Files folder
%TEMP%\Low
History folder
Cookies folder
Favorites folder
Windows Temporary Files folders
%userprofile%\AppData\LocalLow


IEPM可能會造成部份的網頁無法正常顯示
關於此相容性問題有四個方法可以解決

1.在使用者端的IE中關閉Protected Mode
網際網路選項中的安全性頁籤,取消勾選"啟用受保護模式"即可
但這將導致所有網站都會跳過保護模式,大大降低IE的安全性
且必需在每台使用者的電腦中操作,較無效率

2.將網站加入"信任的網站",可以在每台電腦中設定,亦可透過AD的Group Policy一次全面設定
單一設定方法是先進入網際網路選項的安全性頁籤,選擇"信任的網站"再點選"網站"按鈕

接著輸入欲加入信任網站的網址,點選"新增"後確定

在AD中透過Group Policy則可將此設定套用到網域中所有用戶端上
先開啟群組原則管理編輯器
依序開啟「使用者設定」→「Windows 設定」→「Internet Explorer 維護」→「安全性」,於右側欄「安全性區域與內容分級」上點按滑鼠右鍵,選擇「內容」

點選"匯入目前的安全性區域和隱私權設定",再選擇"繼續"

接著可點選"修改設定",依照和單一設定時同樣的方法設定即設定完畢
等用戶端更新GPO時就會自動同步設定

3.開發人員使用Protected Mode API更新程式
例如IECancelSaveFile、IEGetFileAttributesEx、IERegCreateKeyEx等
可參考MSDN教學
http://msdn.microsoft.com/en-us/library/aa740829(VS.85).aspx

4.IEPM Virtualization
特定的動作會將原本要寫入高安全性資料夾或登錄碼自動轉導到%USERPROFILE%和HKCU中
以利網頁正確顯示


而因IE 8有改了不少底層的東西
所以有些網站在顯示時會出現跑版等問題
對於此類IE 7與IE 8的相容性問題
有三個解決方案

1.使用者端可以利用相容性檢視
透過IE Emulator模擬IE 7而順利顯示頁面
缺點是每台電腦遇到相同問題都要設定一次
在網址列旁有個相容性檢視的按鈕
遇到跑版等情況時可先嘗試按此按鈕以排除IE相容性問題

若經常瀏覽此網站,則可以將此網站加入相容性檢視設定中
往後瀏覽此網站時就會自動使用相容性檢視

輸入欲加入的網站按新增即可

2.如果是開發人員,則可在程式的每一頁中加入一段語法
優點是使用者不需要要做什麼設定,但每一頁程式都要修改,費時
  <html>
    <head>
      <!-- Mimic Internet Explorer 7 -->
      <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
      <title>My Web Page</title>
    </head>
    <body>
      <p>Content goes here.</p>
    </body>
  </html>

3.最後還有一個最有效率的方法,可直接修改站台中的web.config
一個站台僅需修改一次web.config即可,最省時省力
  <?xml version="1.0" encoding="utf-8"?>
  <configuration>
    <system.webServer>
      <httpProtocol>
        <customHeaders>
          <clear />
          <add name="X-UA-Compatible" value="IE=EmulateIE7" />
        </customHeaders>
      </httpProtocol>
    </system.webserver>
  </configuration>


從諮商輔導人心
到諮商輔導資訊系統及網路世界
雖繞了一大圈 但都是極具意義的事
秉持著過去所學 朝著自己的興趣
體驗著一輩子只有一次的人生~~