TLで話題にだしたけれど、Server 2012でどうなってるか把握していなかったので、確認してみました。
結論から言うと(私がライセンス関連資料を読む限り)、2012 Serverでは以下のライセンスとなっているようです。
- インターネットへの一切のユーザ認証を行わない形での公開
- CAL不要
- インターネットへの何らかの形でのユーザ認証を行う公開
【注意及び免責事項】
本解釈は下記に示す資料に基づいた、私個人の解釈です。この解釈に誤りがあり、それによりあなたが何らかの損害を受けたとしても、私は一切保障することができません。お仕事でお使いの場合やなんらかクリティカルな結果を及ぼす恐れがある場合等、最終的にマイクロソフトかライセンスのリセラーに確認を行ってから判断してください。
あと、解釈に間違いがある場合は、ぜひご指摘ください。よろしくお願いします。
根拠をひとつづ、見ていきましょう。
まずは『製品ライセンスについてよく寄せられる質問 (FAQ)』を確認。
まずはここ、製品ライセンスについてよく寄せられる質問 (FAQ) を見てみます*1。
注目は「サーバー」の項(タブ)の、『CALの要件』の下の方のこの項目です。
ユーザーまたはデバイスが Windows Server を実行するサーバーにインターネット経由でアクセスし、認証はサード パーティ製認証アプリケーション (非マイクロソフト ベースの認証) によって行われる場合でも、ユーザーまたはデバイスには Windows Server CAL (外部ユーザーに対してはエクスターナル コネクタ ライセンス) が必要ですか?
製品ライセンスについてよく寄せられる質問 (FAQ)−CALの要件
要はこういう質問です。
- インターネット経由でアクセスするWebアプリで…
- Windows認証を使わずに独自でユーザ管理したりしてる場合でも…
- CALとかEC(エクスターナルコネクタ)ライセンスが必要なのか?
回答をみてみましょう。
はい、必要です。Windows Server を実行するサーバーによりユーザーまたはデバイスが認証される場合、またはその他のいかなる方法によってでも個々に識別される場合は、Windows Server CAL が必要です。
製品ライセンスについてよく寄せられる質問 (FAQ)−CALの要件
『必要です』と。断言してますね。
つまり『Windows認証だろうがアプリ独自認証だろうがユーザを識別してアクセスさせる場合はCALかECライセンスが必要』とハッキリ書いてありますね。これは解釈に幅はなさそうです。
では、ユーザ認証を一切行わないwebアプリのインターネット公開について、CALが不要かどうか。上記の文章の続きがあります。
マイクロソフト製品使用権説明書では、 特定の Windows Server CAL 要件として、 インターネットを介してのみお客様の本サーバー ソフトウェアのインスタンスにアクセスし、かつアクセスの際に認証を受けないかまたは本サーバー ソフトウェアもしくはその他のいかなる方法によっても個々に識別されないユーザーまたはデバイスについては、CAL が不要な旨が記載されています。
製品ライセンスについてよく寄せられる質問 (FAQ)−CALの要件
なんとなく不要っぽい書き方ではありますが、結局のところ『マイクロソフト製品使用権説明書を読めば詳しいこと書いてあるよ』としか書いてないような気もします。煮え切りませんね。
『マイクロソフト製品使用権説明書』を読んでみる。
ということで、こちらを見てみましょう。これは、製品使用権、製品一覧およびライセンス トピックスからword形式でダウンロードできます。現時点は『マイクロソフト製品使用権説明書 (2013 年 7 月版)』というやつが最新の模様。
上記「2013年7月版」の「Windows Server 2012 Standard」のページ(29ページ)を確認するとこう書いてあります
5.Web ワークロードまたは HPC ワークロードを実行している本サーバー ソフトウェアへのアクセスには、CAL は必要ありません。
マイクロソフト製品使用権説明書(2013 年 7 月版)−p29 アクセス ライセンス
ここで言う「Web ワークロード」とは何でしょう。これは10ページにこう書いてありました。
Web ワークロード (「インターネット Web ソリューション」とも呼ばれます) は、公的にアクセス可能であり、Web ページ、Web サイト、Web アプリケーション、Web サービス、または POP3 メール サービスでのみ構成されます。インターネット Web ソリューションで本ソフトウェアによって提供されるコンテンツ、情報、およびアプリケーションへのアクセスは、お客様またはお客様の関連会社の従業員だけに限定されないものとします。
マイクロソフト製品使用権説明書(2013 年 7 月版)−p10
なるほど、一般的なwebアプリケーションやwebサービスのことを指していると解釈すればOKだと思います。
これを合わせて考えれば、
- インターネットへの一切のユーザ認証を行わない形でのWebアプリ・サービスの公開はCAL不要
と解釈して良さそうです。
またさらにここには、こうとも書いてあります。
インターネット Web ソリューションに含まれるソフトウェアは、以下のものを実行するために使用されます。
- Web サーバー ソフトウェア (Microsoft インターネット インフォメーション サービスなど) および管理またはセキュリティ エージェント (System Center Operations Manager エージェントなど)
(略)
マイクロソフト製品使用権説明書(2013 年 7 月版)−p10
『Microsoft インターネット インフォメーション サービスなど』と書いていてあり、IISに限定していません。厳密にかいていませんが、同様の機能を含むアプリケーションについては、ぞれぞれに個別にライセンスが規定されていなければ、ここに準じると考えるのが無難でしょう。すなわち、ApacheやNginexもここの範疇に入ると解釈して良さそうです。
エクスターナル コネクタは何ができるのか
最後に、エクスターナル コネクタの確認です。記載はこちらにありました。
クライアント アクセス ライセンス−概要
外部のユーザー (ビジネス パートナー、外部請負業者、顧客など) が社内のネットワークにアクセスできるようにするには、2 種類のライセンス方法があります。
クライアント アクセス ライセンス−概要−エクスターナル コネクタ
- それぞれの外部ユーザーについて CAL を取得します。
- 外部ユーザーがアクセスする各サーバーについてエクスターナル コネクタ (EC) ライセンスを取得します。
イントラの外、つまりインターネットから来るユーザに対して認証が必要な状態でwebアプリ*2にアクセスさせるには、『人数分のCAL買うか、ECライセンスを買ってください』と読めます。あと、もう少し下のほうを読むと『どっちにするかは安いほうでいいよ』とも書いてあります。
また、注意ですが、このECライセンスの適用範囲は、イントラや組織の外、インターネットからくる利用者について、です。組織内のユーザからのアクセスはCALが必要になります。
まとめと注意
ということで、冒頭の繰り返しになりますがWindows Server 2012の場合、Webアプリ(IISやApache等サーバソフトウェアの種別によらず)、ライセンスについては以下を把握しておく必要があります。
- インターネットへの一切のユーザ認証を行わない形での公開
- CAL不要
- インターネットへの何らかの形でのユーザ認証を行う公開
また注意ですが、これらはOSバージョンごとに代わってくる可能性があります。特に2008まではWeb Editionというものもあって、こちらはまた条件が異なりました。今回のはあくまで2012 standardについてです*3。
最後に、繰り返しになりますが、本解釈は上記で示した資料に基づいた、私個人の解釈です。この解釈に誤りがあり、それによりあなたが何らかの損害を受けたとしても、私は一切保障することができません。お仕事でお使いの場合やなんらかクリティカルな結果を及ぼす恐れがある場合は、最終的にマイクロソフトかライセンスのリセラーに確認を行ってください。
*1:ここはボリュームライセンス関係のサイトですが、あくまで『ボリュームライセンスで買ったユーザ”からの”FAQ』というだけで、内容自体はボリュームライセンスに限定するものではないようです
*2:とはここでは限っていませんが
*3:DC Editionも同じようですが