Internet Information Services(IIS)で構築したWebサーバーのコンテンツに,基本認証を使ってアクセスさせています(図4)。しかし,プロキシ・サーバー経由の場合にうまくいきません。ユーザーAがWebサーバー上で認証を受けた後に,同じプロキシ・サーバーを使っているユーザーBがアクセスすると,認証を要求されずにコンテンツが読めてしまいます。
しかも,IIS上ではユーザーBのアクセスもユーザーAのものとして把握されているようです。ユーザーBのパケットをキャプチャして調べてみると,HTTPリクエストには全く認証情報が含まれていない匿名アクセスなのに,IISのログ上ではユーザーAがアクセスしたことになってしまっています。 設定を変更してみたところ,標準で有効になっているHTTPキープ・アライブを無効にすると,期待通りにユーザーBの認証処理が行われるようになりました(図5)。なぜなのでしょう?
IIS 4.0/5.0では,HTTPキープ・アライブを使用したTCP同一セッション上のHTTPリクエストを,同一ユーザーのものとして取り扱います。そのため,あるTCPセッション上での最初のHTTPリクエストでユーザーAとして認証されれば,そのセッションを明示的にクローズするまで,同じセッション上を使うHTTPリクエストはすべてユーザーAのものとして扱われます。HTTPリクエスト中に認証情報(Authorizationヘッダー)がない匿名アクセスでも同様です。 HTTPはリクエスト・レベルで認証するのが本来の仕様なため,米国版のサポート技術情報「323574」にもありますが,これは本来はバグといえます。しかし,マイクロソフトではパフォーマンス向上のため,このような独自の実装にしたようです。 今回の場合,HTTPキープ・アライブが有効だと,プロキシ・サーバーとIISとの間で仮想的なTCPセッションを張ったままになります(実際にはプロキシ・サーバーの実装にも依存)。このため,同じプロキシ・サーバーを使う別のPCからのHTTPリクエストも,このTCPセッションを再利用する形になり認証なしで前のユーザーが再度アクセスしたことになってしまいます。 ご質問にあるように,すべてのアクセスについてHTTPキープ・アライブを無効にすれば,確かに期待通りの動作になるはずです。ただし,HTTP/1.1の仕様ではデフォルトでキープ・アライブは有効にするように規定しています(該当サイト) 。そのため,キープ・アライブを無効にする回避策は正攻法とはいえません。
VBスクリプトで設定を変更 例えば,IIS 5.0でサイト・レベルに設定する場合,「cscript adsutil.vbsset W3SVC/AuthPersistence 0」と明示的に0にクリアしてから「cscriptadsutil.vbs set W3SVC/AuthPersistSingleRequesttrue」と設定します。念のために,「cscript adsutil.vbsget W3SVC/AuthPersistence」と入力して「64」が設定されていることを確認してください。 なお,IIS 5.0のヘルプには,Auth-Persistenceのサブフラグは一度に1つしかTRUEに設定できない,と書いてあります。しかし,実際には1つをTRUEに設定しても,他の2つのサブフラグが自動的にはFALSEになることはありません。そのため,上記の一連の手順を踏んでください。 IIS 4.0の場合は,AuthPersistSingleRequestなどのサブフラグを使用できません。そのため,「cscript adsutil.vbs set W3SVC/AuthPersistence64」と入力して値を直接設定します(IIS 5.0もこの方法で設定可能)。 なお,Windows Server 2003のIIS6.0では,AuthPersistSingleRequest=True相当の設定がデフォルトになっており,今回のような問題は発生しません。 (小森 博司)
|
同じプロキシ・サーバーを使うユーザーがIIS上で同一ユーザーとして扱われる
あなたにお薦め
今日のピックアップ
-
GoogleがAIモデルをアップデート、軽量・高速・安価な「Gemini 1.5 Flash」発表
-
「AIでググる」機能を一般提供、Googleが1年の試験運用で得た検索への自信
-
25年卒は大手メーカー復権、IT業界就職人気ランキング100社を一挙公開
-
AWSのアダム・セリプスキーCEOが退任、後任はマット・ガーマン上級副社長
-
「選挙イヤー」にディープフェイクが氾濫、本人認証を突破する懸念も浮上
-
もはやデジタル後進国ではない、意外と進んでいる日本の生成AI活用
-
ドコモの社長交代人事を読み解く、単なる「若返り」では解せない背景
-
鍵は規制対応、大和証券や明治安田生命が挑む金融機関の生成AI活用策
-
25歳のITエンジニア、泥沼プロジェクトの常駐がおっくうで欠勤する
-
MVNO各社が大容量プランを相次ぎ拡充、キャリアよりもお得な条件は?
-
iPhoneで他ユーザーとパスワードを共有、AirDropや共有パスワードグループで安全に
-
OneDriveの新しいビュー「メディア」、レイアウトを変更して見やすくしよう
注目記事
おすすめのセミナー
-
「仮説立案」実践講座
例えば「必要な人材育成ができていない」といった課題に、あなたならどう取り組みますか? このセミナ...
-
CIO養成講座 【第35期】
業種を問わず活用できる内容、また、幅広い年代・様々なキャリアを持つ男女ビジネスパーソンが参加し、...
-
改革リーダーのコミュニケーション術
プロジェクトを成功に導くために改革リーダーが持つべき3つのコミュニケーションスキル—「伝える」「...
-
パワポ資料が見違える「ビジネス図解」4つのセオリー
インフォグラフィックスとは、形のない情報やデータなど伝えたいことを分かりやすい形で表現する技法で...
-
間違いだらけの設計レビュー
本セミナーでは、現場で多く見られる間違ったレビューの典型例を示し、そうならないための現場の改善策...
-
オンライン版「なぜなぜ分析」演習付きセミナー実践編
このセミナーでは「抜け・漏れ」と「論理的飛躍」の無い再発防止策を推進できる現場に必須の人材を育成...
-
問題解決のためのデータ分析活用入門
例えば「必要な人材育成ができていない」といった課題に、あなたならどう取り組みますか? このセミナ...
-
業務改革プロジェクトリーダー養成講座【第16期】
3日間の集中講義とワークショップで、事務改善と業務改革に必要な知識と手法が実践で即使えるノウハウ...
注目のイベント
-
日経クロステックNEXT 関西 2024
2024年5月16日(木)~5月17日(金)
-
【5月16日】ハイパーバイザーの基本を徹底解説、参加者全員にプレゼント進呈
2024年5月16日(木)
-
日経ビジネスCEOカウンシル
2024年5月16日(木)17:00~19:50
-
WEURO DIVERSITY & INCLUSION FORUM
2024年5月17日(金)13:00~17:30(予定)
-
VUCA時代に勝ち残る戦略的サプライチェーン構築に向けて
2024年 5月 24 日(金) 10:00~16:20
-
人手不足を乗り越える 日本の産業界成長のシナリオ2024
2024年5月30日(木)10:20~17:45
-
人的資本経営版:日経ビジネスLIVE 2024 Spring
2024年6月3日(月)~6月5日(水)
-
DX Insight 2024 Summer
2024年6月4日(火)、5日(水)
-
【6月6日】DXがもたらす変化とリスク、企業が押さえるポイントとITの備えは?
2024年6月6日(金)
-
付加価値ある意匠デザインを実現するものづくり技術2024
2024年6月7日(金)10:30 ~ 17:00
おすすめの書籍
-
ソフトバンク もう一つの顔 成長をけん引する課題解決のプロ集団
ソフトバンクにはモバイルキャリア事業以外のもう一つの顔が存在する。本書ではキーパーソンへのインタ...
-
対立・抵抗を解消し合意に導く 改革リーダーのコミュニケーション術
本書は、改革リーダーに必須のコミュニケーション術を3つのスキルの観点からまとめ上げたものです。今...
-
もっと絞れる AWSコスト超削減術
本書ではコスト課題を解決するため、AWSコストを最適化し、テクニックによって削減する具体策を紹介...
-
優秀な人材が求める3つのこと 退職を前提とした組織運営と人材マネジメント
「学生に人気のコンサルであっても、大手企業であっても、せっかく獲得した人材が数年で辞めてしまう...
-
Web3の未解決問題
ブロックチェーン技術を主軸とするWeb3の技術について、現在の社会制度との摩擦と、その先にある新...
-
ロボット未来予測2033
ロボットの用途・市場はどう拡大していくのか。AI実装でロボットはどこまで進化するのか。技術の進展...