2010-11-08 81 views
0

我想爲我的應用程序提供超級用戶權限。使用備用Windows憑據替代

我想提供一個用戶名登錄提示(包括域名)。如果用戶處於允許列表中並且密碼正確,請顯示高級控制。

什麼.NET代碼/函數允許這樣做?

NOTE: VB.net首選答案。 C#也接受。

編輯:請注意,登錄的用戶不是授權覆蓋的用戶。

回答

0

如果你想檢查給定的域名服務器的用戶名和密碼憑證是否正確,那麼你可能需要使用LogonUser函數。我不認爲該函數有一個託管包裝,所以你將不得不捏住它。有關更多詳細信息和示例,請參閱PInvoke網站。

0

取決於你如何想獲得批准的用戶列表到應用程序,你可以做這樣的事情:

Dim adminUser As New List(Of String)(New String() {"admin1", "admin2", "admin3"}) 
Dim loggedInUser As String = Environment.UserName.ToLower 
If Not adminUser.Contains(loggedInUser) Then 
    TabControl1.TabPages.RemoveAt(TabControl1.TabPages.IndexOf(Tab_AdminOnly)) 
End If 

這裏假設你有一個選項卡(Tab_AdminOnly),有你只需要管理的項目人有。您可以根據需要禁用/刪除控件。

+0

我編輯了我的主要職位並加以澄清。登錄的用戶不是授權覆蓋的用戶。 – Steven 2010-11-08 21:36:12

+0

所以這是一個「後門」,以便管理員可以查看用戶在應用程序中做了什麼?或者,這是應用程序的變體,需要用戶登錄,然後管理員才能進入他們的桌面,並使用用戶發起的應用程序,能夠登錄並執行管理員所做的任何操作? – wergeld 2010-11-08 21:46:00