web-dev-qa-db-ja.com

C#WebRequestでのHTTP認証の使用

認証が必要なページにWebリクエストを送信したい。これを行うにはどうすればよいですか? Credentialsプロパティを使用する可能性があると思われるものを見つけましたが、その使用方法がわかりません。

27
The.Anti.9

新しいNetworkCredentialインスタンスをCredentialsプロパティに割り当てます。

webClient.Credentials = new NetworkCredential("Mehrdad", "Password");
44
Mehrdad Afshari

基本的な認証の例:

public void SetBasicAuthHeader(WebRequest req, String userName, String userPassword)
{
    string authInfo = userName + ":" + userPassword;
    authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo));
    req.Headers["Authorization"] = "Basic " + authInfo;
}

http://blog.kowalczyk.info/article/at3/Forcing-basic-http-authentication-for-HttpWebReq.html

22
ikutsin

で自動的に認証することも可能です。これは、現在ログオンしているユーザーの資格情報を使用します。

webClient.Credentials = CredentialCache.DefaultCredentials
3
Adrian Russell