Google Chromeは、どちらかと言えばコンシューマー向けブラウザという印象が強いでしょう。実際にそれを裏付けるデータがあります。「StatCounter GlobalStats」の世界ブラウザシェアの内容を結果を確認すると、以下の結果が得られます。
※ 青がInternet Explorer、緑がChrome。
企業の営業時間にIEのシェアが上がり、休日にChromeのシェアが上がるあたり、やはりChrome=コンシューマーに利用される傾向がある、IE=企業に利用される傾向がある、と結論付けざる得ないでしょう。実際にこれらのブラウザは異なる指針を持って開発が進められており、Chromeは短いリリース頻度による最新技術指向、IEは長いサポート期間による安定指向という傾向があります。
とはいえ、Chromeもエンタープライズ市場を捨てているわけではありません。Googleは「Chrome for Business」というサービスを提供しており、企業への導入に必要な様々な機能を提供しています。
このサービスはやや煩雑で、その理解に時間を要します。そこで、本記事ではこのサービスについて、要件定義段階で判断材料に使えそうな情報を掻い摘んで紹介します。細かい部分は端折ってはいますが、サービスの全体像についてある程度把握できよう整理しています。
- インターネットを必要としないインストール
- ポリシーによる運用環境の管理
- 古いIE向けWebコンテンツの維持
- サポートライフサイクル
1. インターネットを必要としないインストール
企業向けの場合、インターネットに接続されていない環境下でブラウザのインストールが求められる場合が多いでしょう。Googleは、Chromeをローカルのみでインストールを完結できるMSI型のインストーラーを提供しています。
ダウンロードは、以下のサイトで行えます。
https://www.google.com/intl/ja/chrome/business/browser/admin/
「Chrome MSI をダウンロード」をクリックすれば、利用許諾が表示されます。「合意してインストール」という記述がありますが、これは表現として誤りです。このボタンをクリックすると、ファイルのダウンロードが始まるだけで、インストールが開始されるわけではありません。
あとは、ダウンロードされたファイル「GoogleChromeStandaloneEnterprise.msi」を、インストールしたいコンピュータへ配布し、実行するだけで完了です。
ただ、これはあくまでローカルでインストールができる方法でしかありません。大規模な企業システムへ適用する場合、グループポリシー管理やレガシー資産の維持が必要となるでしょう。これらの対策は、次章以降で説明します。
2. ポリシーによる運用環境の管理
開発者が意外と見落としがちなのが、IT管理者によるポリシー管理の有無です。
企業系システムでは、IT管理者側でシステム利用者ができること・できないことを細かく制御したいという要望に、答えることが求められることもあるでしょう。Firefoxはシステムごとに利用するブラウザをバイナリレベルで分けて、ガチガチにカスタマイズして動作させることが可能です。しかし、ChromeやIEは基本的に一つのOSに一つのバージョンしか利用できないため、システム単体だけで判断が行えないというリスクを負っています。
IEは、Active Directoryの「グループポリシー」やユーザによる「設定」により、ブラウザの動作を制限させることができます。特にWindows7世代は、この機能に頼って古いシステムを動かしているケースも少なくありません。Chromeはこの代替手段として、「Chromeポリシー(※ Group Policy APIと呼んでいる箇所もあり)」という独自のポリシー管理機構を持ちます。
以下のURLにて、説明されています。
https://support.google.com/chrome/a/answer/187202
★ ポリシーの設定値
Chromeでは、200を超える細かいポリシーの設定を持ちます。Chromeブラウザから「chrome://policy」にアクセスすると、ポリシーの設定値を確認できます。
それこそ、アクセスできるURLのホワイトリスト・ブラックリスト、ブックマークバーを有効化させるかといった基本的な設定から、プロキシサーバのURL、プラグインを有効化させるサイトのURLに至るまで、幅位広い範囲にその影響は及びます。
なお、個々のポリシーの意味は、以下のURLにて説明されています。
http://www.chromium.org/administrators/policy-list-3
★ 設定を行う手段
ポリシーは、Chromeでは以下3つのレイヤーから操作できるようにしています。
最上位はChromeでログインすることにより反映される設定で、Googleアカウントレベルで指定するポリシーです。それを、OSが持つActive Directoryなどにより指定されたポリシーで上書きします。OSに依存しているのでなく、OSで管理されたアカウント単位で設定するものです。そして最終的には、デバイス/OSレベルで個別設定されたポリシーで上書きされます。レジストリレベルと考えるとしっくりくるでしょう。
言うまでもなく、最上位のクラウドベースは、インターネットがあること前提です。IT管理者が、「http://admin.google.com」へアクセスし管理対象のGoogleアカウントユーザの設定を指定します。
インターネットに依存させないレベルでは、OSユーザポリシー、マシンポリシーなどが該当します。これらはOSが持つ管理機構次第であるため、別途OSごとにその設定方法を理解しておく必要があるでしょう。マシンレベルにまで達すると、Windowsの場合、システム利用者側で設定をインストールする手間が発生するため、規模によっては現実的でないかもしれません。
筆者の感覚として、国内のエンタープライズに適した利用方法は、イントラネット内で完結し強制力も高い「OSユーザポリシー」あたりが妥当に思えます。
ここで紹介した以外には、帯域外管理を利用してポリシーの設定をプッシュさせるなんていう方法も提案されています。Googleアカウントにログインしていなくても設定が強制されるため、システム利用者の環境をガチガチに固めることが可能です。
以下のURLに、Google公式ドキュメントがあります。
https://support.google.com/chrome/a/answer/187202
3. 古いIE向けWebコンテンツの維持
Microsoftがバージョン依存化しざる得ないことを暗に認めてしまっているIE8以下向けに作られたWebコンテンツ・Webシステムは、Chromeの場合そのままでは動かない可能性があります。
企業向けChromeは、こうした古い資産の維持を運用しなくてはいけないことを想定しており、IEへの切り替え、エミュレートするバージョンの指定が行える仕組みを持ちます。
これを、「レガシーブラウザサポート(LBS)」といいます。
https://support.google.com/chrome/a/answer/3019558?hl=ja
考え方としては、以下のイメージです。
Chrome向けにアクセスするとChromeが起動し、レガシーIE向けにアクセスするとIEが起動するというもの。言うまでもなく、この機能はWindows限定になります。上記のような動作を実現するために、IEとChrome両方にプラグインのインストールなどの対処が必要になります。
4. サポートライフサイクル
Chromeは、IEのような長いサポートライフサイクルも、FirefoxのESRのような特定のバージョンを一定期間サポートする仕組みも持っていません。非常に短い周期でバージョンアップが必要になります。しかし、これはエンタープライズユースでは現実的とは言えません。バージョンアップ前の動作テストに十分な時間を割きたいところです。
Chromeは自動アップデートが必須というわけでなく、2章のグループポリシーを利用すれば、アップデートのタイミングを制御することができます。詳細は、以下のURLにて解説されています。
https://support.google.com/chrome/a/answer/187207?hl=ja
最後に
「Chromeで企業システムを動かすなんてとんでもない!」なんて思われがちですが、ユーザ企業が標準ブラウザとしてIE8を選択してしまったケースでは、その制約から、選択に含めざる得ないことも少なくないはずです。Windows 7世代のWebシステム開発では、IEだけでは実装が困難な難しいなんてことも出てくるはずです。
ただ、Chromeがパーフェクトでないのもまた事実。ガッツリActive Directoryで染めてしまっている場合は、管理がかなり煩雑になったり、新しいポリシーの適用に多くのコストを必要とすることもあります。一長一短ですね。
意外とGoogleも、こういう面白いソリューションを持っているんだという紹介でした。