如何從動態伺服器網頁 (Active Server Page) 模擬使用者
本文將告訴您動態伺服器網頁 (ASP) 的模擬和安全性內容。文中內容會提供可從 ASP 網頁產生實體的 Microsoft Visual Basic ActiveX 動態連結程式庫 (DLL) 程式碼範例,以便模擬使用者並變更目前執行緒的安全性內容。根據預設,ASP 會在模擬使用者的安全性內容中執行。Web 伺服器會在收到對 ASP 檔案的要求時使用工作執行緒,並將該執行緒的安全性內容設定為模擬使用者。Internet Information Server (IIS) 驗證方法 (匿名、基本、NT 整合等) 會決定模擬使用者為何。接著,ASP 程式碼就會在該使用者的內容中執行。
您可以在模擬使用者時,解決下列出現在應用程式中的安全性衝突:
* 使用「NT 整合」(NTLM) 安全性或是 Kerberos 來驗證,而且必須通過「具名管道」通訊協定來存取網路資源 (例如,檔案、Access 資料庫或是 SQL Server) 的應用程式。
* 從 Session_OnEnd 或 Application_OnEnd 事件來存取網路資源的應用程式。使用處理程序的識別碼來執行 Session_OnEnd 和 Application_OnEnd 事件。如果是同處理序或「低」應用程式保護的應用程式,這個識別碼就會是 SYSTEM 使用者 ID,而處理程序就會是 Inetinfo.exe 檔案。相對於模擬,您也可以執行不同的記憶體處理程序、或是使用「高」(獨立的) 應用程式保護,並將 Microsoft Transaction Server (MTS) 套件或 COM+ 應用程式的識別碼設定為想要的使用者 ID。
* 支援多位使用者透過「Microsoft Active Directory 服務介面」(Microsoft Active Directory Services Interface,ADSI) 連線到 WinNT:// 命名空間的應用程式。這些連線會與第一個開啟連線的使用者安全性憑證,一起存入快取。 執行模擬可以確保只有單一使用者開啟該連線;因此,該使用者的憑證就會與快取的憑證相符。