第1回 IISをXML対応サーバにする (2/2ページ)

 IISをXML対応にセットアップ

 Windows 2000 Serverには、IISが標準で組み込まれているため、容易に利用を開始できます。OSのインストール時にIISコンポーネントをインストールできますが、セキュリティ上の問題で特に必要がない限りは、インストールしないことが推奨されています。後からIISをインストールするには、OSをインストール後にコントロールパネルにある「アプリケーションの追加と削除」を開いて「Windowsコンポーネントの追加と削除」で操作すれば追加したり削除したりできます(画面1)。

画面1  Windowsコンポーネントの追加と削除

 この画面で「インターネット インフォメーション サービス (IIS)」にチェックが付いていれば、IISはインストールされています。「詳細」を開いて、必要な機能を追加したり不要な機能を削除したりできます。

 もしチェックが付いていなかったらインストール対象になっていないかインストールされていないので、改めてチェックを付けてインストールするようにします。

   ハッキング、ウイルス対策は必須

 残念ながらどのようなシステムやソフトウェアにも完璧なものはなく、何らかの障害やセキュリティ上の欠陥を持っています。IISも例外ではなく障害や欠陥があり、その脆弱性を利用してWebサイトの攻撃や書き換えが行われることが増えてきています。つい先日も、“Nimda”と呼ばれるワーム/ウイルスが世界中を駆け回ったことは記憶に新しいでしょう。このワーム/ウイルスはいままでのものと違い、これまでに明らかになっている障害や欠陥を利用した複数の感染手段と経路を自ら検索して、感染対象を広げるタチの悪いものでした。このような攻撃にさらされても深刻な問題が発生しないように日ごろからセキュリティ情報に注意し、対処しておく必要があります。そのため、IISをインストールするに当たり、チェックすべき項目についていくつか挙げておきます。

Webコンテンツのフォルダ
IISをインストールすると、標準設定ではシステムドライブのルートに“Inetpub”フォルダが作成されます。このフォルダの配下に複数のWebファイルを保存することになりますが、システムドライブに外部と接触を持つフォルダを置くことは非常に危険です。ここから侵入されてシステム全体を改ざんされたり破壊されたりする可能性が高くなります。このような危険性をできるだけ低くするために、Webコンテンツを置くフォルダはシステムドライブ以外の、ほかの専用のドライブを用意して利用するように設定します。通常は利用されない管理者用のWebコンテンツや最初に入っているサンプルWebサイトも、できる限り削除したり無効にしたりするか、ほかのドライブに移すようにします。

マイクロソフトのセキュリティ情報
マイクロソフトが公開しているセキュリティ情報に気を配ることが大切です。日本語で公開されている情報だけでなく、英語版でのセキュリティ情報にも目を通すことを心掛けてください。

 セキュリティ情報が更新された際にメールを配信する通知サービスも用意されているので、登録しておくといいでしょう。

 セキュリティ情報のページには、IIS 4.0/5.0の「セキュリティチェックリスト」も用意されているので、目を通しておくべきです。

 これらの情報によって、利用しているソフトウェア製品のサービスパックやHotFixなどの修正モジュールが提供されたら、適用する方向で確認作業に入ってください。ただし注意が必要なのは、修正モジュールが提供されたからといってすぐに実用システムに適用するのは避けることです。修正モジュールの内容によっては、これまで動作していた社内システムなどが動かなくなったり、挙動が変わってしまったりすることがあります。また場合によっては修正モジュール自体に問題があって、いったん公開されたものがしばらくすると公開中止になることもあります。

 インターネットなどに流れるニュースなどにも注意を払い、できれば適用するシステムと同様の疑似環境で動作に問題がないことを確認したうえで、実用システムに適用してください。基本的には何か問題があって提供された修正モジュールですからすぐにでも適用すべきですが、場合によってはアプリケーションに影響を与えることもあるため、適用する際には十分な動作確認と配慮を心掛けてください。

   XMLパーサのセットアップとアップグレード

 XMLとその周辺技術は、速いテンポで進化を続けています。毎日のようにXML関連技術がW3Cで勧告され、新たな提案や議論が進んでいます。そのためXMLパーサもバージョンアップが繰り返されていて、世の中にはさまざまなレベルでXML技術をサポートしたさまざまなXMLパーサが存在しています。

 本連載で扱うXMLパーサは、マイクロソフトのMicrosoft XML Parser(MSXML)で、Windows 95の後期版(OSR 2.5)に含まれていたInternet Explorer 4.0で初めて提供されたものです。

 現在の正式なバージョンは2000年にリリースされた3.0ですが、最近3.0で見つかったいくつかのバグを修正した3.0 Service Pack 1も公開されています。

 さらに新しいXML規格をサポートするための試験的なリリースバージョンである4.0 Technology Preview版も順次公開されています。

 マイクロソフトは早くからXMLに対応し、XMLパーサ開発時のXML周辺技術に関する仕様に合わせてバージョンアップを繰り返しています。ただし、Windows OSやInternet Explorer、Office 2000、SQL Server 2000やBizTalk Server 2000などのサーバ製品に組み込まれているMSXMLのバージョンは、現在のところすべて2.xとなっています(編集注:Office XPではMSXML 3.0が組み込まれている)。

 MSXML 2.xでは、XML関連技術のいくつかの仕様がW3C勧告以前の仕様案で実装されています。特にXSL/XSLTの仕様は、現在となってはワーキングドラフト段階の古いものです。現在ではこれらはXSLとXSLTの2つの仕様に分かれて勧告されており、それぞれカバーする範囲が異なり内容も変化しています。

 XSLTは1999年11月にW3C勧告されたので、これに対応すると同時にいくつかの仕様と障害対応を含んだ新しいMSXML 3.0が2000年10月に公開されました。そのため、W3C勧告に沿ったXSLTの機能を利用しようと考えた場合、MSXMLを3.0にアップグレードする必要があります。インターネットの世界では、できる限り標準仕様を採用した方が相互互換性に優れていると考えられるため、本連載でもMSXML 3.0を利用して話を進めることにします。

 MSXML 3.0 Service Pack 1 (SP1)のインストールの手順は、以下のようになります。

MSXML 3.0 SP1を入手
MSXML 3.0 SP1は、前述のリンクからダウンロードできます。その際に一緒にxmlinst.exe(Replace Mode Tool)も入手するようにします。xmlinst.exeは、MSXML 3.0を利用できるようにするための大事なツールです。

MSXML 3.0 SP1をインストール
ダウンロードしたファイル(msxml3_ja.exe)を実行して、MSXML 3.0 SP1をインストールします。MSXML 3.0 SP1をインストールする際には、MSXML 3.0があらかじめインストールされている必要はありません。すでにMSXML 3.0がインストールされている環境では、MSXML 3.0 SP1が上書きインストールされます。
MSXML 3.0 (SP1)は、side-by-sideモードでインストールされます。side-by-sideとは、1つのマシンに複数のXMLパーサをインストールでき、どのXMLパーサのコンポーネントを利用するかは、レジストリを書き換えることで指定します。そのため、インストールしただけではMSXML 3.0は利用されない状態になっています。

置換モードでMSXML 3.0 SP1を利用可能に
ダウンロードしたxmlinst.exeは自己解凍形式のファイルで、同じ名前のxmlinst.exeとreadme.txtが含まれているので解凍時に注意してください。解凍したxmlinst.exeを実行することで、置換モードのインストールは完了します。これでMSXML 3.0が利用可能になりました。このツールはDOSコマンドのため実行結果はコマンドプロンプトに表示されるので、結果を確認したい場合はコマンドプロンプトを開いてから実行する必要があります。

OSの再起動と確認
念のためにOSを再起動して、再起動後に新しいXMLパーサが利用できるようになっていることを確認します。W3C勧告となっているXSLTの仕様に準拠したXML文書を作成して表示してみます。エラーが表示されなければ、正しくインストールされたことになります。

 XMLパーサをサーバにインストールしてXML文書を処理する準備が整いました。次回からこの環境を利用して、実際にXML文書を扱ってみることにします。

 

Index
集中連載:IISでXML文書を扱う方法
第1回 サーバサイドでXMLを操作する意味
  XMLの処理はサーバサイドが主流に
・XMLデータをWebページで扱ううえでの、現状の問題点
・XMLをサーバサイドで処理する意味
IISをXML対応にセットアップ
・ハッキング、ウイルス対策は必須
・XMLパーサのセットアップとアップグレード


XML & SOA フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

HTML5+UX 記事ランキング

本日月間