この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 10977|答える: 0

Windows NTLM認証プロトコルプロセス

[リンクをコピー]
2020年9月5日 13:28:14に投稿 | | | |
IISは多様な認証技術を提供しています。 その一つがWindows認証の統合です。 統合Windows認証は、交渉KerberosまたはNTLMを活用し、ブラウザとサーバー間で送信される暗号化されたチケットメッセージに基づいてユーザーを認証します。

NTLM認証の最も一般的な応用シナリオは、おそらくブラウザで使われる認証(httpプロトコル)です。 しかし実際には、NTLMは認証プロセスと認証メッセージの形式のみを規定しています。 特定の契約とは関係ありません。 したがって、httpと必ずしもつながりがあるわけではありません。 ブラウザはHTTPプロトコルヘッダー上のNTLMメッセージのみを運び、認証を通過します。 httpは通常平文で行われることが分かっているので、パスワードの直接送信が非常に安全でない場合、NTLMはこの問題を効果的に防いでいます。   

認証プロセス



NTLM認証には3つのステップが必要で、詳細なリクエストプロセスはFiddlerツールボックスから確認できます。






ステップ1

ユーザーはWindowsアカウント番号とパスワードを入力してクライアントホストにログインします。 ログイン前に、クライアントは入力したパスワードのハッシュをキャッシュし、元のパスワードは破棄されます(「元のパスワードはいかなる状況でもキャッシュできません」と、これは基本的なセキュリティガイドラインです)。 Windowsクライアントに正常にログインしたユーザーは、サーバーリソースにアクセスしようとする相手にリクエストを送る必要があります。 リクエストには平文のユーザー名が含まれています。

ステップ2

サーバーがリクエストを受信すると、16ビットの乱数を生成します。 この乱数はチャレンジまたはノンスと呼ばれます。 チャレンジはサーバーがクライアントに送信する前に保存されます。 チャレンジは平文で送信されます。


ステップ3

サーバーから返送されたチャレンジを受け取った後、クライアントはステップ1で保存したパスワードハッシュでそれを暗号化し、暗号化されたチャレンジをサーバーに送信します。


ステップ4

クライアントから送信された暗号化チャレンジを受け取った後、サーバーはクライアントに対して認証要求をDC(ドメイン)に送信します。 リクエストには主に以下の3つの内容が含まれています:クライアントのユーザー名; 暗号化されたクライアントパスワードハッシュによるチャレンジとオリジナルチャレンジ。


ステップ5と6

DCはユーザー名に基づいてアカウントのパスワードハッシュを取得し、元のチャレンジを暗号化します。 暗号化されたチャレンジがサーバーから送信されるものと同じであれば、ユーザーが正しいパスワードを持ち、認証が成功したことを意味します。そうでなければ認証は失敗します。 DCは検証結果をサーバーに送信し、最終的にクライアントにフィードバックします。


参考文献:

ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。




先の:Azure DevOps 2020 (III) limits search (ES) メモリ フットプリント
次に:Azure DevOps 2020 (II) Azure DevOps Server Express 2020 RC2 installation tutorial
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com