Basic認証をブラウザのダイアログなどではなく、
HTMLのフォームから行う方法はありませんか?

URLに含めるのはブラウザで丸見えなのでキモイし、
CGIでAuthorizationヘッダを付けてリクエストしても、
ブラウザが認証してないのでページ切り替えると認証ダイアログが出ます。

あとは各ページをCGI経由でGETする頭の悪い処理しか思いつかないので、
良い方法がありましたら教えてください。