如何使用 c# 从 Windows 窗体向用户显示默认的 Windows 身份验证提示?
Posted
技术标签:
【中文标题】如何使用 c# 从 Windows 窗体向用户显示默认的 Windows 身份验证提示?【英文标题】:How to show the user the default windows authentication prompt from a windows form using c#? 【发布时间】:2011-10-12 18:33:44 【问题描述】:我认为这将是一种非常常见的做法,但我很难找到有关如何在 c# 中向用户显示默认 Windows 身份验证凭据提示的任何内容?
用户将使用此 Windows 窗体应用程序连接到不同域上的 Web 服务,因此我不能只传递默认凭据。这些用户将有一个单独的登录名来访问 Web 服务,我希望他们得到默认 Windows 提示符的提示,然后我可以将他们的凭据传递给 Web 服务。
谢谢!
【问题讨论】:
【参考方案1】:我相信不久前有人回答了这个问题。您可以使用凭证管理 API。这是一个link,其中包含一个可以帮助您入门的代码示例。
【讨论】:
【参考方案2】:您需要在 Vista 及更高版本上 P/invoke CredUIPromptForWindowsCredentials
,或在 XP 上 P/invoke CredUIPromptForCredentials
。
【讨论】:
非常感谢,你能提供一个使用这个的例子吗?另外,我不想在这里验证用户/与 AD 交谈。我只是想向用户询问他们的信任,并使用它们来调用网络服务。 从 Patrick 给你的链接中的代码开始。你应该接受他的回答。这是最好的。以上是关于如何使用 c# 从 Windows 窗体向用户显示默认的 Windows 身份验证提示?的主要内容,如果未能解决你的问题,请参考以下文章
C# Windows 窗体使用 OracleDataAdapter 从系统数据表向 Oracle 表插入行