(57)【要約】【課題】配信サービスに関するアクセス制限を適切に実現する。【解決手段】クライアントＣＬと、アプリケーションサーバＡＰ及びストリーミングサーバＳＴとの間に位置するリバースプロキシサーバＲＰがアクセス制限を実行する。リバースプロキシサーバＲＰは、クライアントＣＬからのウェブページ要求に基づいてアプリケーションサーバＡＰから送信されたウェブページ応答を受信する。リバースプロキシサーバＲＰは、ウェブページ応答に含まれる、クライアントＣＬを識別するクライアント識別子と配信コンテンツを識別するコンテンツ識別子と配信キーとを、関連付けて記憶する。リバースプロキシサーバＲＰは、クライアントＣＬから受信した配信開始要求が、関連付けて記憶したクライアント識別子とコンテンツ識別子と配信キーに対応するか否かを判定する。対応すると判定した場合に、配信開始要求がストリーミングサーバＳＴに転送される。【選択図】図１
2016072712.tif 000002
【特許請求の範囲】
【請求項１】
配信サービスを提供する１以上の配信サーバと、
前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバと、
クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する１以上のリバースプロキシサーバと
を備える配信システムにおけるアクセス制限方法であって、
前記リバースプロキシサーバにおいて、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する第１ステップと、
前記アプリケーションサーバにおいて、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する第２ステップと、前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成し、ウェブページ応答と共に前記リバースプロキシサーバに送信する第３ステップと、
前記リバースプロキシサーバにおいて、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する第４ステップと、前記ウェブページ応答を前記クライアントに転送する第５ステップと、
前記リバースプロキシサーバにおいて、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記第４ステップにて記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定する第６ステップと、対応すると判定した場合に前記配信開始要求を前記配信サーバに転送する第７ステップと、
前記配信サーバにおいて、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する第８ステップと、
前記リバースプロキシサーバにおいて、前記配信開始応答を前記クライアントに転送する第９ステップとを備える
アクセス制限方法。
【請求項２】
前記配信キーを、前記ウェブページ応答に含まれる前記配信コンテンツを指定するＵＲＬのクエリストリングに付加する
請求項１のアクセス制限方法。
【請求項３】
前記第１ステップにて転送される前記ウェブページ要求は前記クライアントのブラウザによって生成されており、前記第５ステップにて転送された前記ウェブページ応答は前記クライアントの前記ブラウザに供給され、
前記ウェブページ応答が前記ブラウザから前記クライアントのプレイヤに供給されることにより、前記プレイヤが当該ウェブページ応答に含まれる前記配信キーを取得し、
前記第６ステップにて前記リバースプロキシサーバが受信する、前記配信キーを含む前記配信開始要求は前記プレイヤによって生成される
請求項２のアクセス制限方法。
【請求項４】
前記第９ステップの後、前記リバースプロキシサーバにおいて、前記クライアントから配信要求を受信した後に、前記配信要求が、前記第４ステップにて記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定する第１０ステップと、対応すると判定した場合に前記配信要求を前記配信サーバに転送する第１１ステップと、
前記配信サーバにおいて、前記配信要求を受信した後に、前記配信応答に対応する配信データを含む配信応答を前記リバースプロキシサーバに送信する第１２ステップと、
前記リバースプロキシサーバにおいて、前記配信応答を前記クライアントに転送する第１３ステップとを備える
請求項１から３のいずれかのアクセス制限方法。
【請求項５】
前記配信システムは、複数の前記リバースプロキシサーバを備え、
複数の前記リバースプロキシサーバは、前記第４ステップにていずれかの前記リバースプロキシサーバが関連付けて記憶した前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーを共有する
請求項１から４のいずれかのアクセス制限方法。
【請求項６】
配信サービスを提供する１以上の配信サーバと、
前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバと、
クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する１以上のリバースプロキシサーバとを備え、
前記リバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する転送部を備え、
前記アプリケーションサーバは、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する認証部と、前記認証部が前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成するキー生成部と、前記配信キーをウェブページ応答と共に前記リバースプロキシサーバに送信する応答送信部とを備え、
前記リバースプロキシサーバは、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部を備え、
前記リバースプロキシサーバの前記転送部は、前記ウェブページ応答を前記クライアントに転送し、
前記リバースプロキシサーバは、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記記憶部に記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定するプロキシ認証部を備え、
前記プロキシ認証部が対応すると判定した場合に、前記転送部は前記配信開始要求を前記配信サーバに転送し、
前記配信サーバは、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する配信部を備え、
前記リバースプロキシサーバの前記転送部は、前記配信開始応答を前記クライアントに転送する
配信システム。
【請求項７】
配信サービスを提供する１以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバとを備える配信システムに用いられるリバースプロキシサーバであって、
前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送し、
前記ウェブページ要求に基づいて前記アプリケーションサーバから送信された、配信キーが付加されたウェブページ応答を前記クライアントに転送する転送部と、
前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部と、
前記クライアントから受信した配信開始要求が、前記記憶部に記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定するプロキシ認証部とを備え、
前記プロキシ認証部が対応すると判定した場合に、前記転送部は、前記配信開始要求を前記配信サーバに転送し、その後、前記配信開始要求に基づいて前記配信サーバから送信された配信開始応答を前記クライアントに転送する
リバースプロキシサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス制限方法、配信システム、及びリバースプロキシサーバに関する。
【背景技術】
【０００２】
近年、インターネット上での情報配信（例えば、動画又は音声の配信）において、ストリーミング技術が活用されている（例えば、特許文献１）。ストリーミングは、情報ファイルの配信（非蓄積的なダウンロード）と再生とを並列的に実行する技術である。ストリーミング技術を用いることにより、配信を開始してから再生が開始するまでの待ち時間を短縮できると共に、クライアント端末が情報ファイルを再生可能な状態で蓄積（保存）することを抑止できる。
【０００３】
ストリーミングシステムにおいては、ストリーミングサービス自体を提供するストリーミングサーバと、ウェブページの生成、ユーザ管理、及びコンテンツ管理等のストリーミングに関するサービスを提供するアプリケーションサーバとが併用されるケースが多い。例えば、ストリーミングサービスを利用するユーザは、アプリケーションサーバが提供するウェブページを介して、情報ファイル（配信コンテンツ）にアクセスする。なお、ストリーミングシステムは、複数のストリーミング方式（プロトコル及びコーデック）に対応する複数のストリーミングサーバを有する場合がある。
【０００４】
ストリーミング技術を用いた配信サービスにおいては、ユーザに対するアクセス制限が行われる場合がある。例えば、有償の配信サービスにおいては、ユーザがある配信コンテンツのストリーミングを要求した場合、そのユーザがその配信コンテンツへの支払いを終えているか否かに応じて、その配信コンテンツについてのアクセス制限（アクセス許可又はアクセス拒否）が実行される。一般的に、以上のアクセス制限は、アプリケーションサーバ又はストリーミングサーバにおいて実行される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１９７８０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
アプリケーションサーバにおいて以上のアクセス制限を実現する場合、クライアントがストリーミング配信を受けている間はアプリケーションサーバ内のプロセスが専有され続ける。したがって、ストリーミングのアクセス数が増大するのに応じて、ストリーミングサーバだけでなくアプリケーションサーバも増強する必要がある。一方、ストリーミングサーバにおいて以上のアクセス制限を実現する場合、複数のストリーミング方式に対応する複数のストリーミングサーバについてそれぞれ個別にアクセス制限を実装する必要がある。
【０００７】
なお、以上ではストリーミングにおけるアクセス制限の課題について述べたが、ストリーミング以外の配信方式（特に、長時間にわたって１つのセッションが専有される方式）においても同様の課題が存在し得ることは、当業者に当然に理解される。
【０００８】
以上の事情を考慮して、本発明は、配信サービスに関するアクセス制限を適切に実現することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のアクセス制限方法は、配信サービスを提供する１以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバと、クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する１以上のリバースプロキシサーバとを備える配信システムにおけるアクセス制限方法であって、前記リバースプロキシサーバにおいて、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する第１ステップと、前記アプリケーションサーバにおいて、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する第２ステップと、前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成し、ウェブページ応答と共に前記リバースプロキシサーバに送信する第３ステップと、前記リバースプロキシサーバにおいて、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する第４ステップと、前記ウェブページ応答を前記クライアントに転送する第５ステップと、前記リバースプロキシサーバにおいて、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記第４ステップにて記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定する第６ステップと、対応すると判定した場合に前記配信開始要求を前記配信サーバに転送する第７ステップと、前記配信サーバにおいて、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する第８ステップと、前記リバースプロキシサーバにおいて、前記配信開始応答を前記クライアントに転送する第９ステップとを備える。
【００１０】
本発明の配信システムは、配信サービスを提供する１以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバと、クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する１以上のリバースプロキシサーバとを備え、前記リバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する転送部を備え、前記アプリケーションサーバは、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する認証部と、前記認証部が前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成するキー生成部と、前記配信キーをウェブページ応答と共に前記リバースプロキシサーバに送信する応答送信部とを備え、前記リバースプロキシサーバは、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部を備え、前記リバースプロキシサーバの前記転送部は、前記ウェブページ応答を前記クライアントに転送し、前記リバースプロキシサーバは、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記記憶部に記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定するプロキシ認証部を備え、前記プロキシ認証部が対応すると判定した場合に、前記転送部は前記配信開始要求を前記配信サーバに転送し、前記配信サーバは、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する配信部を備え、前記リバースプロキシサーバの前記転送部は、前記配信開始応答を前記クライアントに転送する。
【００１１】
本発明のリバースプロキシサーバは、配信サービスを提供する１以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する１以上のアプリケーションサーバとを備える配信システムに用いられるリバースプロキシサーバである。本発明のリバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送し、前記ウェブページ要求に基づいて前記アプリケーションサーバから送信された、配信キーが付加されたウェブページ応答を前記クライアントに転送する転送部と、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部と、前記クライアントから受信した配信開始要求が、前記記憶部に記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定するプロキシ認証部とを備え、前記プロキシ認証部が対応すると判定した場合に、前記転送部は、前記配信開始要求を前記配信サーバに転送し、その後、前記配信開始要求に基づいて前記配信サーバから送信された配信開始応答を前記クライアントに転送する。
【発明の効果】
【００１２】
本発明によれば、クライアントと、配信サーバ及びアプリケーションサーバとの間に配置されるリバースプロキシサーバにてアクセス制限が適切に実行される。したがって、アプリケーションサーバにおいてプロセスが専有されることが抑制されると共に、ストリーミングサーバにおいてアクセス制限を個別に実装することが不要となる。
【図面の簡単な説明】
【００１３】
【図１】実施形態に係るストリーミングシステムを示す概略図である。
【図２】実施形態のアプリケーションサーバの構成を示すブロック図である。
【図３】実施形態のストリーミングサーバの構成を示すブロック図である。
【図４】実施形態のリバースプロキシサーバの構成を示すブロック図である。
【図５】実施形態のアクセス制限動作のシーケンス図である。
【図６】実施形態のアクセス制限動作のシーケンス図である。
【図７】変形例に係るストリーミングシステムの示す概略図である。
【発明を実施するための形態】
【００１４】
１（１）．  ストリーミングシステムの構成
図１は、本発明の実施形態に係るストリーミングシステム１を示すブロック図である。ストリーミングシステム１は、ストリーミングサービスを提供する１以上のストリーミングサーバＳＴと、ストリーミングサービスに対応するウェブサービスを提供する１以上のアプリケーションサーバＡＰと、クライアントＣＬからの要求をアプリケーションサーバＡＰ又はストリーミングサーバＳＴに転送するリバースプロキシサーバＲＰとを備える。認証データベースＡＤは、アプリケーションサーバＡＰ内に設けられてもよいし、ストリーミングシステム１内に独自のサーバとして設けられてもよい。
【００１５】
「ストリーミングサービスに対応するウェブサービス」は、ストリーミングサービスを提供する際に併せて提供される付随的なサービスである。例えば、ストリーミングコンテンツに関するウェブページの生成、サービス利用者（ユーザ）の認証、コンテンツへのアクセス制限、コンテンツ課金などが挙げられる。ユーザは、原則として、ストリーミングサービスを利用する際、まず以上のウェブサービス（ウェブページ）にアクセスする。
【００１６】
クライアントＣＬは、インターネットＩＮを介してストリーミングシステム１に接続する。クライアントＣＬはリバースプロキシサーバＲＰと接続し、アプリケーションサーバＡＰ及びストリーミングサーバＳＴとは直接的には接続しない。クライアントＣＬとしては、パーソナルコンピュータ、タブレット端末、及びスマートフォン等が例示される。クライアントＣＬは、アプリケーションサーバＡＰ等から取得したウェブページを表示するブラウザＢと、ストリーミングサーバＳＴ等から取得したストリーミングデータを再生するメディアプレイヤＭとを備える。
【００１７】
１（２）．  ストリーミングシステムに関して発見された課題
近年、新たなＨＴＭＬ（HyperText Markup Language）規格であるＨＴＭＬ５の普及が進んでいる。ＨＴＭＬ５は、従前のＨＴＭＬと異なりメディアプレイヤＭの実装をブラウザＢに依存している。すなわち、ブラウザＢの種類によって、メディアプレイヤＭに採用されるストリーミングプロトコル及びエンコード方式（ストリーミング方式）が相違する。更に、ブラウザＢとメディアプレイヤＭとの間でデータ（例えば、ＨＴＴＰヘッダ）を引き渡す際の挙動も、ブラウザＢに依存して相違する。例えば、ブラウザＢの種類によっては、一般的には引き渡されるＨＴＴＰヘッダがメディアプレイヤＭに引き渡されず、予期された動作が正確に実現されない場合がある。
【００１８】
したがって、本実施形態のストリーミングシステム１は、複数のブラウザＢに対応するため、複数のストリーミング方式に対応した複数のストリーミングサーバＳＴを備えると共に、ブラウザＢ−メディアプレイヤＭ間のデータ引渡し挙動の相違から生じる問題を回避するデータ構成を採用する（詳細は後述される）。
【００１９】
１（３）．  サーバ構成
１（３）−１．  アプリケーションサーバの構成
図２は、本実施形態のアプリケーションサーバＡＰの主要な構成要素を示すブロック図である。アプリケーションサーバＡＰは、通信部１１０と記憶部１２０と制御部１３０とを備える。通信部１１０は、他の装置との接続に用いられるインタフェースである。記憶部１２０は、セッションキー、ストリーミングキー等の認証情報、ウェブページ生成に用いられるコンテンツ情報、及びコンピュータプログラムを記憶する記憶媒体である。
【００２０】
制御部１３０は、アプリケーションサーバＡＰにおける入力／処理／出力を統合的に制御する。制御部１３０は、認証部１３２とキー生成部１３４とページ生成部１３６と応答送信部１３８とを備える。認証部１３２は、認証データベースＡＤを参照して、クライアントＣＬを使用するユーザに関する認証動作（ログオン認証、アクセス制限等）を実行する。キー生成部１３４は、認証部１３２の認証動作の結果に基づいて、認証されたユーザ又はクライアントＣＬを特定するための種々の認証キー（セッションキー、ストリーミングキー等）を生成する。ページ生成部１３６は、クライアントＣＬからの要求に基づいてウェブページを生成する。ウェブページがストリーミングコンテンツを提示する場合、そのウェブページにはストリーミングコンテンツを識別するコンテンツ識別子が含まれる。応答送信部１３８は、リバースプロキシサーバＲＰから転送されたクライアントＣＬからの要求に対して応答を送信する。
【００２１】
制御部１３０及び制御部１３０内の各要素は、アプリケーションサーバＡＰ内のＣＰＵ（不図示）が記憶部１２０内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
【００２２】
１（３）−２．  ストリーミングサーバの構成
図３は、本実施形態のストリーミングサーバＳＴの主要な構成要素を示すブロック図である。ストリーミングサーバＳＴは、通信部２１０と記憶部２２０と制御部２３０とを備える。通信部２１０は、他の装置との接続に用いられるインタフェースである。記憶部２２０は、音声や動画等のストリーミングコンテンツ及びコンピュータプログラムを記憶する記憶媒体である。制御部２３０は、ストリーミングサーバＳＴにおける入力／処理／出力を統合的に制御する。制御部２３０は、他の装置（リバースプロキシサーバＲＰ等）からの要求に応じてストリーミングコンテンツを配信する配信部２３２を備える。制御部２３０及び制御部２３０内の各要素は、ストリーミングサーバＳＴ内のＣＰＵ（不図示）が記憶部２２０内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
【００２３】
１（３）−３．  リバースプロキシサーバの構成
図４は、本実施形態のリバースプロキシサーバＲＰの主要な構成要素を示すブロック図である。リバースプロキシサーバＲＰは、通信部３１０と記憶部３２０と制御部３３０とを備える。通信部３１０は、他の装置との接続に用いられるインタフェースである。記憶部３２０は、認証動作に用いられる認証情報及びコンピュータプログラムを記憶する記憶媒体である。
【００２４】
制御部３３０は、リバースプロキシサーバＲＰにおける入力／処理／出力を統合的に制御する。制御部３３０は、転送部３３２と情報取得部３３４とプロキシ認証部３３６とを備える。転送部３３２は、クライアントＣＬから受信した要求を、その種別に応じて、アプリケーションサーバＡＰ又はストリーミングサーバＳＴに転送すると共に、アプリケーションサーバＡＰ又はストリーミングサーバＳＴから受信した応答をクライアントＣＬに転送する。情報取得部３３４は、アプリケーションサーバＡＰからクライアントＣＬへ送信される応答から、認証動作に必要な情報を取得して記憶部３２０に記憶する。プロキシ認証部３３６は、クライアントＣＬ（メディアプレイヤＭ）からの要求に関する認証動作を実行する。
【００２５】
制御部３３０及び制御部３３０内の各要素は、リバースプロキシサーバＲＰ内のＣＰＵ（不図示）が記憶部３２０内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
【００２６】
１（４）．  ストリーミングにおけるアクセス制限動作
図５及び図６を参照して、本実施形態のストリーミングにおけるアクセス制限動作を説明する。
【００２７】
１（４）−１．  ログオン動作
クライアントＣＬのユーザがブラウザＢを操作して、ストリーミングサービスに対応するウェブサービスへのログオン要求をブラウザＢから送信する（S10）。ログオン要求には、ユーザ識別子及びパスワードの組合せが含まれる。ログオン要求は、暗号化された後に送信されると好適である。リバースプロキシサーバＲＰの転送部３３２は、クライアントＣＬから受信したログオン要求をアプリケーションサーバＡＰに転送する（S12）。
【００２８】
アプリケーションサーバＡＰの認証部１３２は、受信したログオン要求に対応するユーザのログオンを許可すべきか否かを、認証データベースＡＤを用いて判定する（S14及びS16）。より具体的には、認証部１３２は、ログオン要求に含まれるユーザ識別子及びパスワードの組合せが登録されているか否かを認証データベースＡＤに問い合わせる。認証データベースＡＤは、受信したユーザ識別子及びパスワードの組合せが登録されているか否かをアプリケーションサーバＡＰに応答する。ユーザ識別子及びパスワードの組合せが登録されている場合、認証部１３２はそのユーザのログオンを許可する。
【００２９】
アプリケーションサーバＡＰの認証部１３２がそのユーザのログオンを許可すべきと判定した場合、キー生成部１３４は、そのユーザに対応するセッションキーを生成する（S18）。セッションキーは、ログオンが許可されたユーザを識別する情報であり、セッションキーが有効な期間においてそのユーザのログオン状態が維持される。ページ生成部１３６は、ログオンが許可されたことをユーザに示すウェブページのコンテンツを生成する。生成されたコンテンツは、ログオン許可応答に含まれる。応答送信部１３８は、セッションキーをログオン許可応答と共にリバースプロキシサーバＲＰに送信する（S20）。セッションキーは、例えば、ログオン許可応答（ＨＴＴＰレスポンス）のＨＴＴＰヘッダとして送信される。
【００３０】
リバースプロキシサーバＲＰの転送部３３２は、セッションキーが付加されたログオン許可応答をクライアントＣＬに転送する（S22）。クライアントＣＬのユーザは、ログオン許可応答によってログオンが許可されたことを認識できる。
【００３１】
１（４）−２．  ウェブページ提示動作
クライアントＣＬのユーザがブラウザＢを操作して、ブラウザＢからウェブページ要求を送信する（S24）。本例では、ストリーミングコンテンツを提示するウェブページが要求されたと想定する。以上の送信の際、ブラウザＢは、ステップS22にて転送されたセッションキーをウェブページ要求に付加する。リバースプロキシサーバＲＰの転送部３３２は、クライアントＣＬから受信したウェブページ要求をアプリケーションサーバＡＰに転送する（S26）。
【００３２】
アプリケーションサーバＡＰの認証部１３２は、受信したウェブページ要求に含まれるセッションキーに対応するユーザによる、そのウェブページ要求に対応するストリーミングコンテンツ（すなわち、要求されたウェブページにて提示されるストリーミングコンテンツ）に対するアクセスを許可すべきか否かを、認証データベースＡＤを用いて判定する（S28及びS30）。より具体的には、認証部１３２は、ユーザ識別子とコンテンツ識別子の組合せを認証データベースＡＤに送信する。認証データベースＡＤは、コンテンツ識別子にて指定されるストリーミングコンテンツへのアクセス権がそのユーザにあるか否かを返信する。認証部１３２は、アクセス権があればそのユーザからのアクセスを許可する。
【００３３】
アプリケーションサーバＡＰの認証部１３２がそのユーザのアクセスを許可すべきと判定した場合、キー生成部１３４は、そのストリーミングコンテンツに対応するストリーミングキーを生成する（S32）。ページ生成部１３６は、ユーザが要求したストリーミングコンテンツを提示するウェブページのコンテンツを生成する。生成されたコンテンツは、ウェブページ応答に含まれる。応答送信部１３８は、ストリーミングキーをウェブページ応答と共にリバースプロキシサーバＲＰに送信する（S34）。ストリーミングキーは、例えば、ウェブページ応答（ＨＴＴＰレスポンス）のＨＴＴＰヘッダに含まれる。なお、ページ生成部１３６は、ウェブページのコンテンツを生成する際に、ＨＴＴＰヘッダに代えて又は加えて、ウェブページ応答に含まれるストリーミングコンテンツを指定するＵＲＬ（リクエストＵＲＬ）のクエリストリングに、ストリーミングキーを付加してもよい。
【００３４】
ウェブページ応答には、ユーザが要求したウェブページのコンテンツに加えて、ウェブページ要求を送信したクライアントＣＬのクライアント識別子（例えば、クライアントＣＬのＩＰアドレス）と、ウェブページにて提示されるストリーミングコンテンツのコンテンツ識別子とが含まれている。
【００３５】
リバースプロキシサーバＲＰの情報取得部３３４は、ウェブページ応答にストリーミングキーが含まれる場合、コンテンツ識別子、ストリーミングキー、及びクライアント識別子を関連付けて記憶部３２０に記憶する（S36）。なお、情報取得部３３４は、さらにセッションキー及びアクセス時刻をも関連付けて記憶部３２０に記憶してもよい。また、転送部３３２は、ウェブページ応答をクライアントＣＬに転送する（S38）。
【００３６】
１（４）−３．  ストリーミング開始動作
ウェブページ応答にストリーミングコンテンツが含まれることを認識すると、クライアントＣＬのブラウザＢは、メディアプレイヤＭを起動し、ウェブページ応答に含まれるストリーミングキーをメディアプレイヤＭに供給する（S40）。メディアプレイヤＭは、ブラウザＢ内に組み込まれて起動されてもよいし、独立して起動されてもよい。
【００３７】
ブラウザＢに関し、ウェブページ応答に含まれるＨＴＴＰヘッダをメディアプレイヤＭに渡すタイプのブラウザＢ１と渡さないタイプのブラウザＢ２が存在する。ブラウザＢ１については、ストリーミングキーがＨＴＴＰヘッダかＵＲＬのクエリストリングのいずれかに含まれていれば、メディアプレイヤＭがストリーミングキーを取得できる。一方、ブラウザＢ２については、ストリーミングキーがＵＲＬのクエリストリングに含まれている必要がある。
【００３８】
メディアプレイヤＭは配信開始要求を送信する（S42）。配信開始要求は、クライアント識別子、ストリーミングコンテンツのリクエストＵＲＬ、及びＨＴＴＰヘッダを含む。ブラウザＢから供給されたストリーミングキーは、配信開始要求のＨＴＴＰヘッダ及びリクエストＵＲＬのいずれか一方又は双方に含まれる。
【００３９】
リバースプロキシサーバＲＰのプロキシ認証部３３６は、クライアントＣＬ（メディアプレイヤＭ）から配信開始要求を受信する。プロキシ認証部３３６は、配信開始要求に含まれるクライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せが、記憶部３２０に関連付けて記憶されているクライアント識別子、コンテンツ識別子、及びストリーミングキーに対応するか否かを判定する（S44）。対応するとプロキシ認証部３３６が判定した場合、転送部３３２は、配信開始要求をストリーミングサーバＳＴに転送する（S46）。
【００４０】
ステップS44の判定後に、記憶部３２０に記憶されているアクセス時刻が更新されると好適である。また、ステップS46において、配信開始要求のＨＴＴＰヘッダにストリーミングキーが含まれていない場合、転送部３３２が、リクエストＵＲＬのクエリストリングに含まれるストリーミングキーをＨＴＴＰヘッダに付加すると好適である。以降の通信において、ＨＴＴＰヘッダにストリーミングキーが含まれることとなるからである。
【００４１】
ストリーミングサーバＳＴの配信部２３２は、配信開始要求を受信すると、要求されたストリーミングコンテンツが使用可能であれば、配信開始応答をリバースプロキシサーバＲＰに送信する（S48）。リバースプロキシサーバＲＰの転送部３３２は、配信開始応答をクライアントＣＬ（メディアプレイヤＭ）に転送する（S50）。
【００４２】
１（４）−４．  ストリーミング動作
配信開始応答を受信すると、メディアプレイヤＭはストリーミング再生を実行する。より具体的には、ストリーミングコンテンツの再生終了までの期間にわたり、以下のステップS52〜S60が繰り返される。
【００４３】
クライアントＣＬのメディアプレイヤＭが、配信要求を送信する（S52）。配信要求は、再生時点（再生位置）におけるストリーミングデータを要求するメッセージであり、配信開始要求と同様に、クライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せを含む。
【００４４】
プロキシ認証部３３６は、配信要求に含まれるクライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せが、記憶部３２０に関連付けて記憶されているクライアント識別子、コンテンツ識別子、及びストリーミングキーに対応するか否かを判定する（S54）。対応するとプロキシ認証部３３６が判定した場合、転送部３３２は、配信要求をストリーミングサーバＳＴに転送する（S56）。ステップS54の判定後に、記憶部３２０に記憶されているアクセス時刻が更新されると好適である。
【００４５】
ストリーミングサーバＳＴの配信部２３２は、配信要求を受信すると、指定された再生位置におけるストリーミングデータを含む配信応答を送信する（S58）。リバースプロキシサーバＲＰは、配信応答をクライアントＣＬ（メディアプレイヤＭ）に送信する（S60）。以上の動作が再生終了まで繰り返される。
【００４６】
なお、リバースプロキシサーバＲＰのプロキシ認証部３３６は、一定時間アクセスが無かったクライアントＣＬに対応するストリーミングキーを削除してもよい（S62）。
【００４７】
１（５）．  本実施形態の効果
以上の構成によれば、アプリケーションサーバＡＰにて生成されたストリーミングキーがリバースプロキシサーバＲＰに記憶されることにより、以後、リバースプロキシサーバＲＰが認証動作を実行することが可能となる。結果として、アプリケーションサーバＡＰにおけるプロセス（セッション）の専有が回避されることに加えて、複数のストリーミングサーバＳＴ（ストリーミング方式）においてアクセス制限を個別に実装することが不要となる。
【００４８】
また、ストリーミングコンテンツのリクエストＵＲＬのクエリストリングにストリーミングキーが含まれる構成によれば、ＨＴＴＰヘッダの情報をメディアプレイヤＭに引き渡さないブラウザＢ（Ｂ２）に関しても、以上のリバースプロキシサーバＲＰによる認証動作を適用することが可能である。換言すると、ブラウザＢの仕様に依存せずに、以上のリバースプロキシサーバＲＰによる認証動作が実現可能である。
【００４９】
２．  変形例  
以上の実施形態は多様に変形される。具体的な変形の態様を以下に例示する。以上の実施の形態および以下の例示から任意に選択された２以上の態様は、相互に矛盾しない限り適宜に併合され得る。
【００５０】
２（１）．  変形例１
図７のように、ストリーミングシステム１が複数のリバースプロキシサーバＲＰを備えてもよい。以上の構成において、実施形態のステップS36において１つのリバースプロキシサーバＲＰに記憶されたコンテンツ識別子、ストリーミングキー、及びクライアント識別子が、他のリバースプロキシサーバＲＰに共有されると好適である。クライアントＣＬがいずれのリバースプロキシサーバＲＰにアクセスしても、ステップS44、ステップS54等において同じ認証結果が得られるからである。
【００５１】
以上の情報共有は、任意のタイミングで実行されてよい。例えば、リバースプロキシサーバＲＰの転送部３３２が、情報が更新される度にその情報を他のリバースプロキシサーバＲＰに送信して共有してもよい。また、複数のリバースプロキシサーバＲＰ間で定期的に情報が送受信されてもよい。
【００５２】
２（２）．  変形例２
以上の実施形態に係るストリーミングシステム１内のサーバ（アプリケーションサーバＡＰ、ストリーミングサーバＳＴ、リバースプロキシサーバＲＰ）は、１つのローカルエリアネットワーク内に配置されてもよいし、インターネットＩＮ上に散在して配置されてもよい。また、ストリーミングシステム１内の１以上のサーバが、クラウド上に仮想的に設けられてもよい。
【００５３】
２（３）．  変形例３
以上の実施形態に係るストリーミングシステム１内の各サーバ（アプリケーションサーバＡＰ、ストリーミングサーバＳＴ、リバースプロキシサーバＲＰ）は、複数のコンピュータ装置によって構成されてもよいし、実サーバ内に設定される仮想サーバとして構成されてもよい。
【００５４】
２（４）．  変形例４
以上の実施形態では、アプリケーションサーバＡＰが、ストリーミングコンテンツのリクエストＵＲＬにストリーミングキー（配信キー）を付加する（S34）。しかしながら、ウェブページ応答を受信したリバースプロキシサーバＲＰが、ウェブページ応答のＨＴＴＰヘッダに含まれるストリーミングキーを、リクエストＵＲＬに付加してもよい（S38）。
【００５５】
２（５）．  変形例５
以上の実施形態にて説明されたストリーミングにおけるアクセス制限手法は、ストリーミング以外の配信方式（特に、長時間にわたって１つのセッションが専有される方式）についても採用可能である。
【００５６】
２（６）．  変形例６
各サーバ（アプリケーションサーバＡＰ、ストリーミングサーバＳＴ、リバースプロキシサーバＲＰ）においてＣＰＵが実行する各機能は、ＣＰＵの代わりに、ハードウェアで実行してもよいし、例えばＦＰＧＡ（Field Programmable Gate Array）、ＤＳＰ（Digital Signal Processor）等のプログラマブルロジックデバイスで実行してもよい。
【符号の説明】
【００５７】
１……ストリーミングシステム、ＡＰ……アプリケーションサーバ、１１０……通信部、１２０……記憶部、１３０……制御部、１３２……認証部、１３４……キー生成部、１３６……ページ生成部、１３８……応答送信部、ＳＴ……ストリーミングサーバ、２１０……通信部、２２０……記憶部、２３０……制御部、２３２……配信部、ＲＰ……リバースプロキシサーバ、３１０……通信部、３２０……記憶部、３３０……制御部、３３２……転送部、３３４……情報取得部、３３６……プロキシ認証部、ＡＤ……認証データベース、Ｂ（Ｂ１，Ｂ２）……ブラウザ、ＣＬ……クライアント、ＩＮ……インターネット、Ｍ……メディアプレイヤ。
【図１】
2016072712.tif 000003
【図２】
2016072712.tif 000004
【図３】
2016072712.tif 000005
【図４】
2016072712.tif 000006
【図５】
2016072712.tif 000007
【図６】
2016072712.tif 000008
【図７】
2016072712.tif 000009