0

如何在 C#.Net 中使用摘要式身份验证实现 HTTPS?根据 msdn,凭据类不支持 SSL .. 那么我们如何实现身份验证呢?我的代码适用于基本身份验证,但摘要出错..

4

2 回答 2

3

您可以在CredentialCache中创建凭证时指定凭证的类型,该凭证用于 WebClients 和 WebRequests。因此,例如,要填充 CredentialCache 以尝试 Digest auth,您可以使用

CredentialCache cache = new CredentialCache();
Uri prefix = new Uri ("http://www.example.com");
cache.Add (prefix, "Digest",  new NetworkCredential ("username", "passwd"));

WebClient wc = new WebClient();
wc.Credentials = cache;

由于摘要式身份验证取决于目标 URL,如果它指定了域,则您确实需要正确处理这些 URL。

于 2009-12-28T19:02:32.550 回答
2

您正在尝试将通常被认为可以相互替代的事物结合起来。HTTP Digest Authentication 使用 MD5 加密用户凭据,这在当今被认为不够安全。

所以,这里的信息是:使用带有基本身份验证的 HTTPS。

于 2009-12-28T18:42:04.403 回答