我有一个.NET 4.0 Winforms应用程序。在使用敏感功能之前,我想要求用户重新输入他/她的登录密码。这需要适用于通过Active Directory和Windows网络登录的用户。
所以我需要弹出一个对话框,其中包含用户名和密码字段,以及“确定”和“取消”按钮。
我正在寻找是否有像这样的对话框内置到Windows中。如果没有,我可以设计自己的对话框。
我相信我可以使用WindowsIdentity.GetCurrent()确定用户名。名称。看起来像验证的方法是创建一个PrincipalContext并在其上调用ValidateCredentials()。在创建PrincipalContext之前,我需要知道用户是通过AD还是Windows Networking进行身份验证,因此我可以正确构造PrincipalContext。也许有一些代码可以整齐地调用所有这些代码?