JP6121964B2 - アクセス制限方法、配信システム、及びリバースプロキシサーバ - Google Patents

アクセス制限方法、配信システム、及びリバースプロキシサーバ Download PDF

Info

Publication number
JP6121964B2
JP6121964B2 JP2014197738A JP2014197738A JP6121964B2 JP 6121964 B2 JP6121964 B2 JP 6121964B2 JP 2014197738 A JP2014197738 A JP 2014197738A JP 2014197738 A JP2014197738 A JP 2014197738A JP 6121964 B2 JP6121964 B2 JP 6121964B2
Authority
JP
Japan
Prior art keywords
distribution
client
server
reverse proxy
web page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014197738A
Other languages
English (en)
Other versions
JP2016072712A (ja
Inventor
哲也 廣田
哲也 廣田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Computer Engineering and Consulting Ltd
Original Assignee
Computer Engineering and Consulting Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Computer Engineering and Consulting Ltd filed Critical Computer Engineering and Consulting Ltd
Priority to JP2014197738A priority Critical patent/JP6121964B2/ja
Publication of JP2016072712A publication Critical patent/JP2016072712A/ja
Application granted granted Critical
Publication of JP6121964B2 publication Critical patent/JP6121964B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、アクセス制限方法、配信システム、及びリバースプロキシサーバに関する。
近年、インターネット上での情報配信(例えば、動画又は音声の配信)において、ストリーミング技術が活用されている(例えば、特許文献1)。ストリーミングは、情報ファイルの配信(非蓄積的なダウンロード)と再生とを並列的に実行する技術である。ストリーミング技術を用いることにより、配信を開始してから再生が開始するまでの待ち時間を短縮できると共に、クライアント端末が情報ファイルを再生可能な状態で蓄積(保存)することを抑止できる。
ストリーミングシステムにおいては、ストリーミングサービス自体を提供するストリーミングサーバと、ウェブページの生成、ユーザ管理、及びコンテンツ管理等のストリーミングに関するサービスを提供するアプリケーションサーバとが併用されるケースが多い。例えば、ストリーミングサービスを利用するユーザは、アプリケーションサーバが提供するウェブページを介して、情報ファイル(配信コンテンツ)にアクセスする。なお、ストリーミングシステムは、複数のストリーミング方式(プロトコル及びコーデック)に対応する複数のストリーミングサーバを有する場合がある。
ストリーミング技術を用いた配信サービスにおいては、ユーザに対するアクセス制限が行われる場合がある。例えば、有償の配信サービスにおいては、ユーザがある配信コンテンツのストリーミングを要求した場合、そのユーザがその配信コンテンツへの支払いを終えているか否かに応じて、その配信コンテンツについてのアクセス制限(アクセス許可又はアクセス拒否)が実行される。一般的に、以上のアクセス制限は、アプリケーションサーバ又はストリーミングサーバにおいて実行される。
特開2005−197804号公報
アプリケーションサーバにおいて以上のアクセス制限を実現する場合、クライアントがストリーミング配信を受けている間はアプリケーションサーバ内のプロセスが専有され続ける。したがって、ストリーミングのアクセス数が増大するのに応じて、ストリーミングサーバだけでなくアプリケーションサーバも増強する必要がある。一方、ストリーミングサーバにおいて以上のアクセス制限を実現する場合、複数のストリーミング方式に対応する複数のストリーミングサーバについてそれぞれ個別にアクセス制限を実装する必要がある。
なお、以上ではストリーミングにおけるアクセス制限の課題について述べたが、ストリーミング以外の配信方式(特に、長時間にわたって1つのセッションが専有される方式)においても同様の課題が存在し得ることは、当業者に当然に理解される。
以上の事情を考慮して、本発明は、配信サービスに関するアクセス制限を適切に実現することを目的とする。
本発明のアクセス制限方法は、配信サービスを提供する1以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバと、クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する1以上のリバースプロキシサーバとを備える配信システムにおけるアクセス制限方法であって、前記リバースプロキシサーバにおいて、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する第1ステップと、前記アプリケーションサーバにおいて、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する第2ステップと、前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成し、ウェブページ応答と共に前記リバースプロキシサーバに送信する第3ステップと、前記リバースプロキシサーバにおいて、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する第4ステップと、前記ウェブページ応答を前記クライアントに転送する第5ステップと、前記リバースプロキシサーバにおいて、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記第4ステップにて記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定する第6ステップと、対応すると判定した場合に前記配信開始要求を前記配信サーバに転送する第7ステップと、前記配信サーバにおいて、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する第8ステップと、前記リバースプロキシサーバにおいて、前記配信開始応答を前記クライアントに転送する第9ステップとを備える。
本発明の配信システムは、配信サービスを提供する1以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバと、クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する1以上のリバースプロキシサーバとを備え、前記リバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する転送部を備え、前記アプリケーションサーバは、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する認証部と、前記認証部が前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成するキー生成部と、前記配信キーをウェブページ応答と共に前記リバースプロキシサーバに送信する応答送信部とを備え、前記リバースプロキシサーバは、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部を備え、前記リバースプロキシサーバの前記転送部は、前記ウェブページ応答を前記クライアントに転送し、前記リバースプロキシサーバは、前記クライアントから配信開始要求を受信した後に、前記配信開始要求が、前記記憶部に記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定するプロキシ認証部を備え、前記プロキシ認証部が対応すると判定した場合に、前記転送部は前記配信開始要求を前記配信サーバに転送し、前記配信サーバは、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する配信部を備え、前記リバースプロキシサーバの前記転送部は、前記配信開始応答を前記クライアントに転送する。
本発明のリバースプロキシサーバは、配信サービスを提供する1以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバとを備える配信システムに用いられるリバースプロキシサーバである。本発明のリバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送し、前記ウェブページ要求に基づいて前記アプリケーションサーバから送信された、配信キーが付加されたウェブページ応答を前記クライアントに転送する転送部と、前記ウェブページ応答に含まれる、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部と、前記クライアントから受信した配信開始要求が、前記記憶部に記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定するプロキシ認証部とを備え、前記プロキシ認証部が対応すると判定した場合に、前記転送部は、前記配信開始要求を前記配信サーバに転送し、その後、前記配信開始要求に基づいて前記配信サーバから送信された配信開始応答を前記クライアントに転送する。
本発明によれば、クライアントと、配信サーバ及びアプリケーションサーバとの間に配置されるリバースプロキシサーバにてアクセス制限が適切に実行される。したがって、アプリケーションサーバにおいてプロセスが専有されることが抑制されると共に、ストリーミングサーバにおいてアクセス制限を個別に実装することが不要となる。
実施形態に係るストリーミングシステムを示す概略図である。 実施形態のアプリケーションサーバの構成を示すブロック図である。 実施形態のストリーミングサーバの構成を示すブロック図である。 実施形態のリバースプロキシサーバの構成を示すブロック図である。 実施形態のアクセス制限動作のシーケンス図である。 実施形態のアクセス制限動作のシーケンス図である。 変形例に係るストリーミングシステムの示す概略図である。
1(1). ストリーミングシステムの構成
図1は、本発明の実施形態に係るストリーミングシステム1を示すブロック図である。ストリーミングシステム1は、ストリーミングサービスを提供する1以上のストリーミングサーバSTと、ストリーミングサービスに対応するウェブサービスを提供する1以上のアプリケーションサーバAPと、クライアントCLからの要求をアプリケーションサーバAP又はストリーミングサーバSTに転送するリバースプロキシサーバRPとを備える。認証データベースADは、アプリケーションサーバAP内に設けられてもよいし、ストリーミングシステム1内に独自のサーバとして設けられてもよい。
「ストリーミングサービスに対応するウェブサービス」は、ストリーミングサービスを提供する際に併せて提供される付随的なサービスである。例えば、ストリーミングコンテンツに関するウェブページの生成、サービス利用者(ユーザ)の認証、コンテンツへのアクセス制限、コンテンツ課金などが挙げられる。ユーザは、原則として、ストリーミングサービスを利用する際、まず以上のウェブサービス(ウェブページ)にアクセスする。
クライアントCLは、インターネットINを介してストリーミングシステム1に接続する。クライアントCLはリバースプロキシサーバRPと接続し、アプリケーションサーバAP及びストリーミングサーバSTとは直接的には接続しない。クライアントCLとしては、パーソナルコンピュータ、タブレット端末、及びスマートフォン等が例示される。クライアントCLは、アプリケーションサーバAP等から取得したウェブページを表示するブラウザBと、ストリーミングサーバST等から取得したストリーミングデータを再生するメディアプレイヤMとを備える。
1(2). ストリーミングシステムに関して発見された課題
近年、新たなHTML(HyperText Markup Language)規格であるHTML5の普及が進んでいる。HTML5は、従前のHTMLと異なりメディアプレイヤMの実装をブラウザBに依存している。すなわち、ブラウザBの種類によって、メディアプレイヤMに採用されるストリーミングプロトコル及びエンコード方式(ストリーミング方式)が相違する。更に、ブラウザBとメディアプレイヤMとの間でデータ(例えば、HTTPヘッダ)を引き渡す際の挙動も、ブラウザBに依存して相違する。例えば、ブラウザBの種類によっては、一般的には引き渡されるHTTPヘッダがメディアプレイヤMに引き渡されず、予期された動作が正確に実現されない場合がある。
したがって、本実施形態のストリーミングシステム1は、複数のブラウザBに対応するため、複数のストリーミング方式に対応した複数のストリーミングサーバSTを備えると共に、ブラウザB−メディアプレイヤM間のデータ引渡し挙動の相違から生じる問題を回避するデータ構成を採用する(詳細は後述される)。
1(3). サーバ構成
1(3)−1. アプリケーションサーバの構成
図2は、本実施形態のアプリケーションサーバAPの主要な構成要素を示すブロック図である。アプリケーションサーバAPは、通信部110と記憶部120と制御部130とを備える。通信部110は、他の装置との接続に用いられるインタフェースである。記憶部120は、セッションキー、ストリーミングキー等の認証情報、ウェブページ生成に用いられるコンテンツ情報、及びコンピュータプログラムを記憶する記憶媒体である。
制御部130は、アプリケーションサーバAPにおける入力/処理/出力を統合的に制御する。制御部130は、認証部132とキー生成部134とページ生成部136と応答送信部138とを備える。認証部132は、認証データベースADを参照して、クライアントCLを使用するユーザに関する認証動作(ログオン認証、アクセス制限等)を実行する。キー生成部134は、認証部132の認証動作の結果に基づいて、認証されたユーザ又はクライアントCLを特定するための種々の認証キー(セッションキー、ストリーミングキー等)を生成する。ページ生成部136は、クライアントCLからの要求に基づいてウェブページを生成する。ウェブページがストリーミングコンテンツを提示する場合、そのウェブページにはストリーミングコンテンツを識別するコンテンツ識別子が含まれる。応答送信部138は、リバースプロキシサーバRPから転送されたクライアントCLからの要求に対して応答を送信する。
制御部130及び制御部130内の各要素は、アプリケーションサーバAP内のCPU(不図示)が記憶部120内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
1(3)−2. ストリーミングサーバの構成
図3は、本実施形態のストリーミングサーバSTの主要な構成要素を示すブロック図である。ストリーミングサーバSTは、通信部210と記憶部220と制御部230とを備える。通信部210は、他の装置との接続に用いられるインタフェースである。記憶部220は、音声や動画等のストリーミングコンテンツ及びコンピュータプログラムを記憶する記憶媒体である。制御部230は、ストリーミングサーバSTにおける入力/処理/出力を統合的に制御する。制御部230は、他の装置(リバースプロキシサーバRP等)からの要求に応じてストリーミングコンテンツを配信する配信部232を備える。制御部230及び制御部230内の各要素は、ストリーミングサーバST内のCPU(不図示)が記憶部220内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
1(3)−3. リバースプロキシサーバの構成
図4は、本実施形態のリバースプロキシサーバRPの主要な構成要素を示すブロック図である。リバースプロキシサーバRPは、通信部310と記憶部320と制御部330とを備える。通信部310は、他の装置との接続に用いられるインタフェースである。記憶部320は、認証動作に用いられる認証情報及びコンピュータプログラムを記憶する記憶媒体である。
制御部330は、リバースプロキシサーバRPにおける入力/処理/出力を統合的に制御する。制御部330は、転送部332と情報取得部334とプロキシ認証部336とを備える。転送部332は、クライアントCLから受信した要求を、その種別に応じて、アプリケーションサーバAP又はストリーミングサーバSTに転送すると共に、アプリケーションサーバAP又はストリーミングサーバSTから受信した応答をクライアントCLに転送する。情報取得部334は、アプリケーションサーバAPからクライアントCLへ送信される応答から、認証動作に必要な情報を取得して記憶部320に記憶する。プロキシ認証部336は、クライアントCL(メディアプレイヤM)からの要求に関する認証動作を実行する。
制御部330及び制御部330内の各要素は、リバースプロキシサーバRP内のCPU(不図示)が記憶部320内のコンピュータプログラムを実行し、そのコンピュータプログラムに従って機能することにより実現される機能ブロックである。
1(4). ストリーミングにおけるアクセス制限動作
図5及び図6を参照して、本実施形態のストリーミングにおけるアクセス制限動作を説明する。
1(4)−1. ログオン動作
クライアントCLのユーザがブラウザBを操作して、ストリーミングサービスに対応するウェブサービスへのログオン要求をブラウザBから送信する(S10)。ログオン要求には、ユーザ識別子及びパスワードの組合せが含まれる。ログオン要求は、暗号化された後に送信されると好適である。リバースプロキシサーバRPの転送部332は、クライアントCLから受信したログオン要求をアプリケーションサーバAPに転送する(S12)。
アプリケーションサーバAPの認証部132は、受信したログオン要求に対応するユーザのログオンを許可すべきか否かを、認証データベースADを用いて判定する(S14及びS16)。より具体的には、認証部132は、ログオン要求に含まれるユーザ識別子及びパスワードの組合せが登録されているか否かを認証データベースADに問い合わせる。認証データベースADは、受信したユーザ識別子及びパスワードの組合せが登録されているか否かをアプリケーションサーバAPに応答する。ユーザ識別子及びパスワードの組合せが登録されている場合、認証部132はそのユーザのログオンを許可する。
アプリケーションサーバAPの認証部132がそのユーザのログオンを許可すべきと判定した場合、キー生成部134は、そのユーザに対応するセッションキーを生成する(S18)。セッションキーは、ログオンが許可されたユーザを識別する情報であり、セッションキーが有効な期間においてそのユーザのログオン状態が維持される。ページ生成部136は、ログオンが許可されたことをユーザに示すウェブページのコンテンツを生成する。生成されたコンテンツは、ログオン許可応答に含まれる。応答送信部138は、セッションキーをログオン許可応答と共にリバースプロキシサーバRPに送信する(S20)。セッションキーは、例えば、ログオン許可応答(HTTPレスポンス)のHTTPヘッダとして送信される。
リバースプロキシサーバRPの転送部332は、セッションキーが付加されたログオン許可応答をクライアントCLに転送する(S22)。クライアントCLのユーザは、ログオン許可応答によってログオンが許可されたことを認識できる。
1(4)−2. ウェブページ提示動作
クライアントCLのユーザがブラウザBを操作して、ブラウザBからウェブページ要求を送信する(S24)。本例では、ストリーミングコンテンツを提示するウェブページが要求されたと想定する。以上の送信の際、ブラウザBは、ステップS22にて転送されたセッションキーをウェブページ要求に付加する。リバースプロキシサーバRPの転送部332は、クライアントCLから受信したウェブページ要求をアプリケーションサーバAPに転送する(S26)。
アプリケーションサーバAPの認証部132は、受信したウェブページ要求に含まれるセッションキーに対応するユーザによる、そのウェブページ要求に対応するストリーミングコンテンツ(すなわち、要求されたウェブページにて提示されるストリーミングコンテンツ)に対するアクセスを許可すべきか否かを、認証データベースADを用いて判定する(S28及びS30)。より具体的には、認証部132は、ユーザ識別子とコンテンツ識別子の組合せを認証データベースADに送信する。認証データベースADは、コンテンツ識別子にて指定されるストリーミングコンテンツへのアクセス権がそのユーザにあるか否かを返信する。認証部132は、アクセス権があればそのユーザからのアクセスを許可する。
アプリケーションサーバAPの認証部132がそのユーザのアクセスを許可すべきと判定した場合、キー生成部134は、そのストリーミングコンテンツに対応するストリーミングキーを生成する(S32)。ページ生成部136は、ユーザが要求したストリーミングコンテンツを提示するウェブページのコンテンツを生成する。生成されたコンテンツは、ウェブページ応答に含まれる。応答送信部138は、ストリーミングキーをウェブページ応答と共にリバースプロキシサーバRPに送信する(S34)。ストリーミングキーは、例えば、ウェブページ応答(HTTPレスポンス)のHTTPヘッダに含まれる。なお、ページ生成部136は、ウェブページのコンテンツを生成する際に、HTTPヘッダに代えて又は加えて、ウェブページ応答に含まれるストリーミングコンテンツを指定するURL(リクエストURL)のクエリストリングに、ストリーミングキーを付加してもよい。
ウェブページ応答には、ユーザが要求したウェブページのコンテンツに加えて、ウェブページ要求を送信したクライアントCLのクライアント識別子(例えば、クライアントCLのIPアドレス)と、ウェブページにて提示されるストリーミングコンテンツのコンテンツ識別子とが含まれている。
リバースプロキシサーバRPの情報取得部334は、ウェブページ応答にストリーミングキーが含まれる場合、コンテンツ識別子、ストリーミングキー、及びクライアント識別子を関連付けて記憶部320に記憶する(S36)。なお、情報取得部334は、さらにセッションキー及びアクセス時刻をも関連付けて記憶部320に記憶してもよい。また、転送部332は、ウェブページ応答をクライアントCLに転送する(S38)。
1(4)−3. ストリーミング開始動作
ウェブページ応答にストリーミングコンテンツが含まれることを認識すると、クライアントCLのブラウザBは、メディアプレイヤMを起動し、ウェブページ応答に含まれるストリーミングキーをメディアプレイヤMに供給する(S40)。メディアプレイヤMは、ブラウザB内に組み込まれて起動されてもよいし、独立して起動されてもよい。
ブラウザBに関し、ウェブページ応答に含まれるHTTPヘッダをメディアプレイヤMに渡すタイプのブラウザB1と渡さないタイプのブラウザB2が存在する。ブラウザB1については、ストリーミングキーがHTTPヘッダかURLのクエリストリングのいずれかに含まれていれば、メディアプレイヤMがストリーミングキーを取得できる。一方、ブラウザB2については、ストリーミングキーがURLのクエリストリングに含まれている必要がある。
メディアプレイヤMは配信開始要求を送信する(S42)。配信開始要求は、クライアント識別子、ストリーミングコンテンツのリクエストURL、及びHTTPヘッダを含む。ブラウザBから供給されたストリーミングキーは、配信開始要求のHTTPヘッダ及びリクエストURLのいずれか一方又は双方に含まれる。
リバースプロキシサーバRPのプロキシ認証部336は、クライアントCL(メディアプレイヤM)から配信開始要求を受信する。プロキシ認証部336は、配信開始要求に含まれるクライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せが、記憶部320に関連付けて記憶されているクライアント識別子、コンテンツ識別子、及びストリーミングキーに対応するか否かを判定する(S44)。対応するとプロキシ認証部336が判定した場合、転送部332は、配信開始要求をストリーミングサーバSTに転送する(S46)。
ステップS44の判定後に、記憶部320に記憶されているアクセス時刻が更新されると好適である。また、ステップS46において、配信開始要求のHTTPヘッダにストリーミングキーが含まれていない場合、転送部332が、リクエストURLのクエリストリングに含まれるストリーミングキーをHTTPヘッダに付加すると好適である。以降の通信において、HTTPヘッダにストリーミングキーが含まれることとなるからである。
ストリーミングサーバSTの配信部232は、配信開始要求を受信すると、要求されたストリーミングコンテンツが使用可能であれば、配信開始応答をリバースプロキシサーバRPに送信する(S48)。リバースプロキシサーバRPの転送部332は、配信開始応答をクライアントCL(メディアプレイヤM)に転送する(S50)。
1(4)−4. ストリーミング動作
配信開始応答を受信すると、メディアプレイヤMはストリーミング再生を実行する。より具体的には、ストリーミングコンテンツの再生終了までの期間にわたり、以下のステップS52〜S60が繰り返される。
クライアントCLのメディアプレイヤMが、配信要求を送信する(S52)。配信要求は、再生時点(再生位置)におけるストリーミングデータを要求するメッセージであり、配信開始要求と同様に、クライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せを含む。
プロキシ認証部336は、配信要求に含まれるクライアント識別子、コンテンツ識別子、及びストリーミングキーの組合せが、記憶部320に関連付けて記憶されているクライアント識別子、コンテンツ識別子、及びストリーミングキーに対応するか否かを判定する(S54)。対応するとプロキシ認証部336が判定した場合、転送部332は、配信要求をストリーミングサーバSTに転送する(S56)。ステップS54の判定後に、記憶部320に記憶されているアクセス時刻が更新されると好適である。
ストリーミングサーバSTの配信部232は、配信要求を受信すると、指定された再生位置におけるストリーミングデータを含む配信応答を送信する(S58)。リバースプロキシサーバRPは、配信応答をクライアントCL(メディアプレイヤM)に送信する(S60)。以上の動作が再生終了まで繰り返される。
なお、リバースプロキシサーバRPのプロキシ認証部336は、一定時間アクセスが無かったクライアントCLに対応するストリーミングキーを削除してもよい(S62)。
1(5). 本実施形態の効果
以上の構成によれば、アプリケーションサーバAPにて生成されたストリーミングキーがリバースプロキシサーバRPに記憶されることにより、以後、リバースプロキシサーバRPが認証動作を実行することが可能となる。結果として、アプリケーションサーバAPにおけるプロセス(セッション)の専有が回避されることに加えて、複数のストリーミングサーバST(ストリーミング方式)においてアクセス制限を個別に実装することが不要となる。
また、ストリーミングコンテンツのリクエストURLのクエリストリングにストリーミングキーが含まれる構成によれば、HTTPヘッダの情報をメディアプレイヤMに引き渡さないブラウザB(B2)に関しても、以上のリバースプロキシサーバRPによる認証動作を適用することが可能である。換言すると、ブラウザBの仕様に依存せずに、以上のリバースプロキシサーバRPによる認証動作が実現可能である。
2. 変形例
以上の実施形態は多様に変形される。具体的な変形の態様を以下に例示する。以上の実施の形態および以下の例示から任意に選択された2以上の態様は、相互に矛盾しない限り適宜に併合され得る。
2(1). 変形例1
図7のように、ストリーミングシステム1が複数のリバースプロキシサーバRPを備えてもよい。以上の構成において、実施形態のステップS36において1つのリバースプロキシサーバRPに記憶されたコンテンツ識別子、ストリーミングキー、及びクライアント識別子が、他のリバースプロキシサーバRPに共有されると好適である。クライアントCLがいずれのリバースプロキシサーバRPにアクセスしても、ステップS44、ステップS54等において同じ認証結果が得られるからである。
以上の情報共有は、任意のタイミングで実行されてよい。例えば、リバースプロキシサーバRPの転送部332が、情報が更新される度にその情報を他のリバースプロキシサーバRPに送信して共有してもよい。また、複数のリバースプロキシサーバRP間で定期的に情報が送受信されてもよい。
2(2). 変形例2
以上の実施形態に係るストリーミングシステム1内のサーバ(アプリケーションサーバAP、ストリーミングサーバST、リバースプロキシサーバRP)は、1つのローカルエリアネットワーク内に配置されてもよいし、インターネットIN上に散在して配置されてもよい。また、ストリーミングシステム1内の1以上のサーバが、クラウド上に仮想的に設けられてもよい。
2(3). 変形例3
以上の実施形態に係るストリーミングシステム1内の各サーバ(アプリケーションサーバAP、ストリーミングサーバST、リバースプロキシサーバRP)は、複数のコンピュータ装置によって構成されてもよいし、実サーバ内に設定される仮想サーバとして構成されてもよい。
2(4). 変形例4
以上の実施形態では、アプリケーションサーバAPが、ストリーミングコンテンツのリクエストURLにストリーミングキー(配信キー)を付加する(S34)。しかしながら、ウェブページ応答を受信したリバースプロキシサーバRPが、ウェブページ応答のHTTPヘッダに含まれるストリーミングキーを、リクエストURLに付加してもよい(S38)。
2(5). 変形例5
以上の実施形態にて説明されたストリーミングにおけるアクセス制限手法は、ストリーミング以外の配信方式(特に、長時間にわたって1つのセッションが専有される方式)についても採用可能である。
2(6). 変形例6
各サーバ(アプリケーションサーバAP、ストリーミングサーバST、リバースプロキシサーバRP)においてCPUが実行する各機能は、CPUの代わりに、ハードウェアで実行してもよいし、例えばFPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)等のプログラマブルロジックデバイスで実行してもよい。
1……ストリーミングシステム、AP……アプリケーションサーバ、110……通信部、120……記憶部、130……制御部、132……認証部、134……キー生成部、136……ページ生成部、138……応答送信部、ST……ストリーミングサーバ、210……通信部、220……記憶部、230……制御部、232……配信部、RP……リバースプロキシサーバ、310……通信部、320……記憶部、330……制御部、332……転送部、334……情報取得部、336……プロキシ認証部、AD……認証データベース、B(B1,B2)……ブラウザ、CL……クライアント、IN……インターネット、M……メディアプレイヤ。

Claims (7)

  1. 配信サービスを提供する1以上の配信サーバと、
    前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバと、
    クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する1以上のリバースプロキシサーバと
    を備える配信システムにおけるアクセス制限方法であって、
    前記リバースプロキシサーバにおいて、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する第1ステップと、
    前記アプリケーションサーバにおいて、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する第2ステップと、前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成し、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを含むウェブページ応答前記リバースプロキシサーバに送信する第3ステップと、
    前記リバースプロキシサーバにおいて、前記ウェブページ応答に含まれる、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを関連付けて記憶する第4ステップと、前記ウェブページ応答を前記クライアントに転送する第5ステップと、
    前記リバースプロキシサーバにおいて、前記クライアントから、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを含む配信開始要求を受信した後に、前記配信開始要求が、前記第4ステップにて記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定する第6ステップと、対応すると判定した場合に前記配信開始要求を前記配信サーバに転送する第7ステップと、
    前記配信サーバにおいて、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する第8ステップと、
    前記リバースプロキシサーバにおいて、前記配信開始応答を前記クライアントに転送する第9ステップとを備える
    アクセス制限方法。
  2. 前記配信キーを、前記ウェブページ応答に含まれる前記配信コンテンツを指定するURLのクエリストリングに付加する
    請求項1のアクセス制限方法。
  3. 前記クライアントは、HTTPヘッダをプレイヤに引き渡さないブラウザを備え、
    前記第1ステップにて転送される前記ウェブページ要求は前記クライアントの前記ブラウザによって生成されており、前記第5ステップにて転送された前記ウェブページ応答は前記クライアントの前記ブラウザに供給され、
    前記ウェブページ応答に含まれる前記配信コンテンツを指定する前記URLが前記ブラウザから前記クライアントのプレイヤに供給されることにより、前記プレイヤが当該URLの前記クエリストリングに含まれる前記配信キーを取得し、
    前記第6ステップにて前記リバースプロキシサーバが受信する、前記配信キーを含む前記配信開始要求は前記プレイヤによって生成される
    請求項2のアクセス制限方法。
  4. 前記第9ステップの後、前記リバースプロキシサーバにおいて、前記クライアントから、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを含む配信要求を受信した後に、前記配信要求が、前記第4ステップにて記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定する第10ステップと、対応すると判定した場合に前記配信要求を前記配信サーバに転送する第11ステップと、
    前記配信サーバにおいて、前記配信要求を受信した後に、前記配信要求に対応する配信データを含む配信応答を前記リバースプロキシサーバに送信する第12ステップと、
    前記リバースプロキシサーバにおいて、前記配信応答を前記クライアントに転送する第13ステップとを備える
    請求項1から3のいずれかのアクセス制限方法。
  5. 前記配信システムは、複数の前記リバースプロキシサーバを備え、
    複数の前記リバースプロキシサーバは、前記第4ステップにていずれかの前記リバースプロキシサーバが関連付けて記憶した前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーを共有する
    請求項1から4のいずれかのアクセス制限方法。
  6. 配信サービスを提供する1以上の配信サーバと、
    前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバと、
    クライアントからの要求を前記アプリケーションサーバ又は前記配信サーバに転送する1以上のリバースプロキシサーバとを備え、
    前記リバースプロキシサーバは、前記クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送する転送部を備え、
    前記アプリケーションサーバは、前記ウェブページ要求に対応する配信コンテンツに対するアクセスを許可すべきか否かを判定する認証部と、前記認証部が前記アクセスを許可すべきと判定した場合に前記配信コンテンツに対応する配信キーを生成するキー生成部と、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信キーとを含むウェブページ応答前記リバースプロキシサーバに送信する応答送信部とを備え、
    前記リバースプロキシサーバは、前記ウェブページ応答に含まれる、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部を備え、
    前記リバースプロキシサーバの前記転送部は、前記ウェブページ応答を前記クライアントに転送し、
    前記リバースプロキシサーバは、前記クライアントから、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを含む配信開始要求を受信した後に、前記配信開始要求が、前記記憶部に記憶された前記クライアント識別子と前記コンテンツ識別子と前記配信キーとに対応するか否かを判定するプロキシ認証部を備え、
    前記プロキシ認証部が対応すると判定した場合に、前記転送部は前記配信開始要求を前記配信サーバに転送し、
    前記配信サーバは、前記配信開始要求を受信した後に、配信開始応答を前記リバースプロキシサーバに送信する配信部を備え、
    前記リバースプロキシサーバの前記転送部は、前記配信開始応答を前記クライアントに転送する
    配信システム。
  7. 配信サービスを提供する1以上の配信サーバと、前記配信サービスに対応するウェブサービスを提供する1以上のアプリケーションサーバとを備える配信システムに用いられるリバースプロキシサーバであって、
    クライアントから受信したウェブページ要求を前記アプリケーションサーバに転送し、
    前記ウェブページ要求に基づいて前記アプリケーションサーバから送信された、前記クライアントを識別するクライアント識別子と前記配信コンテンツを識別するコンテンツ識別子と前記配信コンテンツに対応する配信キーが付加されたウェブページ応答を前記クライアントに転送する転送部と、
    前記ウェブページ応答に含まれる、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを関連付けて記憶する記憶部と、
    前記クライアントから受信した、前記クライアント識別子と前記コンテンツ識別子と前記配信キーとを含む配信開始要求が、前記記憶部に記憶された前記クライアント識別子、前記コンテンツ識別子、及び前記配信キーに対応するか否かを判定するプロキシ認証部とを備え、
    前記プロキシ認証部が対応すると判定した場合に、前記転送部は、前記配信開始要求を前記配信サーバに転送し、その後、前記配信開始要求に基づいて前記配信サーバから送信された配信開始応答を前記クライアントに転送する
    リバースプロキシサーバ。
JP2014197738A 2014-09-29 2014-09-29 アクセス制限方法、配信システム、及びリバースプロキシサーバ Active JP6121964B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014197738A JP6121964B2 (ja) 2014-09-29 2014-09-29 アクセス制限方法、配信システム、及びリバースプロキシサーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014197738A JP6121964B2 (ja) 2014-09-29 2014-09-29 アクセス制限方法、配信システム、及びリバースプロキシサーバ

Publications (2)

Publication Number Publication Date
JP2016072712A JP2016072712A (ja) 2016-05-09
JP6121964B2 true JP6121964B2 (ja) 2017-04-26

Family

ID=55867380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014197738A Active JP6121964B2 (ja) 2014-09-29 2014-09-29 アクセス制限方法、配信システム、及びリバースプロキシサーバ

Country Status (1)

Country Link
JP (1) JP6121964B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3863441B2 (ja) * 2002-02-15 2006-12-27 日本電信電話株式会社 認証アクセス制御サーバ装置、認証アクセス制御方法、認証アクセス制御プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3766338B2 (ja) * 2002-03-15 2006-04-12 日本電信電話株式会社 認証アクセス制御システム、認証アクセス制御サーバ装置、認証アクセス制御方法、認証アクセス制御プログラム及びそのプログラムを記録した記録媒体

Also Published As

Publication number Publication date
JP2016072712A (ja) 2016-05-09

Similar Documents

Publication Publication Date Title
US8239546B1 (en) Global access control for segmented streaming delivery
JP6384699B2 (ja) アダプティブストリーミングのためのトークンに基づく認証および認可情報のシグナリングおよびやりとり
US9628554B2 (en) Dynamic content delivery
US8327013B2 (en) Dynamic index file creation for media streaming
US8819109B1 (en) Data network communication using identifiers mappable to resource locators
KR102308269B1 (ko) 프록시 기반 네트워크 통신들에서의 제어 데이터의 전송
US20120005313A1 (en) Dynamic indexing for ad insertion in media streaming
US20090222515A1 (en) Methods and apparatus for transferring data
US10200490B2 (en) Content-based redirection
WO2011032431A1 (zh) Http的媒体传输方法及装置
AU2013240578B2 (en) Dynamic audio track selection for media streaming
CN113767608B (zh) 接收会话的媒体数据的方法、装置和非易失性计算机可读介质
JP6277194B2 (ja) ユニバーサルリソース識別子(uri)パラメータの継承
US8954540B2 (en) Dynamic audio track selection for media streaming
JP2018506772A (ja) ネットワークアドレスの解決
JP2019537897A (ja) 配信性能を改善するためのリソースセグメント化
JP2022525298A (ja) セッションのメディア・データを受信する方法、装置及びコンピュータ・プログラム
WO2019159894A1 (ja) 認証認可情報統合装置及び認証認可情報統合方法
US9485296B1 (en) Distribution network providing customized content at delivery
JP5465621B2 (ja) ストリームデータ配信システム及びその方法
US9516131B2 (en) Media playback profile mapping
WO2013075502A1 (zh) 一种元数据的处理方法、装置及cdn互通系统
JP6121964B2 (ja) アクセス制限方法、配信システム、及びリバースプロキシサーバ
JP5745164B2 (ja) コンピュータ・ネットワーク内のサーバにアクセスするサーバ、システム、方法、コンピュータ・プログラム、およびコンピュータ・プログラム製品
CN102739701A (zh) 媒体流访问控制方法与对等流媒体系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160309

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160314

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161202

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20161212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170314

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170330

R150 Certificate of patent or registration of utility model

Ref document number: 6121964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250