WINDOWS 2000下如何獲得使用者登入名稱和密碼

來源:互聯網
上載者:User

一、原理

在NT/2000中互動登陸支援是由WinLogon調用GINA DLL實現的,GINA DLL提供了一個互動介面為使用者登陸提供認證請求。WinLogon會和GINA DLL進行互動,預設是MSGINA.DLL(在System32目錄下)。微軟同時也為我們提供了介面,我們可以自己編寫GINA DLL來代替MSGINA.DLL。

WinLogon初始化時會建立3個案頭:

(1)、winlogon案頭:主要顯示Windows 安全等介面,如你按下CTRL+ALT+DEL,登陸的介面等

(2)、應用程式案頭:我們平時見到的那個有我的電腦的介面

(3)、螢幕保護裝置案頭:螢幕保護裝置顯示介面。

在預設情況下,GINA顯示登陸對話方塊,使用者輸入使用者名稱及密碼 。所以要獲得使用者名稱和密碼 ,則可以寫一個新的GINA DLL,其中提供介面調用msgina.dll的函數WlxLoggedOutSAS。

二、程式實現

GINA DLL要輸出下列函數(winlogon會調用):

(表一)GINA 函數一覽表

函數 描述
WlxActivateUserShell 啟用使用者外殼程式
WlxDisplayLockedNotice 允許GINA DLL 顯示鎖定資訊
WlxDisplaySASNotice 當沒有使用者登陸時,Winlogon調用此函數
WlxDisplayStatusMessage Winlogon 用一個狀態資訊調用此函數進行顯示
WlxGetConsoleSwitchCredentials Winlogon調用此函數讀取當前登陸使用者的信任資訊,並透明地將它們傳到目標會話
WlxGetStatusMessage Winlogon 調用此函數擷取目前狀態資訊
WlxInitialize 針對指定的視窗位置進行GINA DLL初始化
WlxIsLockOk 驗證工作站正常鎖定
WlxIslogoffOk 驗證登出正常
WlxLoggedOnSAS 使用者已登陸並且工作站沒有被加鎖,如果此時接收到SAS事件,則Winlogon 調用此函數
WlxLoggedOutSAS 沒有使用者登陸,如果此時收到SAS事件,則Winlogon 調用此函數, This indicates that a logon attempt should be made 。
WlxLogoff 請求登出操作時通知GINA DLL
WlxNegotiate 表示當前的Winlogon版本是否能使用GINA DLL
WlxNetworkProviderLoad 在載入網路服務提供者收集了身份和認證資訊後,Winlogon 調用此函數
WlxRemoveStatusMessage Winlogon 調用此函數告訴GINA DLL 停止顯示狀態資訊
WlxScreensaverNotify 允許GINA與螢幕保護裝置操作互動
WlxShutdown 在關閉之前Winlogon 調用此函數,允許GINA實現任何關閉任務,例如從讀卡機中退出智慧卡
WlxStartApplication 當系統需要在使用者的上下文中啟動應用程式時調用此函數
WlxWkstaLockedSAS 當工作站被鎖定,如果接收到一個SAS,則Winlogon 調用此函數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.