ワークショップの様子
ワークショップの様子
[画像のクリックで拡大表示]

 Windows Vistaを企業に導入する際、気をつけるべきポイントは何か――。マイクロソフトは2007年4月中旬、同社製品を用いたシステム構築案件でのコンサルティングを担当するパートナー各社を対象に、Vistaの企業導入に関するワークショップを開催した。企業システムに影響を与えそうな変更点と対処策が多数紹介され、各社のコンサルタントは熱心に耳を傾けていた。

 マイクロソフトは、Vistaの企業導入が本格的に始まるのは2007年夏から秋と見ている。Vistaを用いたシステム構築案件の増加が予想されるため、コンサルタントはそれまでに、勘所を身につけておく必要がある。

 講義の内容は多岐にわたったが、その中から重要なポイントを2点紹介しよう。ユーザーアカウント制御(UAC)と、ネットワークに関する変更点だ。

動かないアプリの半分はUACが原因

 UACは、講師が特に時間を割いて説明した項目の1つ。管理者権限でログインしたユーザーに対しても通常は標準ユーザーの権限のみを付与することで、ウイルスなどによりシステムに悪意のある変更が加えられるのを阻止する機能だ。重要な操作の実行前には確認のメッセージを表示し、ユーザーが同意すれば一時的に権限を昇格させる。

 UACはセキュリティ向上には有用な一方、アプリケーションの互換性には重大な影響を与える。例えば、管理者しかアクセス権のないフォルダーやレジストリに対して、権限の昇格なしに書き込みを試みるようなアプリケーションは正常に動かない。アプリケーションをインストールする「Program Files」や、Windowsのシステム情報を格納する「Windows」フォルダーに直接設定情報を書き込むものなどがこれに該当する。「Vistaで動かなくなるアプリケーションの半分から3分の1は、UACが原因」と講師が言うほど、影響は大きい。

 マイクロソフトは、この問題の回避策を用意した。上述のようなフォルダーへの書き込みが発生した場合、別のフォルダーに仮想的に書き込みを実施する。具体的には、環境変数で表されるところの「%ProgramFiles%」や「%WinDir%」「%SystemRoot%」などのフォルダーへの書き込みは「C:\Users\<ユーザー名>\Appdata\Local\VirtualStore」に、レジストリの「\\HKLM\Software」への書き込みは「\\HKCU\Software\Classes\VirtualStore\Machine\Software」にリダイレクトする。こうすれば、書き込みエラーによりアプリケーションが異常終了することはなくなる。

 だが、この回避策には弊害もあることに注意が必要だ。まず仮想的な書き込みが実施された場合、その内容はログイン中のユーザーにしか反映されない。仮想的に書き込まれる場所が、各ユーザー用のデータを格納しておく場所だからだ。全ユーザーに共通の設定や、パソコン全体に対する設定を保持しておく必要があるアプリケーションの場合は、問題が発生する可能性がある。

 また、この回避策は未来永劫用意されるわけではない。「あくまで一時的な策なので、次のOSではたぶんなくなるだろう」(マイクロソフト)という。また64ビット版のVistaでは、そもそもこの回避策は導入されていない。これに頼らず、アプリケーションをきちんとUACに対応させることが必要だ。

 ならばアプリケーションの対応が終わるまで、UACを無効にすればよい……そんな考え方もできなくはない。UACの動作はActive Directoryのグループポリシーで設定できるので、社内のパソコン全体に対してUACを無効にすることも可能だ。だがマイクロソフトによれば、Vistaを導入済みのユーザーのうち「UACを無効にして運用している顧客は現在のところない」という。UACはVistaのセキュリティの根幹を成す機能の一つなので、UACを利用したうえでアプリケーションを動かす道を選んでほしい、と強調した。

脱ブラウズマスター、今後はLLTDへ

 ネットワークに関する機能も、Vistaでは大きく変わった。ネットワークの場所(ロケーション)を自動的に認識し、適切な設定に切り替える「NLA(Network Location Awareness)」と呼ばれる機能の強化や、「Windowsファイアウォール」に送信データのフィルタリング機能を追加したことなどが挙げられる。

 加えて、ネットワーク探索に関する動作が大幅に変更になった。Windows XPまでは、「マイネットワーク」からネットワーク内に存在する他のパソコンを一覧すると、ドメインやワークグループの単位で表示されていた。これに対してVistaでは、同一ネットワーク(セグメント)内に存在するパソコンが、すべて並列に表示される。

 その原因は、Vistaで導入された「LLTD(Link Layer Topology Discovery)」という通信技術にある。同一セグメント内に存在するパソコンや周辺機器を、1台ずつ探し出すものだ。従来は「NetBIOS」という仕組みを使い、ネットワーク内で代表となるパソコン(ブラウズマスター)が保持しているパソコンの一覧表(ブラウズリスト)を基に、他のパソコンを表示していた。Vistaでもこれは引き続き利用可能だが、優先的に使用するのはLLTD。その結果、ネットワーク一覧の動作が変更になったというわけだ。

 メリットとしては、これまでブラウズリストになかったネットワーク上のプリンターやストレージも一覧可能になることがある。半面、あえてブラウズリストに載せなかったパソコンが閲覧可能になってしまうという問題が生じる。例えば一般のユーザーに見せるのはサーバーだけで、他のパソコンの存在は隠しておきたい、といったことができなくなる。また同一セグメント内に多数のパソコンが存在する場合には、すべてを表示するまでにかなりの時間がかかるという不都合もある。解決策は「LLTDを止める以外にない」(マイクロソフト)。

 マイクロソフトは今後、ブラウズマスター方式を縮小していく方針だ。ネットワーク上にコンピューターが増えると、ブラウズリストの参照に時間がかかるためだという。LLTDはVistaでしか使えないが、もし社内のパソコンがすべてVistaならばLLTDを推奨する。実際、マイクロソフト社内では既にブラウズマスターは利用しておらず、LLTDだけで運用しているという。

 なおこのワークショップに参加したマイクロソフトのコンサルティングパートナーは、以下の通り。NTTコミュニケーションズ、ウチダスペクトラム、キヤノンネットワークコミュニケーションズ、ソフトバンクBB、伊藤忠テクノソリューションズ、インテック、ラック、三菱電機ビジネスシステム、大塚商会、日立システムアンドサービス、三菱電機インフォメーションテクノロジー、日本ビジネスコンピュータ、日本ビジネスシステムズ、の13社である。