(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
[実施の形態]
以下、本発明の実施の形態を添付図面にしたがって説明する。
【0012】
図1は、本実施の形態にかかる利用サービス管理装置1の概略構成図である。利用サービス管理装置1は、所定のウェブサイトにアクセスした際に利用される外部サービスを特定しオンラインプライバシーノティスを生成する機能と、特定の外部サービスへのアクセスを禁止する(外部サービスを遮断する)機能とを兼ね備えたものである。外部サービスは、例えば、広告、アクセス解析等の分析、データ収集、ウェブツール、インタラクション等である。
【0013】
(オンラインプライバシーノティスを生成する構成の説明)
まず、オンラインプライバシーノティスを生成する構成について、説明する。
図1に示すように、利用サービス管理装置1は、解析対象URL受信部2と、外部リクエスト抽出部3と、外部サービスデータベース(外部サービスDB)4と、利用サービス特定部5と、オンラインプライバシーノティス生成部7と、オンラインプライバシーノティス記憶部8と、を備えている。これら解析対象URL受信部2、外部リクエスト抽出部3、外部サービスデータベース4、利用サービス特定部5、オンラインプライバシーノティス生成部7、及びオンラインプライバシーノティス記憶部8は、利用サービス管理用サーバ10に搭載されており、CPU(Central Processing Unit)、半導体メモリであるRAM(Random Access Memory)及びROM(Read Only Memory)、HDD(Hard Disk Drive)、ソフトウェア、インターフェイス等を適宜組み合わせて実現される。
【0014】
利用サービス管理装置1は、登録されたウェブサイトにアクセスした際に利用されている外部サービスを特定することにより当該ウェブサイトのオンラインプライバシーノティスを生成し、当該ウェブサイトの訪問者へと生成したオンラインプライバシーノティスを送信するように構成されている。ここでは、一例として、利用者サーバ14が提供する利用者ウェブサイトを登録する場合を説明する。なお、利用者サーバ14と利用サービス管理用サーバ10とは、異なるサーバである。
【0015】
解析対象URL受信部2は、解析対象URL、すなわち利用者ウェブサイトのURLを受信するものである。本実施の形態では、利用サービス管理用サーバ10には所定のURLが割り当てられており、インターネットを介してウェブサイト(利用サービス管理用ウェブサイトと呼称する)を提供可能とされている。利用者サーバ14を管理する利用者15は、利用サービス管理装置1の利用に際して、パーソナルコンピュータ等の端末を用いて、利用サービス管理用サーバ10が提供する利用サービス管理用ウェブサイトにアクセスし、利用者サーバ14が提供する利用者ウェブサイト(オンラインプライバシーノティスの生成を希望するウェブサイト)のURLを登録(入力及び送信)する。解析対象URL受信部2は、利用サービス管理用ウェブサイトを介して登録された利用者ウェブサイトのURLを解析対象URLとして受信する。なお、利用者15が利用サービス管理用サーバ10(解析対象URL受信部2)に利用者ウェブサイトのURLを送信する方式はこれに限定されない。
【0016】
外部リクエスト抽出部3は、解析対象URL受信部2が受信した解析対象URL(ここでは利用者ウェブサイトのURL)にアクセスを行い、解析対象URLのドメイン以外へのアクセスが発生するURLを抽出する。より詳細には、外部リクエスト抽出部3は、インターネットブラウザを起動して利用者ウェブサイトを提供する利用者サーバ14にアクセスを行う。また、外部リクエスト抽出部3は、利用者サーバ14にアクセスした後に送信されるHTTPリクエストを監視し、HTTPリクエストのメッセージからアクセスが発生するURLを抽出する。さらに、外部リクエスト抽出部3は、抽出したURLから、利用者ウェブサイトと同一のドメインのものを除外する。これにより、解析対象URLにアクセスした際にアクセスされている外部サービス提供サーバ13のURLが特定される。以下、利用者ウェブサイトのドメイン以外へのアクセス要求を外部リクエストと呼称する。抽出した外部リクエストのURLは、利用サービス管理用サーバ10のメモリにおける所定の記憶領域に記憶される。
【0017】
なお、利用者サーバ14から受信したHTMLのソースに含まれるURLを抽出することで、外部リクエストのURLを抽出することも考えられるが、この場合、外部サービスのスクリプト中に、別の外部サービスを利用する記述が含まれる場合等に、当該別の外部サービスを抽出することができなくなる。本実施の形態のように、送信されるHTTPリクエストのメッセージを監視することで、上述のような外部サービスで利用される別の外部サービスも抽出することが可能になる。
【0018】
また、外部リクエスト抽出部3は、外部リクエストが発生した回数(以下外部リクエスト発生回数という)を計数する外部リクエスト発生回数計数部31を有している。外部リクエスト発生回数計数部31が計数した外部リクエスト発生回数は、利用サービス管理用サーバ10のメモリにおける所定の記憶領域に記憶される。
【0019】
図2に示すように、外部サービスデータベース4は、外部サービスのドメイン及びパスと、サービス名及びサービスタイプと、が関連づけられ記憶されているものであり、予め利用サービス管理用サーバ10のメモリにおける所定の記憶領域に記憶されている。なお、URLは、一般にスキーム、ドメイン、パス、パラメータ、及びフラグメントから構成されているが、外部サービスデータベース4では、このうちパス以降(パス、パラメータ、及びフラグメント)が正規表現により表現されている。また、サービス名とは、広告サービスやアクセス解析サービス等の外部サービスの名称を表すものであり、サービスタイプとは、広告やアクセス解析といったサービスの種別を表すものである。
図2では図示を省略しているが、この実施の形態では、外部サービスのサービスプロバイダ(外部サービスを提供している会社名)も外部サービスデータベース4に記憶させるようにしている。
【0020】
利用サービス特定部5は、外部サービスデータベース4を参照し、外部リクエスト抽出部3で抽出した外部リクエストのURLのドメイン及びパスに対応するサービス名及びサービスタイプ及びサービスプロバイダ(以下、サービス名等という)を特定するものである。利用サービス特定部5は、特定したサービス名等を利用サービス管理用サーバ10のメモリにおける所定の記憶領域に記憶する。
【0021】
利用サービス特定部5は、外部リクエストのURLのドメイン及びパスに対応するサービス名等が外部サービスデータベース4に存在しない場合には、当該サービス名等を「調査中」とする。利用サービス特定部5は、サービス名等が不明な外部リクエストのURLが存在するとき、当該外部リクエストのURLを、利用サービス管理装置1を管理する管理者に通知するように構成されてもよい。
【0022】
また、利用サービス特定部5は、利用されている外部サービスの数を計数する利用サービス数計数部51を有している。利用サービス数計数部51が計数した利用されている外部サービスの数は、利用サービス管理用サーバ10のメモリにおける所定の記憶領域に記憶される。
【0023】
オンラインプライバシーノティス生成部7は、利用サービス特定部5が特定したサービス名等を、オンラインプライバシーノティスとしてオンラインプライバシーノティス記憶部8に記憶する。
【0024】
オンラインプライバシーノティス生成部7は、利用者ウェブサイトにオンラインプライバシーノティスを表示するための表示用タグを生成する表示用タグ生成部71を有している。表示用タグ生成部71は、生成した表示用タグを利用者15(利用者15のパーソナルコンピュータ等)に送信する。利用者15は、受信した表示用タグを、利用者ウェブサイトのHTMLに埋め込み利用者サーバ14にアップロードすることで、オンラインプライバシーノティスの表示を可能にする。表示用タグは、スクリプトコードを含み、訪問者が利用者ウェブサイトを訪問した際に、利用サービス管理用サーバ10へのアクセス及びオンラインプライバシーノティスの取得・表示を行うものである。
【0025】
図3に示すように、利用者ウェブサイトを訪問した際には、訪問者端末16が利用者サーバ14にHTTP要求を送信し、これに対して利用者サーバ14が応答して、表示用タグを埋め込んだHTMLのデータを送信する。訪問者端末16では、受信したHTMLのデータが読み込まれ実行されるが、この際に埋め込まれた表示用タグによって利用サービス管理用サーバ10へのアクセスが発生し、利用サービス管理用サーバ10にオンラインプライバシーノティスの送信を要求する。利用サービス管理用サーバ10のオンラインプライバシーノティス生成部7は、訪問者端末16からの要求に応じて、オンラインプライバシーノティス記憶部8に記憶しておいたオンラインプライバシーノティスを抽出し、抽出したオンラインプライバシーノティスを訪問者端末16に送信する。これにより、訪問者端末16において利用者ウェブサイトのオンラインプライバシーノティス(利用者ウェブサイトにアクセスした際に利用される外部サービスのサービス名等の一覧)が表示される。
【0026】
ところで、ウェブサイトのアクセス時に利用される外部サービスは、常に同じであるとは限らず、利用される外部サービスが増減したり、他の外部サービスに変更されたりする場合もありうる。よって、所定の期間毎(例えば数日毎)に、オンラインプライバシーノティスのアップデートを実行することが望ましい。すなわち、オンラインプライバシーノティス生成部7は、所定の期間毎に、外部リクエスト抽出部3と利用サービス特定部5によるサービス名等の特定を繰り返し実行させ、オンラインプライバシーノティスのアップデートを行うように構成されることが、より望ましい。
【0027】
図4(a)は、利用サービス管理装置1におけるオンラインプライバシーノティス生成の際の制御フローであり、
図4(b)は、訪問者端末16にオンラインプライバシーノティスを表示する際の利用サービス管理用サーバ10、利用者サーバ14、及び訪問者端末16の動作の流れを示す図である。
【0028】
図4(a)に示すように、利用サービス管理装置1は、ステップS21にて、利用者ウェブサイトのURLを解析対象URLとして受信する。その後、ステップS22にて、外部リクエスト抽出部3がインターネットブラウザを起動して解析対象URL(利用者ウェブサイトのURL)にアクセスし、ステップS23にて、外部リクエスト抽出部3が外部リクエストのURLを抽出する。その後のステップS24では、外部リクエスト発生回数計数部31が、外部リクエスト発生回数を計数し、ステップS25に進む。ステップS25では、利用サービス特定部5が、外部サービスデータベース4を参照し、外部リクエスト抽出部3で抽出した外部リクエストのURLに対応するサービス名等を特定する。その後、ステップS26にて、利用サービス数計数部51が、利用されている外部サービスの数を計数し、ステップS27に進む。
【0029】
ステップS27では、オンラインプライバシーノティス生成部7が、ステップS25にて特定したサービス名等、ステップS24にて計数した外部リクエスト発生回数、及びステップS26にて計数した利用されている外部サービスの数を含む解析結果を、オンラインプライバシーノティスとしてオンラインプライバシーノティス記憶部8に記憶する。その後、ステップS28にて、表示用タグ生成部71が、利用者ウェブサイトにオンラインプライバシーノティスを表示するための表示用タグを生成し、生成した表示用タグを利用者15に送信する。これにより、利用者ウェブサイト用のオンラインプライバシーノティスが利用サービス管理用サーバ10に準備された状態となり、利用者15が受信した表示用タグを利用者ウェブサイトのHTMLに埋め込み利用者サーバ14にアップロードすることで、オンラインプライバシーノティスの表示が可能な状態となる。
【0030】
図4(b)に示すように、訪問者端末16から利用者ウェブサイトにアクセスする際には、まず、ステップS31にて、利用者サーバ14が訪問者端末16からHTTP要求を受信する。HTTP要求を受信した利用者サーバ14は、ステップS32にて、要求に応じて表示用タグが埋め込まれたHTMLデータを送信する。その後、ステップS33にて、訪問者端末16は、HTMLデータを受信し実行する。すると、ステップS34にて、表示用タグのスクリプトにより訪問者端末16から利用サービス管理用サーバ10へのアクセスが発生し、利用サービス管理用サーバ10にオンラインプライバシーノティスを要求する。その後、ステップS35にて、オンラインプライバシーノティスの要求を受信した利用サービス管理用サーバ10が、訪問者端末16にオンラインプライバシーノティスを送信する。その後、ステップS36にて、オンラインプライバシーノティスを受信した訪問者端末16が、表示用タグのスクリプトに従って、利用者ウェブサイト上に、受信したオンラインプライバシーノティスを表示する。
【0031】
(特定の外部サービスへのアクセスを禁止する構成の説明)
次に、特定の外部サービスへのアクセスを禁止する構成について説明する。
【0032】
図1に戻り、利用サービス管理装置1は、特定の外部サービスへのアクセスを禁止すべく、所定のドメインへのアクセスのみを許可するワールド・ワイド・ウェブ・コンソーシアム(W3C)で規定されるコンテント・セキュリティー・ポリシー(Content−Security−Policy)のタグ(以下CSPタグという)を生成するCSPタグ生成部9を備えている。
【0033】
CSPは、本来、クロスサイトスクリプティング等の攻撃を検出して軽減するためのものであるが、本実施の形態では、取得するコンテンツのドメインを制限可能なCSPの機能を利用して、特定の外部サービスを遮断している。
【0034】
CSPタグ生成部9は、利用者サーバ14と異なる利用サービス管理用サーバ10に搭載されており、CPU、半導体メモリであるRAM及びROM、HDD、ソフトウェア、インターフェイス等を適宜組み合わせて実現される。
【0035】
CSPタグ生成部9は、利用者15(利用者15のパーソナルコンピュータ等)から、遮断を希望する外部サービス(以下、遮断希望外部サービスという)を受信する受信部9bを有している。CSPタグ生成部9は、受信部9bで受信した遮断希望外部サービスのドメインへのアクセスを禁止するCSPを生成するように構成されている。なお、「遮断希望外部サービスのドメインへのアクセスを禁止するCSP」とは、アクセスを許可するドメインから、遮断希望外部サービスのドメインを除いたCSPを意味している。
【0036】
本実施の形態では、CSPタグ生成部9は、遮断希望外部サービスのドメインへのアクセスを禁止するCSPを利用者ウェブサイトに追記するスクリプトコード含むCSPタグを生成し、生成したCSPタグを利用者15(利用者15のパーソナルコンピュータ等)に送信する。利用者15は、受信したCSPタグを、利用者ウェブサイトのHTMLのヘッドに埋め込み利用者サーバ14にアップロードする。
【0037】
また、本実施の形態では、CSPタグ生成部9は、CSPの内容(コンテンツの取得を許可するドメイン等のCSPの具体的な記述を含む)を、CSP内容記憶部9aに記憶させておき、CSPタグによる訪問者端末16からの要求に応じて、CSPの内容を訪問者端末16に送信するように構成されている。これにより、コンテンツの取得を許可するドメインを変更する場合であっても、利用サービス管理用サーバ10内でCSPの内容をアップデートするのみで対応可能となり、利用者15が利用者ウェブサイトのHTMLを変更しアップロードするといった手間を省き、利便性を向上させることができる。
【0038】
利用者15(利用者15のパーソナルコンピュータ等)から、遮断希望外部サービスを受信する方式については、特に限定するものではないが、例えば、利用者15の専用の管理画面をウェブページ上に提供し、当該管理画面でアクセスを許可する外部サービス(あるいはアクセスを許可しない外部サービス)を選択できるようにしてもよい。この場合、CSPタグ生成部9の受信部9bは、利用サービス特定部5が特定したサービス名の一覧(あるいは、オンラインプライバシーノティス記憶部8に記憶されているオンラインプライバシーノティス)から、遮断するあるいは遮断しない外部サービスを選択可能な管理用のウェブページを提供可能に構成され、当該管理用のウェブページにおける選択内容を受信可能に構成されるとよい。CSPタグ生成部9は、管理用のウェブページでの選択内容に応じて、CSP内容記憶部9aに記憶されているCSPの内容を生成あるいはアップデートすることになる。
【0039】
CSPの内容がアップデートされた際には、利用されている外部サービスも変更されることになる。よって、CSPタグ生成部9は、CSPの内容を変更した際に、外部リクエスト抽出部3と利用サービス特定部5によるサービス名等の特定を繰り返し実行させ、オンラインプライバシーノティスのアップデートを行わせることが、より望ましい。
【0040】
図5に示されるように、利用者ウェブサイトを訪問した際には、訪問者端末16が利用者サーバ14にHTTP要求を送信し、これに対して利用者サーバ14が応答して、CSPタグを埋め込んだHTMLのデータを送信する。訪問者端末16では、受信したHTMLのデータが読み込まれ実行されるが、この際に埋め込まれたCSPタグによって利用サービス管理用サーバ10へのアクセスが発生し、利用サービス管理用サーバ10にCSPの内容の送信を要求する。利用サービス管理用サーバ10のCSPタグ生成部9は、訪問者端末16からの要求に応じて、CSP内容記憶部9aに記憶しておいたCSPの内容を訪問者端末16に送信する。これにより、訪問者端末16においてCSPが適用され、CSPの内容に応じて、訪問者端末16から特定の外部サービス提供サーバ13へのアクセスが禁止される。その結果、アクセスが禁止された外部サービス提供サーバ13が提供する外部サービス(遮断希望外部サービス)が遮断されることになる。
【0041】
図6(a)は、CSPタグ生成部9におけるCSPタグ生成あるいはアップデートの際の制御フローであり、
図6(b)は、訪問者端末16にCSPを適用する際の利用サービス管理用サーバ10、利用者サーバ14、及び訪問者端末16の動作の流れを示す図である。
【0042】
図6(a)に示すように、CSPタグ生成部9は、まず、ステップS41にて、受信部9bにより利用者15から遮断希望外部サービスを受信し、ステップS42にて、当該利用者15にCSPタグを送信済みであるかを判断する。送信済みである場合、ステップS44に進む。未送信である場合、ステップS43にてCSPタグを生成し利用者15に送信する。ステップS44では、ステップS41で受信した遮断希望外部サービスのドメインへのアクセスを禁止するCSPの内容を生成して、CSP内容記憶部9aに記憶させる(あるいはアップデートする)。これにより、利用者ウェブサイト用のCSPの内容が利用サービス管理用サーバ10に準備された状態となり、利用者15が受信したCSPタグを利用者ウェブサイトのHTMLに埋め込み利用者サーバ14にアップロードすることで、CSPによる外部サービスの遮断が可能な状態となる。
【0043】
図6(b)に示すように、訪問者端末16から利用者ウェブサイトにアクセスする際には、まず、ステップS51にて、利用者サーバ14が訪問者端末16からHTTP要求を受信する。HTTP要求を受信した利用者サーバ14は、ステップS52にて、要求に応じてCSPタグが埋め込まれたHTMLデータを送信する。その後、ステップS53にて、訪問者端末16は、HTMLデータを受信し実行する。すると、ステップS54にて、CSPタグのスクリプトにより訪問者端末16から利用サービス管理用サーバ10へのアクセスが発生し、利用サービス管理用サーバ10にCSPの内容を要求する。その後、ステップS55にて、CSPの内容の要求を受信した利用サービス管理用サーバ10が、訪問者端末16にCSPの内容を送信する。その後、ステップS56にて、CSPの内容を受信した訪問者端末16にてCSPが適用され、CSPのアクセス制限により遮断希望外部サービスが遮断される。
【0044】
(実施の形態の作用及び効果)
以上説明したように、利用サービス管理装置1では、所定の外部サービスのドメインへのアクセスを禁止するCSPタグを生成するCSPタグ生成部9を備えている。これにより、ウェブサイトの管理者(利用者15)が、利用される外部サービスを一括して制限することが可能になり、生成されたCSPタグをHTMLに埋め込むといった簡単な作業で、所定の外部サービスを遮断することが可能になる。
【0045】
本実施の形態では、利用者15が遮断を希望する外部サービスの遮断を行う場合について説明したが、これに限らず、CSPタグ生成部9は、安全な外部サービスのドメインをリストアップしたホワイトリストを有し、当該ホワイトリストに記載されたドメインにのみアクセスを許可するCSPを生成するように構成されてもよい。この場合、利用されている外部サービスを特定する機能は必須ではなく、この機能を実現するための具体的な構成である解析対象URL受信部2、外部リクエスト抽出部3、外部サービスデータベース4、利用サービス特定部5、オンラインプライバシーノティス生成部7、及びオンラインプライバシーノティス記憶部8は、省略可能である。
【0046】
また、利用サービス管理装置1では、CSPタグ生成部9は、生成したCSPの内容を利用サービス管理用サーバ10内のCSP内容記憶部9aに記憶するよう構成されており、CSPタグは、利用サービス管理用サーバ10にアクセスし、CSP内容記憶部9aに記憶されたCSPの内容を利用者ウェブサイトに追記するスクリプトコードを含んでいる。これにより、遮断する外部サービスを変更する場合であっても、利用サービス管理用サーバ10内でCSPの内容をアップデートするのみで対応可能となり、利用者15が利用者ウェブサイトのHTMLを変更しアップロードするといった手間を省き、利便性を向上させることができる。
【0047】
さらに、利用サービス管理装置1では、利用者ウェブサイトにアクセスを行い、利用者ウェブサイトのドメイン以外へのアクセスが発生するURLを抽出する外部リクエスト抽出部3と、外部サービスのドメイン及びパスとサービス名とが関連づけられ記憶されている外部サービスデータベース4と、外部サービスデータベース4を参照し、外部リクエスト抽出部3で抽出したURLのドメイン及びパスに対応するサービス名を特定する利用サービス特定部5と、をさらに備え、受信部9bは、利用サービス特定部5が特定したサービス名の一覧から、遮断するあるいは遮断しない外部サービスを選択可能な管理用のウェブページを提供可能に構成されている。
【0048】
これによりウェブサイトの管理者(利用者15)が、自身のウェブサイトにアクセスした際に利用されている外部サービスを把握することが可能になり、遮断したい外部サービスを容易に選択可能とし利便性を向上できる。また、遮断を希望した外部サービスが実際に遮断されているかを管理用のウェブサイトにて容易に確認することが可能になる。
【0049】
また、外部リクエストのドメイン及びパスを表示するのみでは、どのようなサービス内容であるかが分かりにくく、利用者15が利用されている外部サービスを直感的に理解することが困難であるが、利用サービス管理装置1のようにサービス名等を特定することによって、利用されている外部サービスを利用者15が直感的に理解することができるようになる。
【0050】
なお、本実施の形態では、CSPの内容を利用サービス管理用サーバ10内に記憶させたが、これに限らず、CSPの内容をCSPタグに含ませてもよい。この場合、利用者15は、受信したCSPタグをメタタグとして利用者ウェブサイトのHTMLに埋め込みアップロードすることで、CSPによる不要な外部サービスの遮断が可能になる。ただし、この場合、CSPの内容を変更する度、すなわちアクセスを許可する外部サービスを変更する度に、利用者15がCSPの内容をアップロードし直す必要がある。
【0051】
以上、本発明の実施の形態を説明したが、これらの実施の形態は、一例に過ぎず、特許請求の範囲に係る発明を限定するものではない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、本発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更などを行うことができる。また、これら実施の形態の中で説明した特徴の組合せの全てが発明の課題を解決するための手段に必須であるとは限らない。さらに、これら実施の形態は、発明の範囲及び要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【解決手段】利用者ウェブサイトにアクセスした際に利用される外部サービスを管理する利用サービス管理装置1であって、所定のドメインへのアクセスのみを許可するCSPタグを生成するCSPタグ生成部9を備え、CSPタグ生成部9は、生成したCSPの内容を利用サービス管理用サーバ10内のCSP内容記憶部9aに記憶するよう構成されており、CSPタグは、利用者ウェブサイトのHTMLのヘッドに埋め込まれ、利用者ウェブサイトを訪問した訪問者端末16にて利用者ウェブサイトのHTMLが実行されたときに、訪問者端末16から利用サービス管理用サーバ10にアクセスし、CSP内容記憶部9aに記憶されたCSPの内容を利用者ウェブサイトに追記するスクリプトコードを含む。