使用备用Windows凭据覆盖

时间:2010-11-08 20:25:31

标签: c# .net vb.net

我想为我的应用程序提供管理员覆盖功能。

我想提供用户名登录提示(包括域名)。如果用户位于允许列表中并且密码正确,则显示高级控件。

.NET代码/函数允许哪些内容?

注意: VB.net回答首选。 C#也接受了。

编辑:请注意,登录用户不是授权覆盖的用户。

2 个答案:

答案 0 :(得分: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(Tab_AdminOnly),其中包含您只希望管理员拥有的项目。您可以根据需要禁用/删除控件。

答案 1 :(得分:0)

如果要检查给定域服务器的用户名和密码凭据是否正确,则可能需要使用LogonUser功能。我不认为该函数具有托管包装器,因此您必须对它进行pinvoke。有关详细信息和示例,请参阅PInvoke网站。