C#SSL基本访问认证

Chr*_*eis 4 c# authentication ssl

我想要求第三方提交报告,他们需要通过POST进行"基本访问身份验证":

Your client application must use Basic Access Authentication 
to send the user name and password.
Run Code Online (Sandbox Code Playgroud)

有人能指出我正确的方向吗?

编辑:我确实看到了这篇文章,但有两个答案,我不确定那是我需要做什么或哪一个是首选方法.

Rem*_*anu 6

假设您使用WebRequest,请将CredentialCache附加到您的请求:

        NetworkCredential nc = new NetworkCredential("user", "password");
        CredentialCache cc = new CredentialCache();
        cc.Add("www.site.com", 443, "Basic", nc);


        WebRequest request = WebRequest.Create("https://www.site.com");
        request.Credentials = cc;
        request.PreAuthenticate = true;
        request.Method = "POST";

        // fill in other request properties here, like content

        WebResponse respose = request.GetResponse();
Run Code Online (Sandbox Code Playgroud)

  • 这就是你想要的,那篇文章中接受的答案是艰难的做事,但这可能是他正在做的事情所必需的.请记住,如果您使用代理,则需要通过request.Proxy.Credentials发送单独的凭据.如果您使用代理,您可能/可能无法使用PreAuthenticate.另外你不一定要做CredentialCache,你可以设置request.Credentials = nc; 不确定有什么区别. (2认同)