ホームページ >バックエンド開発 >C++ >HttpClient が Windows サービスに資格情報を渡さないのはなぜですか?

HttpClient が Windows サービスに資格情報を渡さないのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-23 14:22:16908ブラウズ

Why Doesn't My HttpClient Pass Credentials to My Windows Service?

HttpClient 資格情報の問題の解決

HttpClient を使用して認証が必要な Windows サービスにアクセスすると、資格情報が正しく渡されない可能性があります。これは、ASP.NET MVC Web API および IIS の偽装でよく発生します。

HttpClient と WebClient が資格情報を処理する方法の違いが重要です。 HttpClient の UseDefaultCredentials プロパティは資格情報の取得を処理することを目的としていますが、信頼性が低い可能性があります。

認証情報の送信を保証するには、UseDefaultCredentials:true 内で HttpClientHandler

に明示的に設定します。
<code class="language-csharp">var httpClient = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true });</code>

これは、HttpClient にオペレーティング システムのデフォルトの資格情報を使用するように指示します。これは WebClient の動作を反映しており、Web アプリケーション要求を開始するユーザーが Windows サービスによって適切に認証されることを保証します。

以上がHttpClient が Windows サービスに資格情報を渡さないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。