IISでWindows認証を有効にして、ASP.NETアプリケーション上でHttpContext.Current.User.Identity.NameというAPIを叩くと、「クライアントがWindowsにログオンするときに使ったActiveDirectoryのアカウント」が取得できるらしいですが、この仕組みを知りたいです。
※最終的にはJavaEEアプリケーションで同じことをやりたいと思っていますが、仕組みが分からないので、何が必要なのか、あるいは何か重要な機能が存在しないために実現不可(or困難)なのかも判断できない状況です。

そもそも、ブラウザとIISは、何か特殊なプロトコルでの通信をしているのでしょうか?
それともあくまでHTTP上で解決できているのでしょうか?
それらは、IE以外のブラウザもサポートしているのでしょうか?
また、IISはActiveDirectoryとの通信はしていないのでしょうか?