1

我有一个 winform 应用程序,它要求我检查一个页面是否存在于我们的 Wiki 上。但是,该查询需要传递用户网络凭据。

我不想硬编码我的凭据,并且我不希望用户每次其他人使用它时都必须操纵 App.config(还有他们必须在 App.Config 中公开密码的问题)。有没有办法获得当前用户的 NT 凭据?我不需要看到它(这将是一个明显的安全问题),我只需要它用于以下代码行:

HttpWebRequest WikiPageRequest;
WikiPageRequest.Credentials = new NetworkCredential("user", "pass", "dom");
//maybe do something like this
WikiPageRequest.Credentials = GetNTCredentials();
4

2 回答 2

3

您可以尝试使用CredentialCache.DefaultCredential吗?这似乎可以让您获得当前登录的用户凭据。

于 2011-01-25T20:18:46.773 回答
0

如果“wiki”是指 MediaWiki 的部署,那么遗憾的是您需要用户 ID 和密码。

不幸的是,您无法从 Windows 获取它,因为即使是 Windows 操作系统本身也不知道密码。它只存储密码的哈希值。

顺便说一句,为什么每次用户启动应用程序时不询问 wiki 的用户 ID/密码?

于 2011-01-25T20:18:16.257 回答