プレーンテキストとしてパスワードを送信、WebクライアントへのHttpClientから変更普通のユーザー名とパスワードを送信しますか?もしそうなら、セキュリティを高める方法はありますか? (URLはHttpsアドレスです)私が使用する非同期メソッドのHttpClientを持って
1
A
答えて
0
はいプレーンテキストのユーザー名とパスワードを送信することで妥協しています。あなたは、あなたがhttpを介して送信してそれらを読むパッケージを拾うことができるネットワークスニファがあるかもしれません。ユーザー名とパスワードが平易な場合は、ああ、ああ。スニファは通常図書館や喫茶店のような公共の場所で嗅ぐ。
1
いずれの場合も、資格情報を「プレーンテキスト」で送信します。どちらの場合も、送信前にベース64に変換されますが、これでセキュリティが強化されるわけではありません。唯一の違いは、2番目(Webクライアント)のWebクライアントでは、まず資格情報なしで要求を行うという点です。その後、401 Unauthorizedレスポンスが返され、その後は全く同じAuthorization Basic <base64_here>
ヘッダーで2回目のリクエストが行われるため、すぐにそのヘッダーを適用するより効率的ではありません。しかし、再び両方のケースで全く同じAuthorizationヘッダーが送信されます。すでに述べたように、httpsエンドポイントへのリクエストを行う場合、クレデンシャルはサードパーティによる傍受に対して安全でなければなりません。既に暗号化されたチャネルを使用している場合は独自の暗号化を実装する必要はありません。
関連する問題
- 1. .NET 4.5非同期は、私は非同期メソッドを持って待っていますし、オーバーロードされたメソッド
- 2. 非同期メソッドは、私は下に次のコード持って
- 3. 非同期メソッドで使用するとHttpClientヘッダーがゼロになる
- 4. 非同期メソッドは、私は現在、このようなコード持っている非非同期
- 5. HttpClient非同期メソッドが新しいスレッドで実行される
- 6. 非同期メソッドの非同期メソッド
- 7. 非同期メソッドでの非同期ライブラリメソッドの使用
- 8. C#HttpClient POST非同期
- 9. 非同期は/私はこのポストルートを持っている
- 10. 非同期タスク、私は次のコードを持っている
- 11. FormCollectionからのデータを使用して非同期HttpClientポストリクエストを作成する
- 12. Xamarinフォーム、私は非同期メソッドを実行するコマンド持っasyncronously
- 13. WebAPI:ビジネスロジックで非同期メソッドを使用
- 14. 私はこれを持っている非同期親関数
- 15. は私が(非同期)を実装するために私を強制的にインタフェースを持って同期タスク
- 16. 非同期メソッドを同期する
- 17. 私はそうのような非同期メソッド本体をお持ちの場合は非同期メソッド本体
- 18. 非同期ループ内の非同期メソッド
- 19. クロージャを使用した非同期メソッドをリターンタイプの同期メソッドに適合
- 20. .NET HTTPClient非同期の制限
- 21. 非同期メソッド非同期に新
- 22. 私は非同期メソッドを持つオブジェクトの配列を持っていると言うオブジェクト
- 23. 私の非同期メソッドは、 "serialPort = SerialDevice.FromIdAsync()"を待っているのですか?
- 24. 非同期メソッドを使用してXigniteを呼び出す
- 25. RxJavaで非同期メソッドを同期する方法は? RxJavaの非同期ウォーターフォール
- 26. BitmapFrameを非同期で非同期メソッドで作成する
- 27. Swift:非同期メソッドを同期メソッドでラップする方法は?
- 28. UIColliectionViewのcollectionView:didDeselectItemAtIndexPathメソッドを非同期で使用する方法
- 29. は非同期メソッド
- 30. セマフォ非同期メソッド
FYI [あなたはHttpClientを間違って使用しています](https://aspnetmonsters.com/2016/08/2016-08-27-httpclientwrong/)。 – maccettura
@maccettura Oooo ...興味深い。ありがとう! – Yasskier
HTTPSの使用であり、資格情報を保護するライブラリではありません。とにかくBase64エンコーディングは保護されていません。 – Crowcoder