説明

通信フィルタリングシステムおよび方法

【課題】アクセス管理のための管理者の作業を軽減して運用コストを抑えることができる通信フィルタリングシステムを提供する。
【解決手段】メンバ情報記憶部503は、コミュニティ識別子とコミュニティメンバのユーザ識別子とを記憶する。利用サービス情報記憶部504は、コミュニティ識別子とそのコミュニティで利用可能なサービスのサービス識別子とを記憶する。コミュニティ情報管理部501は、コミュニティ開設時等に、メンバ情報記憶部503、利用サービス情報記憶部504等が記憶する情報を更新する。通信フィルタリング部30は、リクエストを受信すると、ユーザ情報や、メンバ情報記憶部503、利用サービス情報記憶部504に記憶された情報を参照して、リクエストをサービス提供部60に転送するか否かを判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、外部ネットワークから内部ネットワークへの通信に対して、コミュニティに関する情報を用いてフィルタリングを行う通信フィルタリングシステム、通信フィルタリング方法、通信フィルタリングシステムに適用されるフィルタリング装置、コミュニティ管理装置、サービス管理装置、フィルタリングプログラム、コミュニティ管理プログラム、およびサービス管理プログラムに関する。
【背景技術】
【0002】
近年、企業内において他部門や他社とのプロジェクトチームなどのコミュニティを形成して、共同して業務を行う機会が増えている。こうした状況下では、コミュニティメンバが各々の組織やネットワーク(以下、NWと記す。)環境によらずに、掲示板やスケジュール共有やファイル共有などのコミュニティ専用のサービスを利用できる必要がある。
【0003】
一般的に、企業のイントラネットやある部門に閉じたローカルなNWなどの内部NWにおいて、社員やある部門のメンバに閉じたコミュニティサービスを提供している企業や部門は多い。実際に多くの企業や部門では、それらの組織に閉じた掲示板、スケジュール共有、ファイル共有などのコミュニティサービスを提供している。しかし、前述したように、他部門や他社のユーザとコミュニティを形成する機会が増加しており、外部NWから内部NWにアクセスする他部門や他社のユーザに対して、セキュリティを確保しつつ内部NWのコミュニティサービスを提供したいという需要がある。また、普段は内部NWでサービスを利用するコミュニティメンバであっても、内部NWからだけではなく、インターネットなどの外部NWからも内部NWのコミュニティサービスを利用できるようにしたいという需要も多い。
【0004】
しかし、多くの企業の内部NWには、企業の極秘情報が散在していたり、様々なシステムが稼動しているため、外部NWからの第三者による不正アクセスを抑止して、これらの安全性を確保する必要がある。このため、外部NWから内部NWへ許可された通信のみを通過させるように、外部NWと内部NWの間で通信フィルタリングを行うことが一般的である。
【0005】
通信フィルタリングを行う装置としてファイアウォール(以下、FWと記す。)装置が広く知られている。FW装置は、予め記憶しているポリシーに従ってフィルタリングを行う。外部NWに存在する端末から内部NWへのリクエストがあった場合、そのリクエストがポリシーに準じた内部NWへのアクセスであれば、FWはそのリクエストを内部NWに属するサービス提供装置に転送するように動作する。しかし、FW装置に予め記憶されるポリシーは、IPアドレスやポートなどの通信層の情報に基づくポリシーである。従って、外部NWに存在する端末を利用するユーザに関する情報や、そのユーザが参加するコミュニティに関する情報に基づくフィルタリングを行うことはできなかった。
【0006】
また、通信層の情報だけでなく、内部NWにアクセスする端末のユーザに関する情報やそのユーザが参加するコミュニティに関する情報を用いてフィルタリングを行う技術として、SSL−VPN(Secure Socket Layer Virtual Private Network )が知られている。SSL−VPNでは、IPアドレスやポートだけを用いてフィルタリングを行うのではなく、ユーザに関する情報を用いてユーザ認証を行ったり、ユーザが参加するコミュニティに関する情報を用いて、外部NWからの内部ネットワークへのリクエストがそのユーザが参加するコミュニティに許可されたサービスに対するリクエストであるか否かを判定する。そして、ユーザ認証に成功し、外部NWからの内部ネットワークへのリクエストがユーザの参加するコミュニティに許可されたサービスに対するとリクエストであると判定された場合に、そのリクエストは内部NWに属するサービス提供装置に転送される。
【0007】
また、ユーザに関する情報を保持するユーザDBと、システムによって提供可能なサービスに関する情報を保持するコミュニティサービスDBと、開設されたコミュニティのリストを保持するコミュニティDBと、コミュニティに属するメンバのリストを保持するコミュニティメンバDBとを備えるコミュニティサービス管理サーバを用いたネットワークアクセス管理方法が特許文献1に記載されている。
【0008】
また、特許文献2には、アクセス制御時にユーザ認証を行うサーバクライアントシステムが記載されている。
【0009】
【特許文献1】特開2005−228122号公報
【特許文献2】特開2005−309821号公報(段落0013,0014)
【発明の開示】
【発明が解決しようとする課題】
【0010】
従来のSSL−VPNなどでは、アクセス管理のための運用コストが大きいという問題があった。すなわち、従来のSSL−VPNでは、利用者が内部NWのコミュニティサービスを利用できるように新規にコミュニティを形成した場合、内部NWのコミュニティサービスを利用していたコミュニティを解散した場合、さらにコミュニティが利用するサービスの種別(例えば、掲示板、ファイル共有、スケジュール共有などの種別)を変更する場合などには、その都度、管理者がユーザに関する情報やコミュニティに関する情報を更新しなければならかった。このようにコミュニティの形成や解散時、あるいはコミュニティが利用するサービスの種別を変更するときに、その都度、管理者がユーザに関する情報やコミュニティに関する情報を更新しなければならなかったので、運用コストが大きくなり、管理者の負担が大きかった。
【0011】
また、管理者がユーザに関する情報やコミュニティに関する情報を更新していたので、更新時にユーザに関する情報やコミュニティに関する情報が誤って変更されるおそれがあった。
【0012】
そこで、本発明は、アクセス管理のための管理者の作業を軽減して運用コストを抑えることを目的とする。また、アクセス管理のための情報が誤って更新される危険性を排除することを目的とする。
【課題を解決するための手段】
【0013】
本発明の通信フィルタリングシステムは、個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部と、ユーザの端末に対してサービスを提供するサービス提供部と、ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング部と、コミュニティに関する情報を登録するコミュニティ管理部と、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とを備え、コミュニティ管理部が、個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを有し、サービス管理部が、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを有し、通信フィルタリング部が、ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証部と、ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証部と、
ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送するフィルタリング部とを有し、コミュニティ情報管理部が、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス情報管理部に要求し、サービス情報管理部が、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、サービス設定部が、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、コミュニティ情報管理部が、コミュニティ識別子と前記サービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させることを特徴とする。
【0014】
そのような構成によれば、フィルタリング部が、実際に開設したコミュニティの情報を参照して、フィルタリングの判定を行うことができるため、管理者があらためてフィルタリング部にフィルタリングのルールを設定し直す必要がなくなり、アクセス管理のための管理者の作業を軽減して運用コストを抑えることができ、またアクセス管理のための情報が誤って更新される危険性を排除できる。
【0015】
サービス管理部が、サービス提供部に開設可能なサービスの種別を記憶するサービス提供部情報記憶部を備え、コミュニティ情報管理部が、前記サービスの種別をサービス情報管理部に要求し、サービス情報管理部が、コミュニティ情報管理部からの要求に応じて前記サービスの種別をサービス提供部情報記憶部から読み込んでコミュニティ情報管理部に送信し、コミュニティ情報管理部が、前記サービスの種別を管理者端末に送信し、コミュニティ情報管理部が、管理者端末に指定された種別のサービスの開設をサービス情報管理部に要求する構成であってもよい。
【0016】
サービス設定部が、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスのアドレスを示すサービスアドレス情報を生成し、サービス管理部が、サービス設定部が生成したサービス識別子とサービスアドレス情報とを記憶するサービス情報記憶部を備えた構成であってもよい。
【0017】
コミュニティ情報管理部が、管理者端末から閉鎖対象となるコミュニティのコミュニティ識別子を受信すると、当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から読み込み、当該サービス識別子をサービス情報管理部に送信して、サービス情報管理部にサービスの閉鎖を要求し、サービス情報管理部が、コミュニティ情報管理部から受信したサービス識別子が示すサービスの閉鎖をサービス設定部に要求し、サービス設定部が、サービス識別子が示すサービスを提供不能となるようにサービス提供部の設定を行い、コミュニティ情報管理部が、閉鎖対象となるコミュニティのコミュニティ識別子をコミュニティ情報記憶部から削除し、閉鎖対象となるコミュニティのコミュニティ識別子および当該コミュニティ識別子に対応するユーザ識別子をメンバ情報記憶部から削除し、閉鎖対象となるコミュニティのコミュニティ識別子および当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から削除する構成であってもよい。
【0018】
サービス管理部が、サービス提供部に開設可能なサービスの種別を記憶するサービス提供部情報記憶部を備え、コミュニティ情報管理部が、管理者端末からサービス変更対象となるコミュニティのコミュニティ識別子を受信すると、当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から読み込み、当該サービス識別子を管理者端末に送信し、管理者端末に指定されたサービス識別子をサービス情報管理部に送信して、サービス情報管理部にサービスの閉鎖を要求し、サービス情報管理部が、コミュニティ情報管理部から受信したサービス識別子が示すサービスの閉鎖をサービス設定部に要求し、サービス設定部が、サービス識別子が示すサービスを提供不能となるようにサービス提供部の設定を行い、コミュニティ情報管理部が、前記サービス識別子を利用サービス情報記憶部から削除し、コミュニティ情報管理部が、サービスの種別をサービス情報管理部に要求し、サービス情報管理部が、コミュニティ情報管理部からの要求に応じて前記サービスの種別をサービス提供部情報記憶部から読み込んでコミュニティ情報管理部に送信し、コミュニティ情報管理部は、前記サービスの種別を管理者端末に送信し、コミュニティ情報管理部が、管理者端末に指定された種別のサービスの開設をサービス情報管理部に要求し、サービス情報管理部が、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、サービス設定部が、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、サービス情報管理部が、前記サービス識別子をサービス変更対象となるコミュニティのコミュニティ識別子に対応付けて利用サービス情報記憶部に記憶させる構成であってもよい。
【0019】
そのような構成によれば、フィルタリング部が、実際に閉鎖あるいは更新を行ったコミュニティの情報を参照して、フィルタリングの判定を行うことができるため、管理者があらためてフィルタリング部にフィルタリングのルールを設定し直す必要がなくなり、アクセス管理のための管理者の作業を軽減して運用コストを抑えることができ、また管理者が直接情報を削除したり更新したりしないので、アクセス管理のための情報が誤って更新される危険性を排除できる。
【0020】
複数のユーザ情報記憶部を備え、コミュニティ情報管理部が、各ユーザ情報記憶部に記憶されたユーザ識別子を管理者端末に送信し、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子と、管理者端末から受信したユーザ識別子と、当該ユーザ識別子を記憶しているユーザ情報記憶部の識別情報とを対応づけたメンバ情報をメンバ情報記憶部に記憶させる構成であってもよい。
【0021】
そのような構成によれば、既存のデータベースシステムを流用して、さらに当該データベースシステムには登録されていないユーザ情報は別のデータベースシステムで管理するように運用し、流用したデータベースシステムにすでにユーザ識別子およびユーザ認証情報が記憶されている場合には、それらの情報を新規に登録する必要がなく、運用コストや運用負荷を軽減することができる。
【0022】
管理者端末からの要求に応じて、ユーザ情報記憶部にユーザ識別子とユーザ認証情報とを対応付けて記憶させるユーザ情報管理部と、管理者のユーザ識別子と管理者のユーザ認証情報とを対応付けて記憶する管理者情報記憶部と、管理者端末から受信した管理者のユーザ識別子および管理者のユーザ認証情報の組み合わせが管理者情報記憶部に記憶されている場合に管理者の認証に成功したと判定し、管理者端末から受信した管理者のユーザ識別子および管理者のユーザ認証情報の組み合わせが管理者情報記憶部に記憶されていない場合に管理者の認証に失敗したと判定する管理者認証部とを備え、ユーザ情報管理部が、管理者の認証に成功したと判定された場合に、管理者端末からの要求に応じて、ユーザ情報記憶部にユーザ識別子とユーザ認証情報とを対応付けて記憶させる構成であってもよい。なお、管理者情報記憶部は、例えば、第3の実施の形態におけるユーザ情報記憶部402(図11参照。)によって実現される。すなわち、ユーザ情報記憶部が管理者情報記憶部を兼ねてもよい。
【0023】
コミュニティ情報管理部が、管理者の認証に成功したと判定された場合に、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信する構成であってもよい。
【0024】
通信フィルタリング部が、ユーザ認証部によってユーザ認証に成功したと判定された場合に前記ユーザ認証に対応するデータである第1のセッション情報を生成し、リクエストの送信元のユーザの端末に第1のセッション情報を送信するセッション情報生成部と、
第1のセッション情報を記憶するセッション情報記憶部と、ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が、セッション情報記憶部に記憶されている場合に、前記第1のセッション情報が正規の第1のセッション情報であると判定するセッション情報管理部とを備え、リクエスト内容検証部が、ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が正規の第1のセッション情報であると判定されたならば、ユーザ認証部にユーザ認証に成功したと判定されていなくても、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定する構成であってもよい。なお、セッション情報生成部は、例えば、第4の実施の形態におけるセッション情報管理部305(図17参照。)によって実現される。すなわち、セッション情報管理部がセッション情報生成部を兼ねてもよい。
【0025】
そのような構成によれば、ユーザ認証部によるユーザ認証を省略することができる。
【0026】
セッション情報生成部が、ユーザの端末から受信したリクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるとリクエスト内容検証部によって判定された場合に前記判定に対応するデータである第2のセッション情報を生成し、第2のセッション情報と前記リクエストに付加されているサービス識別子とを対応付けてセッション情報記憶部に記憶させ、リクエストの送信元のユーザの端末に第2のセッション情報を送信し、セッション情報管理部が、ユーザの端末から新たに受信したリクエストに付加された第2のセッション情報およびサービス識別子の組み合わせがセッション情報記憶部に記憶されているか否かを判定し、フィルタリング部が、ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が正規の第1のセッション情報であると判定され、かつ、前記リクエストに付加された第2のセッション情報およびサービス識別子の組み合わせがセッション情報記憶部に記憶されていると判定された場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるとリクエスト内容検証部によって判定されない場合であっても、前記リクエストをサービス提供部に転送する構成であってもよい。
【0027】
そのような構成によれば、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの判定を省略することができる。
【0028】
本発明による通信フィルタリング方法は、個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部と、ユーザの端末に対してサービスを提供するサービス提供部と、ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング部と、コミュニティに関する情報を登録するコミュニティ管理部と、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とを備え、コミュニティ管理部が、個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを有し、サービス管理部が、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを有する通信フィルタリングシステムを用いて、ユーザの端末からの所定のリクエストをサービス提供部に転送する通信フィルタリング方法であって、コミュニティ情報管理部が、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス情報管理部に要求し、サービス情報管理部が、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、サービス設定部が、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、コミュニティ情報管理部が、コミュニティ識別子と前記サービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させ、通信フィルタリング部が、ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定し、通信フィルタリング部が、ユーザ認証に成功したと判定したときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定し、通信フィルタリング部が、ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定した場合に、前記リクエストをサービス提供部に転送することを特徴とする。
【0029】
本発明によるコミュニティ管理装置は、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とに接続されたコミュニティ管理装置であって、個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを備え、コミュニティ情報管理部は、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス管理部に要求し、コミュニティ識別子とサービス管理部によって生成されたサービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させることを特徴とする。
【0030】
本発明によるサービス管理装置は、ユーザの端末に対してサービスを提供するサービス提供部と、コミュニティに関する情報を登録するコミュニティ管理部とに接続され、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理装置であって、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、コミュニティ管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを備え、サービス設定部が、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスを識別するサービス識別子を生成することを特徴とする。
【0031】
本発明による通信フィルタリング装置は、個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部とユーザ識別子およびユーザ認証情報を取得可能に接続され、個々のコミュニティを識別するコミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコミュニティ管理装置と接続され、ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング装置であって、ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証部と、ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証部と、ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送するフィルタリング部とを備えたことを特徴とする。
【0032】
本発明によるコミュニティ管理プログラムは、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とに接続されたコンピュータであって、個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコンピュータに、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信したときに、新たなコミュニティのコミュニティ識別子を生成するコミュニティ識別子生成処理、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させる処理、および前記新たなコミュニティのサービスの開設をサービス管理部に要求し、コミュニティ識別子とサービス管理部によって生成されたサービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させる処理を実行させることを特徴とする。
【0033】
本発明によるサービス管理プログラムは、ユーザの端末に対してサービスを提供するサービス提供部と、コミュニティに関する情報を登録するコミュニティ管理部とに接続されるコンピュータに、コミュニティ管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行し、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスを識別するサービス識別子を生成する処理を実行させることを特徴とする。
【0034】
本発明による通信フィルタリングプログラムは、個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部とユーザ識別子およびユーザ認証情報を取得可能に接続され、個々のコミュニティを識別するコミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコミュニティ管理装置と接続されたコンピュータに、ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証処理、ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証処理、およびユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送する処理を実行させることを特徴とする。
【発明の効果】
【0035】
本発明によれば、フィルタリング部が、実際に開設したコミュニティの情報を参照して、フィルタリングの判定を行うことができるため、管理者があらためてフィルタリング部にフィルタリングのルールを設定し直す必要がなくなるため、アクセス管理のための管理者の作業を軽減して運用コストを抑えることができ、アクセス管理のための情報が誤って更新される危険性を排除できる。また、フィルタリング部が、実際に閉鎖あるいは更新したコミュニティの情報を参照して、フィルタリングの判定を行うことができるため、管理者があらためてフィルタリング部にフィルタリングのルールを設定し直す必要がなくなるため、アクセス管理のための管理者の作業を軽減して運用コストを抑えることができ、アクセス管理のための情報が誤って更新される危険性を排除できる。
【発明を実施するための最良の形態】
【0036】
以下、本発明の実施の形態を図面を参照して説明する。
【0037】
実施の形態1.
図1は、本発明の第1の実施の形態の例を示すブロック図である。本発明による通信フィルタリングシステムは、フィルタリング処理を行う通信フィルタリング部30と、ユーザ情報の管理を行うユーザ管理部40と、コミュニティ情報、メンバ情報および利用サービス情報の管理を行うコミュニティ管理部50と、コミュニティに属するメンバの端末に対してサービスを提供するサービス提供部60と、サービス提供部60が提供するサービスの管理を行うサービス管理部70と、管理者の操作に応じてコミュニティ管理部50およびユーザ管理部40に指示を送信したり、コミュニティ管理部50から受信した情報を表示する端末22とを備える。なお、管理者とは、通信フィルタリングシステムのシステム管理者であり、コミュニティ開設、閉鎖、サービスの変更等の管理を行う。
【0038】
ユーザ管理部40、コミュニティ管理部50、およびサービス提供部60は、内部NW(ネットワーク)12に設けられ、内部NW12を介して通信フィルタリング部30に接続されている。また、通信フィルタリング部30は、外部NW(ネットワーク)11を介して、サービス提供部60にサービスを要求する端末21に接続されている。端末21は、サービス提供部60が提供するサービスを利用しようとするユーザ(具体的には、コミュニティのメンバ)によって操作される端末である。また、端末22は、ユーザ管理部40およびコミュニティ管理部50に接続され、ユーザ管理部40およびコミュニティ管理部50に対して指示を送信する。
【0039】
ユーザ管理部40が行うユーザ情報の管理について説明する。ユーザ情報とは、個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けた情報である。ユーザ識別子とユーザ認証情報に加え、ユーザの属性(例えば、ユーザの名前など)が対応付けられていてもよい。ユーザ情報は、ユーザ管理部40が備えるユーザ情報記憶部402に記憶される。ユーザ管理部40が行うユーザ情報の管理処理には、少なくともユーザ情報記憶部402へのユーザ情報の登録が含まれる。この管理処理には、ユーザ情報記憶部402に記憶されたユーザ情報の変更や削除が含まれていてもよい。なお、より具体的には、ユーザ管理部40が備えるユーザ情報管理部401が、ユーザ情報の管理を行う。
【0040】
コミュニティ管理部50が行うコミュニティ情報、メンバ情報および利用サービス情報の管理について説明する。コミュニティ情報とは、少なくとも個々のコミュニティを識別するコミュニティ識別子を含む情報である。以下の説明では、コミュニティ情報が、コミュニティ識別子と、コミュニティの属性とを対応付けた情報である場合を例にして説明する。コミュニティの属性とは、例えばコミュニティ名であるが、コミュニティ名以外の属性がコミュニティ識別子と対応付けられていてもよい。コミュニティ情報は、コミュニティ管理部50が備えるコミュニティ情報記憶部502に記憶される。メンバ情報とは、コミュニティ識別子と、そのコミュニティ識別子が示すコミュニティに属する所属メンバのユーザ識別子とを対応づけた情報である。メンバ情報は、コミュニティ管理部50が備えるメンバ情報記憶部503に記憶される。利用サービス情報とは、コミュニティ識別子と、そのコミュニティ識別子が示すコミュニティに属する所属メンバが利用可能なサービスのサービス識別子とを対応付けた情報である。なお、サービス識別子は、個々のサービスを識別する識別子である。利用サービス情報において、コミュニティ識別子とサービス識別子とが対応付けられ、さらにサービス識別子に、そのサービス識別子が示すサービスの種別(例えば、掲示板、ファイル共有、スケジュール共有などの種別)が対応付けられていてもよい。さらに、利用サービス情報において、個々のサービス識別子と、そのサービスの利用を要求する端末21からのリクエストの転送先を特定可能な情報(以下、転送先情報と記す。)が記憶されていてもよい。以下の説明では、利用サービス情報において個々のサービス識別子と転送先情報とが対応付けられているものとする。利用サービス情報は、コミュニティ管理部50が備える利用サービス情報記憶部504に記憶される。
【0041】
コミュニティ管理部50が行うコミュニティ情報の管理処理には、少なくともコミュニティ情報記憶部502へのコミュニティ情報の登録が含まれる。コミュニティ情報の管理処理には、コミュニティ情報記憶部502に記憶されたコミュニティ情報の変更、削除や、コミュニティ情報記憶部502に記憶されたコミュニティ情報を管理者の端末22に送信して表示させることが含まれていてもよい。
【0042】
コミュニティ管理部50が行うメンバ情報の管理処理には、少なくともメンバ情報記憶部503へのメンバ情報の登録が含まれる。メンバ情報の管理処理には、メンバ情報記憶部503に記憶されたメンバ情報の変更、削除や、メンバ情報記憶部503に記憶されたメンバ情報を管理者の端末22に送信して表示させることが含まれていてもよい。
【0043】
コミュニティ管理部50が行う利用サービス情報の管理処理には、少なくとも利用サービス情報記憶部504への利用サービス情報の登録が含まれる。利用サービス情報の管理処理には、利用サービス情報記憶部504に記憶された利用サービス情報の変更、削除や、利用サービス情報記憶部504に記憶された利用サービス情報を管理者の端末22に送信して表示させることが含まれていてもよい。
【0044】
サービス管理部70によるサービスの管理について説明する。サービス管理部70によるサービスの管理処理とは、サービスの開設処理および閉鎖処理と、開設されたサービスのサービス識別子およびそのサービスのサービスアドレス情報の記録を意味する。
【0045】
サービスアドレス情報とは、各コミュニティの各サービスを示すアドレスであり、サービス設定部702がサービス提供部60に対してサービスの閉鎖処理を行うときに、閉鎖対象となるサービスを特定するために用いらる。なお、サービス提供部60が単一の装置によって構成されている場合には、当該装置内においてサービス提供のために設けられたディレクトリを示す情報をサービスアドレス情報としてもよい。この場合、「/boad/id123/」等のサービスアドレス情報と、サービス提供部情報記憶部703に記憶されたサービスを提供する装置のアドレス(例えばIPアドレス)の情報(以下、装置アドレス情報と記す。)とによって、サービスを特定することができる。
【0046】
なお、ある装置内においてサービス提供のために設けられたディレクトリを示す情報と、装置アドレス情報とを含むアドレス情報をサービスアドレス情報としてもよい。このようなサービスアドレス情報の一態様として、例えば、「http://12.34.56.78/boad/id123/」のようなURLが挙げられ、この場合には当該URLによってサービスを特定することができる。
【0047】
本発明の通信フィルタリングシステムでは、管理者の端末22からの要求により、ユーザ管理部40がユーザ情報を管理し、コミュニティ管理部50がユーザ情報によって特定されるユーザからなるコミュニティのコミュニティ情報、メンバ情報、利用サービス情報を管理する。また、コミュニティ管理部50は、管理者の端末22からコミュニティの形成や解散の通知を受信したり、コミュニティが利用中のサービスの変更を指示されたりすると、サービス管理部70にそのコミュニティが利用可能なサービスの開設や閉鎖を要求し、サービス管理部70はその要求に応じてサービスを開設したり閉鎖したりするように動作する。
【0048】
また、本通信フィルタリングシステムでは、外部NW11からのリクエストに対し、ユーザ情報、メンバ情報、利用サービス情報に基づいてフィルタリングを行い、通過を許可したリクエストのみをサービス提供部60に転送する。
【0049】
ユーザの端末21や管理者の端末22は特定の端末に限定されない。内部NW12では、管理者の端末として複数の端末22が設置され、複数の端末22がコミュニティ管理部50およびユーザ管理部40に指示を送信できる構成としてもよい。また、図1において端末21を一台のみ図示しているが、端末21は一台に限定されず、外部NW11では複数の端末21がサービスへのリクエストを送信することができる。
【0050】
また、外部NW11と内部NW12とは、通信フィルタリング部30を介して接続され、ユーザの端末21は、外部NW11から内部NW12に直接アクセスすることはできない。すなわち、ユーザの端末21は、通信フィルタリング部30を介さずに外部NW11から内部NW12にアクセスすることはできず、外部NW11から内部NW12にアクセスするときには必ず通信フィルタリング部30を介してアクセスする。また、通信フィルタリング部30は、少なくとも内部NW12のユーザ管理部40、コミュニティ管理部50、サービス提供部60にアクセスできるように構成されている。
【0051】
また、ユーザ管理部40、コミュニティ管理部50、サービス管理部70、サービス提供部60は、外部NW11と内部NW12との間に配置されたり、通信フィルタリング部30が備える構成要素として通信フィルタリング部30の内部に配置されていてもよく、それぞれを任意に配置できる。ただし、第三者(例えば、内部NW12が会社のNWである場合には社外の第三者)から直接アクセスされないように運用する必要があるので、運用の負荷を考慮すると内部NW12にユーザ管理部40、コミュニティ管理部50、サービス管理部70、サービス提供部60を配置する構成が望ましい。
【0052】
サービス提供部60は、提供する各サービスのリソース601〜603を有する。サービス提供部60は、1台のサーバであっても、複数のサーバ群であってもよい。また、サービス提供部60は、不特定多数の装置からなる仮想的なサービス提供空間(サーバと複数のクライアント)であってもよい。さらに、サービス提供部60は、複数の電子機器からなる仮想的なサービス提供空間(複数の電子機器)であってもよく、その電子機器の種類は、サーバに限定されず、パーソナルコンピュータ、家庭用電化製品、携帯電話機等であってもよい。サービス提供部60は、提供するサービス毎に、例えばコミュニティ専用のディレクトリ、コミュニティ専用のWebサイト等のサービスのリソースを設けられる。なお、端末21のユーザが故意にしろ故意でないにしろ、サービスのリソースを不正に利用できないように、予めセキュリティを確保したリソースとして用意することが好ましい。
【0053】
なお、サービス提供部60が仮想的なサービス提供空間(複数の装置)から構成されている場合、複数の装置のうち最初にサービスのリクエストを受けた装置およびその他の装置が連携して端末21にサービスを提供する。
【0054】
通信フィルタリング部30は、フィルタリング部301と、ユーザ認証部302と、リクエスト内容検証部303とを備える。フィルタリング部301は、ユーザの端末21からリクエストを受信すると、ユーザ認証部302にユーザ認証を要求し、また、リクエスト内容検証部303にリクエストの内容の検証(リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証)を要求する。ユーザ認証部302においてユーザ認証に失敗した場合、または、リクエスト内容検証部303によって、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストではないと判定された場合、フィルタリング部301は、端末21からのリクエストを破棄する。ユーザ認証部302においてユーザ認証に成功し、かつ、リクエスト内容検証部303によって、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定した場合、端末21からのリクエストを、リクエストされたサービスに転送する。
【0055】
ユーザ認証部302は、フィルタリング部301からユーザ認証の要求を受けて、リクエストに含まれるユーザ識別子およびユーザ認証情報と、ユーザ情報記憶部402に記憶されているユーザ情報(ユーザ識別子およびユーザ認証情報)とを照合する。そして、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が存在していればユーザ認証に成功したと判定し、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が存在していなければユーザ認証に失敗したと判定し、ユーザ認証結果をフィルタリング部301に通知する。
【0056】
リクエスト内容検証部303は、フィルタリング部301から、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証の要求を受けて、その検証を行う。リクエスト内容検証部303は、メンバ情報記憶部503に記憶されたメンバ情報の中から、リクエストに含まれるユーザ識別子に対応するコミュニティ識別子を取得し、また、利用サービス情報記憶部504に記憶された利用サービス情報の中から、リクエストに含まれるサービス識別子に対応するコミュニティ識別子を取得する。リクエスト内容検証部303は、ユーザ識別子に対応するコミュニティ識別子の中に、サービス識別子に対応するコミュニティ識別子が含まれていれば、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定し、一方、ユーザ識別子に対応するコミュニティ識別子の中に、サービス識別子に対応するコミュニティ識別子が含まれていなければ、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストではないと判定する。リクエスト内容検証部303は、その判定結果(検証結果)をフィルタリング部301に通知する。
【0057】
図2は、本実施の形態における端末21が通信フィルタリング部30に対して送信するリクエスト内容の一例を示す説明図である。リクエストは最低限、ユーザ識別子とサービス識別子とを含む。図2ではユーザ認証のためにユーザID/パスワードによる認証方式を利用する場合の例を示しているので、ユーザ識別子であるユーザID、サービス識別子であるサービスIDのほかにパスワードをリクエストに含んでいる。図2に示す例において、パスワードは、ユーザ認証情報に該当する。ただし、ユーザ認証は、ユーザIDおよびパスワードを用いた認証方式に限定されない。例えば、ユーザ認証は、指紋情報や顔写真情報をユーザ認証情報として、予めユーザ識別子と対応付けてユーザ情報記憶部402に登録しておき、端末21が通信フィルタリング部30に送信するリクエストには、ユーザ識別子と、指紋情報あるいは顔写真情報とを含めるようにすればよい。そして、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報(指紋情報あるいは顔写真情報)の組み合わせに一致するユーザ情報がユーザ情報記憶部402に記憶されているか否かを判定して、ユーザ認証を行う。また、リクエストには、サービスを利用するためのサービス固有の付加情報が含まれてもよい。
【0058】
ユーザ管理部40は、ユーザ情報の管理を行うユーザ情報管理部401と、ユーザ情報を記憶するユーザ情報記憶部402とを備える。ユーザ情報記憶部402は、ユーザ識別子とユーザ認証情報とを対応付けたユーザ情報を記憶する。ユーザ情報管理部401は、少なくともユーザ情報記憶部402へのユーザ情報の登録を行う。ユーザ情報管理部401は、ユーザ情報記憶部402に記憶されたユーザ情報の変更や削除を行ってもよい。
【0059】
コミュニティ管理部50は、コミュニティ情報、メンバ情報および利用サービス情報の管理を行うコミュニティ情報管理部501と、コミュニティ情報記憶部502と、メンバ情報記憶部503と、利用サービス情報記憶部504とを備える。
【0060】
コミュニティ情報記憶部502は、コミュニティ情報を記憶する。本例では、コミュニティ情報が、コミュニティ識別子とコミュニティの属性(例えば、コミュニティ名)とを対応付けた情報である場合を例にして説明するが、コミュニティ情報は、少なくともコミュニティ識別子を含んでいればよい。
【0061】
メンバ情報記憶部503は、コミュニティ識別子と、そのコミュニティ識別子が示すコミュニティに属する所属メンバのユーザ識別子とを対応づけたメンバ情報を記憶する。
【0062】
利用サービス情報記憶部504は、コミュニティ識別子と、そのコミュニティ識別子が示すコミュニティに属する所属メンバが利用可能なサービスのサービス識別子とを対応付けた利用サービス情報を記憶する。ここでは、利用サービス情報記憶部504は、個々のサービス識別子にさらに転送先情報が対応付けられた利用サービス情報を記憶するものとして説明する。
【0063】
コミュニティ情報管理部501は、コミュニティ情報などの管理処理として、少なくとも、コミュニティ情報記憶部502へのコミュニティ情報の登録、メンバ情報記憶部503へのメンバ情報の登録、利用サービス情報記憶部504への利用サービス情報の登録を行う。また、コミュニティ情報管理部501は、コミュニティ情報などの管理処理として、コミュニティ情報記憶部502に記憶されたコミュニティ情報の変更、削除、メンバ情報記憶部503に記憶されたメンバ情報の変更、削除、利用サービス情報記憶部504に記憶された利用サービス情報の変更、削除を行ってもよい。また、コミュニティ情報記憶部502に記憶されたコミュニティ情報、メンバ情報記憶部503に記憶されたメンバ情報、および利用サービス情報記憶部504に記憶された利用サービス情報を端末22に送信して、表示させてもよい。
【0064】
また、コミュニティ情報管理部501は、ユーザ情報記憶部402に記憶されているユーザ一覧情報をユーザ管理部40から取得して端末22に表示させる処理や、サービス管理部70(より具体的には、サービス情報管理部701)にサービスの開設や閉鎖を要求する処理も行う。ただし、ユーザ一覧情報とは、ユーザ情報記憶部402に記憶されている各ユーザ識別子の情報であるが、各ユーザ識別子の情報に対応する各ユーザの属性もユーザ一覧情報に含めることが好ましい。
【0065】
コミュニティ情報管理部501は、ユーザ情報管理部401から取得したユーザ一覧情報を端末22に送信する。端末22は、コミュニティ情報管理部501から受信したユーザ一覧情報を表示する。この結果、管理者はユーザ一覧情報を見ることができ、ユーザ情報記憶部402にユーザ情報が登録されている各ユーザを把握することができる。
【0066】
サービス提供部60は、コミュニティが利用するサービスのリソース601〜603を有する。サービスのリソースとして、例えばコミュニティ専用のディレクトリ、コミュニティ専用のWebサイト等が挙げられる。図1では、サービスのリソース601〜603を図示しているが、サービスは3つに限定されない。また、同種のサービスであってもコミュニティ毎に別々に開設される。
【0067】
サービス管理部70は、サービス情報管理部701と、サービス設定部702と、サービス提供部情報記憶部703と、サービス情報記憶部704とを備える。
【0068】
サービス設定部702は、サービス情報管理部701からの要求に応じて、サービス提供部60にサービスを開設したり、サービス提供部60に開設されているサービスを閉鎖する処理を実行する。
【0069】
サービス設定部702は、あるコミュニティで利用されるサービスを開設する場合、まず、そのサービスを他のサービスと識別するためのサービス識別子を定める。ここで、サービス識別子は、コミュニティ毎およびサービス毎にそれぞれ異なるように定められる。例えば、コミュニティAとコミュニティBとで同種のサービス(例えば、掲示板)を利用できるようにする場合であっても、コミュニティAで利用される掲示板サービスと、コミュニティBで利用される掲示板サービスとでは、サービス識別子が異なるようにサービス識別子を定める。また、サービス設定部702は、開設するサービスを示すサービスアドレス情報を定める。
【0070】
サービス設定部702は、サービス提供部60を構成するある装置内においてサービス提供のために設けられたディレクトリを示す情報をサービスアドレス情報としてもよい。また、そのようなディレクトリを示す情報とその装置の装置アドレス情報とを含むURLのようなアドレス情報をサービスアドレス情報としてもよい。
【0071】
装置アドレス情報は、予めサービス提供部情報記憶部703に記憶されている。サービス提供部60が単一の装置である場合、サービス提供部情報記憶部703は、その装置の装置アドレス情報を記憶しておけばよい。サービス提供部60が複数の装置から構成される場合、サービス提供部情報記憶部703は、複数の装置アドレス情報を記憶しておくか、あるいは複数の装置のうち1台の装置でサービスの開設や閉鎖処理を行うようにサービス提供部60が構成されていれば当該1台の装置アドレス情報を記憶しておけばよい。
【0072】
サービス提供部情報記憶部703は、装置アドレス情報が記述されたファイルを記憶していてもよい。また、サービス提供部情報記憶部703が記憶する装置アドレス情報は、ブラウザから設定可能であってもよい。装置アドレス情報は、SQLでデータベースに直接登録されてもよい。また、サービス情報管理部701に処理を実行させるプログラムに装置アドレス情報がハードコーディングされていてもよい。
【0073】
また、サービス設定部702は、開設するサービスに対して内部NWにおいてサービスを提供するためにアクセスする場所としての転送先情報を定める。転送先情報は、サービスを開設したときにサービス提供部60に対して設定するもので、例えば{http://12.34.56.78/service123/}のようなURLとすることができる。あるいは{12.34.56.78,service=123}のような装置アドレス情報と、サービス提供部60がリクエストされたときにサービスを特定するためのパラメータを含んだ情報などであってもよく、この場合もサービスを開設したときに、サービス提供部60に対して{service=123}のパラメータを受け取れば対応するサービスを提供するように設定する。なお、転送先情報は、装置アドレス情報およびサービスアドレス情報から構成することも可能で、例えば装置アドレス情報が{12.34.56.78}、サービスアドレス情報が{/service123/}である場合に、HTTPプロトコルを示す{http://}を付加して{http://12.34.56.78/service123/}を転送先情報とすることができる。また、転送先情報に、サービスアドレス情報を含めない構成にすることも可能で、例えば装置アドレス情報が{12.34.56.78}、サービスアドレス情報が{service123}である場合に、転送先情報を{http://12.34.56.78/s123/index.cgi}のようにすることができ、この場合にはサービス設定部702は開設したサービスに対応するサービスアドレス情報および転送先情報を個別に設定する必要がある。
【0074】
また、サービス設定部702は、開設する新たなサービスをサービス提供部60が提供できるようにサービス設定部60の設定を行う。サービス設定部702が行うサービスの開設とは、サービス設定部60が端末21にサービスを提供できるように(端末からの要求に応じた動作をするように)サービス提供部60の設定を行うことを意味する。サービスの開設の態様は、サービスの種類等によって様々である。以下、その例を挙げる。
【0075】
サービス提供部60が単一のサーバである場合の例を挙げる。この場合、サービス設定部702は、コミュニティ用のプログラム(例えば掲示板プログラム)をサーバ(サービス提供部60)上にコピーする。なお、コピー元のプログラムは、サーバ(サービス提供部60)自身が保持していてもよいし、サーバ外に保持されていてもよい。サービス設定部702は、コピーしたプログラムにコミュニティ専用のURLを割り付け、そのURLでアクセスしたリクエストを受信したときに、サーバがコミュニティ用のプログラムに従って動作するようにサーバ(サービス提供部60)を設定する。このとき、サーバに新規にURLを設定しなければならない構成になっているならば、サービス設定部702は、サーバに新規にURLを設定する。
【0076】
また、例えば、サービス提供部60にて、コミュニティ毎に個別のURLを割り当ててサービスを提供する単一のプログラムが動作している場合、サービス設定部702は新たなURLの設定を追加する動作を行うだけでよい。例えば、サーバの掲示板プログラム(URL毎にコミュニティ別の掲示板サービスを提供するプログラム)に対して新規にURLを設定し、そのURLに対するリクエストを受信したときに、サーバが新規に用意した掲示板を利用するようにサーバを設定してもよい。
【0077】
また、サーバ(サービス提供部60)において、標準的なWWWサーバプログラムが動作している場合、例えば、サービス設定部702は、サーバに新たにディレクトリを作成し、また、WWWサーバプログラムを介して新たに定めたURLをそのディレクトリにマッピングさせることで、サーバがそのURLへのアクセスを受けると、該ディレクトリに保存されたファイルの一覧を端末21に返したり、端末21に送信して端末21がファイルをダウンロードできるようにしたり、端末21からファイルを該ディレクトリに保存できるようにすることができ、コミュニティメンバでファイルを共有するサービスとして開設することができる。
【0078】
また、専用のファイル共有プログラムを介したファイル共有サービスを開設する場合、サービス設定部702はファイル共有プログラムに対して新規のファイル共有領域の設定を行う。つまり、サーバ(サービス提供部60)に新たにディレクトリを作成し、さらに端末21がファイル共有プログラムに対してリクエストを行うと、リクエストに付加された該ディレクトリのパス情報(例えば、/dir001/等)をもとに該ディレクトリに保存されたファイルの一覧を端末21に返したり、端末21に送信して端末21がファイルをダウンロードできるようにしたり、端末21からファイルを該ディレクトリに保存できるように設定を行う。
【0079】
サービス提供部60が単一のサーバではなく複数のコンピュータであり、複数のコンピュータがサービスを提供する場合の例を挙げる。サービス提供部60が3台のコンピュータ(以下、ComA,ComB,ComCと記す。)によって構成されているとする。また、サービスを提供するときに最初にアクセスを受けるコンピュータはComAであるとする。サービス設定部702は、3台のコンピュータのうち、記憶装置(ハードディスク等)の空き容量が最も大きいコンピュータを検索する。サービス設定部702は、検索した空き容量が最大のコンピュータ(ここではComBとする。)にコミュニティ専用のディレクトリを作成する。サービス設定部702は、ComAにファイル共有プログラムに従ってコミュニティ専用のURLを設定し、そのURLへのリクエストをComBに生成したディレクトリに対応付けさせる。この場合、ComAは、コミュニティ専用のURLでファイル登録のリクエストがあると、ComBに生成したディレクトリにファイルを登録するように動作する。また、ComAは、ファイル取得のリクエストを受けると、ComBに作成したディレクトリから、指定されたファイルを取得して、端末に返却する動作を行う。
【0080】
また、例えば、ファイルを断片化して複数のコンピュータで保持するサービスを新たに開設する場合、サービス設定部702は、以下のように動作する。サービス設定部702は、ComA(サービスを提供するときに最初にアクセスを受けるコンピュータ)にコミュニティ専用のURLを設定させ、そのURLに対して、ファイル登録、参照、削除のリクエストを受けたときに、リクエストを受け付けるようにComAを設定する。ComAは、このURLに対してファイル登録のリクエストを受けると、ComAは、登録を要求されたファイルを断片化して、ComB,ComCに記憶させる。ComAは、端末21からファイルを要求された場合、ComB,ComCから断片化されたデータを取得して元のファイルに復元した上で端末21に送信する。
【0081】
サービス設定部702は、サービスを開設したときに、サービス識別子とサービスアドレス情報とをサービス情報管理部701に通知する。なお、サービスアドレス情報がURLのような情報である場合には、当該URLはサービス固有の情報とすることができるので、当該URLをサービス識別子として用いることができる。
【0082】
サービス設定部702は、サービスを閉鎖する場合、サービスを提供不能となるようにサービス提供部60を設定する。例えば、そのサービスの提供のみで用いていたリソースを削除する。具体的には、サービス設定部702は、あるコミュニティで利用されるサービスを閉鎖する場合、そのサービスの提供のみで用いていたディレクトリやプログラム(例えば、サービス開設時にコピーされたプログラム)、あるいはプログラムに設定されたサービス固有の情報を削除する。サービスを提供するためのプログラムにサービス毎にURLの設定がなされる場合には、削除するサービスのURLの設定を破棄する。
【0083】
サービス提供部情報記憶部703は、前述のように装置アドレス情報を予め記憶する。また、サービス提供部情報記憶部703は、サービス提供部60が提供可能なサービス種別の一覧情報(例えば、掲示板、ファイル共有、スケジュール共有などの種別の一覧情報)を記憶する。
【0084】
サービス情報記憶部704は、開設された各サービス毎に、サービス識別子と、サービスアドレス情報とを対応付けて記憶する。サービス情報記憶部704は、サービス毎に、サービス識別子と、サービスアドレス情報と、サービスの属性とを対応付けて記憶していてもよい。サービス情報記憶部704は、サービスの属性として、例えば、サービスの種別を記憶する。サービス種別とは、例えば、掲示板、スケジュール共有、ファイル共有などの種別のことである。また、サービスアドレス情報がURLなどのように一意な情報である場合には、サービスアドレス情報をサービス識別子として用いることができる。サービスアドレス情報をサービス識別子としても用い、サービスアドレス情報とサービス識別情報とを共通化する場合、サービス情報記憶部704には、その共通化した情報を記憶させてもよい。共通化した情報は、サービス識別子でもあり、サービスアドレス情報でもある。
【0085】
サービス情報管理部701は、コミュニティ情報管理部501からサービスの開設や閉鎖の要求を受信したときに、サービス設定部702にサービスの開設や閉鎖を要求する。また、サービスが開設され、サービス設定部702からサービス識別子と、サービスアドレス情報が通知されたときには、サービス情報管理部701は、そのサービス識別子と、サービスアドレス情報と、サービスの属性(以下、サービスの種別であるものとする。)を対応付けて、サービス情報記憶部704に記憶させる。サービス設定部702からサービスの閉鎖に成功した旨の通知を受けたときには、そのサービスのサービス識別子、サービスアドレス情報、およびサービスの種別をサービス情報記憶部704から削除する。
【0086】
なお、サービス提供部60が一台の装置(例えば一台のサーバ)のみでサービスを提供可能であれば、サービス提供部60とサービス管理部70とを一台の装置で実現してもよい。
【0087】
次に、図3〜図7のフローチャートを参照して第1の実施の形態の全体の動作について詳細に説明する。
【0088】
図3はユーザ登録におけるフローチャートである。図3を参照すると、まず管理者は、端末22からユーザ情報管理部401を利用して、コミュニティを形成するすべてのユーザのユーザ情報をユーザ情報記憶部402に予め登録しておく(ステップS101)。ステップS101において、端末22には、管理者によってユーザ情報(ユーザ識別子、ユーザ認証情報)が入力される。端末22に、ユーザ情報として、ユーザ識別子とユーザ認証情報とユーザの属性(例えば、ユーザの名前)が入力されてもよい。端末22には、コミュニティを形成するすべてのユーザのユーザ情報が入力される。端末22は入力されたユーザ情報をユーザ情報管理部401に送信し、ユーザ情報管理部401は端末22から受信したユーザ情報をユーザ情報記憶部402に記憶させる。例えば、端末22は、ユーザ識別子として“u1”、ユーザ認証情報として“pw1 ”等のパスワード、ユーザの属性として“山田太郎”等の名前などを入力される。端末22は、入力されたユーザ情報(本例では“u1”、“pw1 ”および“山田太郎”の組み合わせ)をユーザ情報管理部401に送信し、ユーザ情報管理部401はそのユーザ情報をユーザ情報記憶部402に記憶させる。
【0089】
図4は、新たにコミュニティが開設される場合の通信フィルタリングシステムの動作を示すフローチャートである。端末22は、管理者の操作によって、コミュニティ登録要求(新たに開設されるコミュニティに関するコミュニティ情報、メンバ情報、利用サービス情報を登録する要求)をコミュニティ情報管理部501に送信する。コミュニティ情報管理部501は、端末22からコミュニティ登録要求を受信すると、ユーザ情報記憶部402に記憶されているユーザ一覧情報(各ユーザ識別子。ただし、各ユーザ識別子に対応する各ユーザの属性もユーザ一覧情報に含めることが好ましい。)を取得し、ユーザ一覧情報を管理者の端末22に送信する。端末22は、ユーザ一覧情報を受信し、そのユーザ一覧情報を表示する(ステップS201)。端末22は、ユーザ一覧情報を表示することによって、管理者にユーザの選択を促す。ここでは、ユーザ一覧情報に、各ユーザの名前が含まれている場合を例に説明する。この場合、端末22は、各ユーザ識別子だけでなく「山田太郎」等の各ユーザの属性(本例では名前)も、ユーザ識別子に対応させて表示する。管理者は、新たに開設されるコミュニティのメンバとなる全てのユーザを、表示されたユーザ一覧情報の中から選択する。管理者は、コミュニティのメンバとして少なくとも一人のユーザを選択する。
【0090】
端末22は、新たに開設されるコミュニティのメンバとなる各ユーザを選択する操作が管理者に行われると、選択された各ユーザ(少なくとも一人分以上)のユーザ識別子をコミュニティ情報管理部501に送信する。
【0091】
また、コミュニティ情報管理部501は、サービス情報管理部701にサービス種別の一覧情報を要求する。サービス情報管理部701は、この要求を受信すると、サービス提供部情報記憶部703からサービス種別の一覧情報を読み込み、コミュニティ情報管理部501に送信する(ステップS202)。コミュニティ情報管理部501は、サービス情報管理部701から受信したサービス種別の一覧情報を端末22に送信し、端末22は受信したサービス種別の一覧情報を表示する。端末22は、サービス種別の一覧情報を表示することによって、新たに開設するコミュニティで利用可能なサービスの選択を促す。
【0092】
端末22は、新たなコミュニティで利用可能なサービスを選択する操作が管理者に行われると、選択されたサービスの種別をコミュニティ情報管理部501に送信する(ステップS203)。複数のサービスの種別を選択する操作が行われたならば、端末22は、選択された複数の種別をコミュニティ情報管理部501に送信する。また、ステップS203において、管理者によって、新たなコミュニティの属性(本例では、コミュニティの名称とする。)も端末22に入力され、端末22がそのコミュニティの属性もコミュニティ情報管理部501に送信してもよい。
【0093】
続いて、コミュニティ情報管理部501は、新たに開設されるコミュニティのコミュニティ識別子を生成する。コミュニティ情報管理部501は、コミュニティ識別子として、既存のコミュニティ識別子と重複しない一意の値を生成する(ステップS204)。
【0094】
コミュニティ情報管理部501は、生成したコミュニティ識別子とコミュニティの属性とを対応付けて、コミュニティ情報記憶部502に記憶させる(ステップS205)。なお、コミュニティの属性は、管理者によって端末22に入力されるのでなく、コミュニティ情報管理部501が自動的に作成してもよい。例えば、コミュニティ情報管理部501が、管理者によって選択されたサービスの種別を端末22から受信した日時をコミュニティの属性としてもよい。
【0095】
また、コミュニティ情報管理部501は、生成したコミュニティ識別子と、端末22から受信したユーザ識別子(すなわち、管理者によってメンバとして選択されたユーザのユーザ識別子)とを対応付けメンバ情報記憶部503に記憶させる(ステップS206)。
【0096】
続いて、コミュニティ情報管理部501は、管理者に選択された種別(ステップS203で端末22から受信した種別)のサービスの開設をサービス情報管理部701に要求する(ステップS207)。例えば、掲示板が選択されたならば、掲示板のサービスの開設をサービス情報管理部701に要求する。
【0097】
サービス情報管理部701は、コミュニティ情報管理部501からサービスの開設の要求を受信すると、サービス提供部情報記憶部703から装置アドレスを読み込む。サービス情報管理部701は、その装置アドレスが示す装置に、ステップS207でコミュニティ情報管理部501に要求された種別のサービスを開設することをサービス設定部702に要求する(ステップS208)。例えば、サービス情報管理部701は、サービス提供部情報記憶部703から装置アドレス(例えば、IPアドレスである「12.34.56.78」)を読み込み、「12.34.56.78」に掲示板を開設すること等をサービス設定部702に要求する。
【0098】
サービス設定部702は、サービス情報管理部701からの要求に応じて新たにサービスを開設する(ステップS209)。既に述べたように、サービスの開設の態様は、サービスの種類等によって様々である。サービス設定部702は、例えば、コミュニティ用のプログラムをサービス提供部60上にコピーし、コミュニティ専用のURLを設定して、そのURLを用いてアクセスしたリクエストを受信したときに、サービス提供部60がコミュニティ用のプログラムに従って動作するように設定すればよい。ここに示したサービスの開設は一例に過ぎず、既に説明した他の態様でサービスを開設してもよい。
【0099】
また、サービス設定部702は、ステップS209において、開設するサービスに一意のサービス識別子を定める。また、サービス設定部702は、サービスのサービスアドレス情報を定める。サービス設定部702は、サービス提供部60が単一の装置で構成される場合には当該装置内においてサービス提供のために設けられたディレクトリを示す情報(例えば、「/boad/id123/」等の情報)をサービスアドレス情報としてもよく、この場合にはサービス提供部情報記憶部60に記憶されたサービス提供部60のアドレス情報と併せてサービスの所在を特定できる。あるいは、サービス提供部60が複数の装置で構成される場合には、URLのようなサービス固有の情報をサービスアドレス情報としてもよく、この場合にはURLのようなサービス固有の情報だけでサービスの所在を特定できる。なお、サービスの所在を特定するのは、サービスを閉鎖する場合に、どのサービスを閉鎖するか特定する必要があるためである。
【0100】
サービス設定部702は、サービス識別子およびサービスアドレス情報をサービス情報管理部701に送り、サービス情報管理部701は、そのサービス識別子とサービスアドレス情報とを対応付けてサービス情報記憶部704に記憶させる(ステップS210)。このとき、サービス情報管理部701は、サービス識別子と、サービスアドレス情報と、開設したサービスの種別とを対応付けてサービス情報記憶部704に記憶させてもよい。また、サービスアドレス情報をサービス識別子とする場合には、サービスアドレス情報とサービス識別子とを共通化した情報(サービスアドレス情報でもありサービス識別子でもある情報)をサービス情報管理部701に送信し、サービス情報管理部701は、その情報をサービス情報記憶部704に記憶させればよい。
【0101】
続いて、サービス設定部702は、サービス識別子と転送先情報をコミュニティ情報管理部501に送信する(ステップS211)。このとき、サービス設定部702は、開設したサービスの種別もコミュニティ情報管理部501に送信してもよい。転送先情報は、例えば、装置アドレス情報とサービスアドレス情報の組み合わせである。サービス提供部60が1台の装置であり、サービス提供部60の装置アドレス情報が1つしかなく、その装置アドレス情報を通信フィルタリング部30が記憶する場合には、サービス設定部702は、転送先情報としてサービスアドレス情報のみをコミュニティ情報管理部501に送信してもよい。なお、転送先情報は、内部NWにおいてサービスへのリクエストを行うために必要な所在情報であり、サービスの閉鎖を行う目的で利用するサービスアドレス情報(あるいはサービス提供部のアドレス情報との組み合わせ)と必ずしも一致するものではない。以下の説明では、サービスアドレス情報および装置アドレス情報の組み合わせを転送先情報として用いる場合、あるいは、装置アドレス情報を予め通信フィルタリング部30が記憶してサービスアドレス情報を転送先情報として用いる場合を例にして説明する。
【0102】
コミュニティ情報管理部501は、サービス情報管理部701からサービス識別子および転送先情報を受信すると、そのサービス識別子と、ステップS204で生成したコミュニティ識別子と、転送先情報とを対応付けて利用サービス情報記憶部504に記憶させる(ステップS212)。コミュニティ情報管理部501は、サービス識別子等とともにサービスの種別も受信したならば、コミュニティ識別子と、サービス識別子と、転送先情報とを対応付け、さらにサービスの種別も対応付けて利用サービス情報記憶部504に記憶させる。
【0103】
また、コミュニティ情報管理部501は、受信したサービス識別子を管理者の端末22に送信する。管理者の端末22は、そのサービス識別子を表示する。管理者は、そのサービス識別子をコミュニティのメンバに知らせる。あるいは、管理者が意図的にメンバに知らせなくとも、例えば、ユーザの属性情報としてメールアドレスをユーザ情報記憶部402に記憶しておき、コミュニティ情報管理部501がメンバのメールアドレスを取得したのち、サービス識別子をメールによって自動送信することもできる。
【0104】
既に説明したように、サービス提供部60が提供可能なサービス種別の一覧情報はサービス提供部情報記憶部703に記憶されており、コミュニティ情報管理部501は、サービス情報管理部701にサービス種別の一覧情報を要求し、サービス情報管理部701がサービス提供部情報記憶部703からサービス種別の一覧情報を読み込み、コミュニティ情報管理部501に送信している。
【0105】
以上の説明では、利用可能なサービスの種別を管理者に選択させる場合を示した。新たなコミュニティで利用可能なサービスを管理者が選択するのではなく、コミュニティで利用可能なサービスが予め固定的に決められていてもよい。例えば、新たに開設されるコミュニティで利用可能なサービスは「掲示板」および「スケジュール共有」の2つだけ等のように予め定められていてもよい。この場合、コミュニティに参加するメンバの選択が行われた後、ステップS202,S203の処理は省略される。ただし、コミュニティの属性(例えば、コミュニティの名称)が端末22に入力され、端末22がそのコミュニティの属性をコミュニティ情報管理部501に送信する処理は省略しなくてもよい。このとき、ステップS207では、固定的に定められている種別のサービス(上記の例では「掲示板」および「スケジュール共有」)の開設をサービス情報管理部701に要求すればよい。
【0106】
管理者にサービスを選択させる場合、新たなコミュニティで利用可能なサービスとして選択されるサービスは複数であってもよい。また、コミュニティ毎に異なるサービスが選択されてもよい。例えば、あるコミュニティは、掲示板とファイル共有を利用するが、別のコミュニティは掲示板とスケジュール共有を利用するようにサービスを選択してもよい。
【0107】
図5は、コミュニティを閉鎖する場合の通信フィルタリングシステムの動作を示すフローチャートである。端末22は、管理者の操作(コミュニティ閉鎖指示の操作)に従って、コミュニティ情報管理部501にコミュニティ情報を要求する。コミュニティ情報管理部501は、この要求を受信するとコミュニティ情報記憶部502に記憶されている全てのコミュニティ情報を読み込み端末22に送信する。端末22は、受信したコミュニティ情報を表示する。コミュニティ情報には、少なくともコミュニティ識別子が含まれる。本例では、コミュニティ識別子と、コミュニティの属性とを対応付けた情報がコミュニティ情報である場合を例としている。管理者は、コミュニティ識別子またはコミュニティの属性(例えば名称)を参照して、閉鎖するコミュニティを選択する。管理者が閉鎖すべきコミュニティを把握しやすいので、コミュニティの属性をコミュニティ情報に含めることが好ましい。端末22は、選択されたコミュニティのコミュニティ識別子をコミュニティ情報管理部501に送信する(ステップS301)。
【0108】
次に、コミュニティ情報管理部501は、端末22から受信したコミュニティ識別子(すなわち、閉鎖対象のコミュニティのコミュニティ識別子)を含む利用サービス情報を利用サービス情報記憶部504から読み込む(ステップS302)。コミュニティ情報管理部501は、読み込んだ利用サービス情報において、コミュニティ識別子と対応付けられているサービス識別子をサービス情報管理部701に送信して、そのサービス識別子が示すサービスの閉鎖をサービス情報管理部701に要求する(ステップS303)。例えば、「serviceID=123,serviceID=456,method=delete」のような情報を送信する。本例において、「123」、「456」は、閉鎖するサービスのサービス識別子であり、「delete」は、サービスを閉鎖することを示す命令である。
【0109】
サービス情報管理部701は、サービス閉鎖の要求を受信すると、サービス提供部情報記憶部703から装置アドレスを読み込む(ステップS304)。さらに、サービス情報管理部701は、コミュニティ情報管理部501から受信したサービス識別子と対応付けてサービス情報記憶部704に記憶されているサービスアドレス情報を読み込む(ステップS305)。例えば、コミュニティ情報管理部501から「123」、「456」というサービス識別子を受信した場合、サービス情報管理部701は、サービス情報記憶部704に記憶されている「serviceID=123:/xxService/id123/,serviceID=456:/xxService/id456/」等の情報を読み込む。本例において、「/xxService/id123/」がサービス識別子「123」に対応するサービスアドレス情報であり、「/xxService/id456/」がサービス識別子「456」に対応するサービスアドレス情報である。なお、サービスアドレス情報がURLのようなサービス固有の情報である場合には、装置アドレスを読み込む必要がないため(装置アドレスをURLに含むため)、ステップS304を省略することもできる。
【0110】
続いて、サービス管理部701は、サービス設定部702に装置アドレス情報、サービスアドレス情報を送り、サービスを閉鎖する要求を行う。例えば、「delete, 12.34.56.78, /xxService/id123/, /xxService/id456/」のような情報をサービス設定部702に送信する。本例において、「delete」は、サービスを閉鎖することを示す命令である。「12.34.56.78」は、装置ドレス情報である。「/xxService/id123/」および「/xxService/id456/」は、サービスアドレス情報である。サービス設定部702は、装置アドレス情報およびサービスアドレス情報に基づいてサービスを閉鎖する(ステップS306)。ステップS306において、サービス設定部702は、装置アドレス情報およびサービスアドレス情報によって特定されるディレクトリを削除したり、サービスを提供するためのプログラムを削除する等の処理によってサービスを閉鎖する。
【0111】
ステップS306におけるサービスの閉鎖が完了すると、サービス管理部701は、閉鎖したサービスの情報をサービス情報記憶部704から削除する(ステップS307)。具体的には、削除したサービスのサービス識別子およびサービスアドレス情報を削除する。サービス識別子と、サービスアドレス情報と、サービスの属性(例えばサービス種別)とが対応付けられてサービス情報記憶部704に記憶されている場合には、サービスの属性も削除する。続いて、サービス管理部701は、コミュニティ情報管理部501にサービス閉鎖を完了した旨を通知(以下、閉鎖完了通知と記す。)する(ステップS308)。
【0112】
コミュニティ情報管理部501は、サービス情報管理部701から閉鎖完了通知を受信すると、利用サービス情報記憶部504とメンバ情報記憶部502とコミュニティ情報記憶部501とから、閉鎖したコミュニティに関連する情報を削除する(ステップS309,S310,S311)。具体的には、以下のように情報を削除する。コミュニティ情報管理部501は、ステップS301において端末22から受信したコミュニティ識別子およびそのコミュニティ識別子に対応付けられたサービス識別子および転送先情報を利用サービス情報記憶部504から削除する(ステップS309)。そのサービス識別子と対応するサービスの種別も記憶されていたならば、その種別も削除する。また、コミュニティ情報管理部501は、ステップS301において端末22から受信したコミュニティ識別子およびそのコミュニティ識別子に対応付けられたユーザ識別子をメンバ情報記憶部503から削除する(ステップS310)。また、コミュニティ情報管理部501は、ステップS301において端末22から受信したコミュニティ識別子およびそのコミュニティ識別子に対応付けられたコミュニティの属性をコミュニティ情報記憶部502から削除する(ステップS311)。
【0113】
図6は、既に開設されているコミュニティが利用するサービス種別を変更する場合の通信フィルタリングシステムの動作を示すフローチャートである。端末22は、管理者の操作(コミュニティのサービス種別変更指示の操作)に従って、コミュニティ情報管理部501にコミュニティ情報を要求する。コミュニティ情報管理部501は、この要求を受信するとコミュニティ情報記憶部502に記憶されている全てのコミュニティ情報を読み込み、端末22に送信する。端末22は、受信したコミュニティ情報を表示する。コミュニティ情報には、少なくともコミュニティ識別子が含まれる。本例では、コミュニティ識別子と、コミュニティの属性とを対応付けた情報がコミュニティ情報である場合を例としている。管理者は、コミュニティ識別子またはコミュニティの属性(例えば名称)を参照して、サービス種別を変更するコミュニティを選択する。端末22は、選択されたコミュニティのコミュニティ識別子をコミュニティ情報管理部501に送信する(ステップS401)。
【0114】
次に、コミュニティ情報管理部501は、端末22から受信したコミュニティ識別子(すなわち、サービス種別の変更対象とされたコミュニティの識別子)を含む利用サービス情報を利用サービス情報記憶部504から読み込む(ステップS402)。コミュニティ情報管理部501は、読み込んだ利用サービス情報において、コミュニティ識別子と対応付けられているサービス識別子をサービス情報管理部701に送信して、そのサービス識別子に対応する種別(サービスの種別)を要求する。サービス情報管理部701は、コミュニティ情報管理部501から受信したサービス識別子に対応するサービス種別をサービス情報記憶部704から読み込み、サービス識別子およびサービスの種別との組み合わせをコミュニティ情報管理部501に送信し、コミュニティ情報管理部501は、そのサービス識別子およびサービスの種別を受信する(ステップS403)。
【0115】
なお、利用サービス情報記憶部504が、コミュニティ識別子と、サービス識別子とを対応付けて記憶し、さらにそのサービス識別子とそのサービス識別子が示すサービスの種別とを対応付けて記憶している場合には、上記のステップS403の処理を行わずに、コミュニティ情報管理部501が、端末22から受信したコミュニティ識別子に対応付けられたサービスの種別を利用サービス情報記憶部504から読み込んでもよい。すなわち、コミュニティ情報管理部501は、サービスの種別をサービス管理部70から取得してもよいし、利用サービス情報記憶部504から取得してもよい。ただし、サービス情報記憶部704または利用サービス情報記憶部504のいずれかに、サービス識別子に対応付けてサービスの種別を記憶させるものとする。
【0116】
また、コミュニティ情報管理部501は、サービス情報管理部701にサービス種別の一覧情報を要求する。サービス情報管理部701は、この要求を受信すると、サービス提供部情報記憶部703からサービス種別の一覧情報を読み込み、コミュニティ情報管理部501に送信する。コミュニティ情報管理部501は、そのサービス種別の一覧情報を受信する(ステップS404)。
【0117】
コミュニティ情報管理部501は、現在コミュニティで利用可能なサービスの種別(すなわち、ステップS403でサービス情報管理部701から受信した種別、あるいは利用サービス情報記憶部504から読み込んだ種別)と、ステップS404で受信したサービス種別の一覧情報を端末22に送信する。端末22は、現在コミュニティで利用可能なサービスの種別、およびサービス種別の一覧情報を表示する。管理者は、表示された現在コミュニティで利用可能なサービスの種別の中から、閉鎖するサービスの種別を選択する。また、管理者は、サービス種別の一覧の中から、ステップS401で選択したコミュニティ用に開設するサービスの種別を選択する。端末22は、閉鎖するサービスの種別および開設するサービスの種別をコミュニティ情報管理部501に送信し、コミュニティ情報管理部501は、閉鎖するサービスの種別および開設するサービスの種別を受信する(ステップS405)。
【0118】
続いて、コミュニティ情報管理部501は、閉鎖するサービスの種別に対応するサービス識別子を特定する。ステップS403の処理によって、サービス識別子およびサービス種別の組み合わせを受信している場合には、その組み合わせの中から、閉鎖するサービスの種別に対応するサービス識別子を特定すればよい。また、利用サービス情報記憶部504にサービス識別子とサービス種別とが対応付けて記憶されている場合には、閉鎖するサービスの種別およびステップS401で受信したコミュニティ識別子に対応するサービス識別子を読み込めばよい。コミュニティ情報管理部501は、閉鎖するサービスの種別に対応するサービス識別子と新たに開設するサービスの種別とを含む利用サービス変更要求をサービス情報管理部701に送信する(ステップS406)。
【0119】
サービス情報管理部701は、利用サービス変更要求を受けると、サービス提供部情報記憶部703から装置アドレスを読み込む(ステップS407)。さらに、サービス情報管理部701は、閉鎖するサービスのサービス識別子と対応付けてサービス情報記憶部704に記憶されているサービスアドレス情報を読み込む(ステップS408)。
【0120】
続いて、サービス管理部701は、サービス設定部702に装置アドレス情報、サービスアドレス情報を(サービスアドレス情報がURLのようなサービス固有の情報である場合には、サービスアドレス情報のみを)送り、サービスを閉鎖する要求を行う。サービス設定部702は、装置アドレス情報およびサービスアドレス情報に基づいて(サービスアドレス情報がURLのようなサービス固有の情報である場合には、サービスアドレス情報のみに基づいて)サービスを閉鎖する(ステップS409)。ステップS409におけるサービスの閉鎖が完了すると、サービス管理部701は、閉鎖したサービスの情報をサービス情報記憶部704から削除する(ステップS410)。具体的には、削除したサービスのサービス識別子およびサービスアドレス情報を削除する。サービス識別子と、サービスアドレス情報と、サービスの属性とが対応付けられてサービス情報記憶部704に記憶されている場合には、サービスの属性も削除する。ステップS407〜S410の動作は、ステップS304〜S307の動作と同様に行えばよい。
【0121】
また、サービス管理部701は、ステップS407で読み込んだ装置アドレスが示す装置に、新たに開設する種別のサービスを開設することをサービス設定部702に要求する。なお、新たに開設する種別は、ステップS406でサービス情報管理部701が受信する利用サービス変更要求に含まれている。サービス設定部702は、サービス情報管理部701からの要求に応じて新たにサービスを開設する(ステップS411)。
【0122】
続いて、サービス設定部702は、サービス識別子およびサービスアドレス情報をサービス情報管理部701に送り、サービス情報管理部701は、そのサービス識別子とサービスアドレス情報とを対応付けてサービス情報記憶部704に記憶させる(ステップS412)。このとき、サービス情報管理部701は、サービス識別子と、サービスアドレス情報と、開設したサービスの種別とを対応付けてサービス情報記憶部704に記憶させてもよい。
【0123】
さらにサービス情報管理部701は、サービスの閉鎖および開設が完了すると(具体的にはステップS412までの動作が完了すると)、コミュニティ情報管理部501にサービス閉鎖を完了した旨と、開設したサービスのサービス識別子および転送先情報をコミュニティ情報管理部501に通知する(ステップS413)。このとき、サービス情報管理部701は、開設したサービスの識別子とともにそのサービスの種別もコミュニティ情報管理部501に通知してもよい。ステップS411〜S413の動作は、ステップS209〜S211の動作と同様である。
【0124】
この通知を受信したコミュニティ情報管理部501は、閉鎖したサービスのサービス識別子および転送先情報を利用サービス情報記憶部504から削除する。また、利用サービス情報記憶部504において、サービス識別子とサービスの種別とが対応付けられていた場合には、閉鎖したサービスのサービス識別子に対応付けられていたサービスの種別も削除する。ただし、サービス識別子に対応付けられているコミュニティ識別子は削除しない。また、コミュニティ情報管理部501は、開設したサービスのサービス識別子および転送先情報を受信すると、そのサービス識別子および転送先情報を、サービス種別の変更対象となったコミュニティのコミュニティ識別子(ステップS401で受信したコミュニティ識別子)に対応付けて利用サービス情報記憶部504に記憶させる(ステップS414)。コミュニティ情報管理部501は、サービス識別子とともにサービスの種別も受信したならば、その種別もサービス識別子に対応付けて利用サービス情報記憶部504に記憶させる。
【0125】
また、コミュニティ情報管理部501は、受信したサービス識別子を管理者の端末22に送信する。管理者の端末22は、そのサービス識別子を表示する。管理者は、そのサービス識別子をコミュニティのメンバに知らせる。あるいは、管理者が意図的にメンバに知らせなくとも、例えば、ユーザの属性情報としてメールアドレスをユーザ情報記憶部402に記憶しておき、コミュニティ情報管理部501がメンバのメールアドレスを取得したのち、サービス識別子をメールによって自動送信することもできる。
【0126】
図7は、外部NW11からサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。まず、端末21がコミュニティのメンバ向けに開設されているサービスを利用するためのリクエストを送信し、フィルタリング部301は外部NW11を介してそのリクエストを受信する(ステップS501)。なお、端末21は、コミュニティのメンバ(以下、利用者と記す。)によって操作される端末である。端末21は、通信フィルタリング部30にリクエストを送信する。
【0127】
なお、端末21は、ユーザ識別子、ユーザ認証情報、サービス識別子を含むリクエストを送信する。例えば、端末21で動作するプログラムにユーザ識別子、ユーザ認証情報、サービス識別子を入力した後リクエストを行い、当該プログラムがリクエストにユーザ識別子、ユーザ認証情報、サービス識別子を含めればよい。
【0128】
フィルタリング部301は、端末リクエストを受信すると、ユーザ認証部302にユーザ認証を要求する。このとき、フィルタリング部301は、リクエストに含まれるユーザ識別子(図2では「ユーザID」として示している。)およびユーザ認証情報(図2では「パスワード」として示している。)をユーザ認証部302に送る。
【0129】
ユーザ認証部302は、ユーザ認証の要求を受けると、ユーザ情報記憶部402に記憶されている各ユーザ情報(ユーザ識別子とユーザ認証情報とを対応付けた情報)を取得する(ステップS502)。続いて、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報と、ステップS502において取得したユーザ情報とを照合してユーザ認証を行う(ステップS503)。具体的には、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ステップS502でユーザ情報記憶部402から取得した各ユーザ情報の中に含まれていればユーザ認証に成功したと判定し、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ステップS502でユーザ情報記憶部402から取得した各ユーザ情報の中に含まれていなければユーザ認証に失敗したと判定する。そして、ユーザ認証部302は、ユーザ認証の結果(ユーザ認証に成功したか失敗したか)をフィルタリング部301に通知する。
【0130】
フィルタリング部301は、ユーザ認証に失敗した旨の通知をユーザ認証部302から受けた場合、ステップS501で端末21から受信したリクエストを破棄する(ステップS508)。
【0131】
ユーザ認証に成功した旨の通知を受けた場合、フィルタリング部301は、さらにリクエストの内容の検証(リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証)をリクエスト内容検証部303に要求する。このとき、フィルタリング部301は、リクエストに含まれるユーザ識別子(図2では「ユーザID」として示している。)およびサービス識別子(図2では「サービスID」として示している。)をリクエスト内容検証部303に送る。
【0132】
リクエスト内容検証部303は、リクエストの内容の検証を要求されると、メンバ情報記憶部503に記憶されたメンバ情報の中から、リクエストに含まれるユーザ識別子に対応付けられているコミュニティ識別子を取得する(ステップS504)。利用者が複数のコミュニティのメンバである場合、その利用者のユーザ識別子に対応するコミュニティ識別子はメンバ情報記憶部503に複数種類記憶されている。このような場合、リクエストに含まれるユーザ識別子に対応付けられている全てのコミュニティ識別子をメンバ情報記憶部503から取得する。
【0133】
次に、リクエスト内容検証部303は、リクエストに含まれるサービス識別子に対応付けられたコミュニティ識別子をサービス情報記憶部504から取得する(ステップS505)。
【0134】
続いて、リクエスト内容検証部303は、ステップS505で取得したコミュニティ識別子が、ステップS504で取得したコミュニティ識別子の中に含まれているか否かを判定する(ステップS506)。なお、ステップS504で取得したコミュニティ識別子が1つしかなく、そのコミュニティ識別子がステップS505で取得したコミュニティ識別子と同一である場合、ステップS505で取得したコミュニティ識別子が、ステップS504で取得したコミュニティ識別子の中に含まれていると判定する。リクエスト内容検証部303は、判定結果をフィルタリング部301に通知する。
【0135】
フィルタリング部301は、ステップS505で取得したコミュニティ識別子が、ステップS504で取得したコミュニティ識別子の中に含まれている場合、受信したリクエストが正規のリクエスト(ユーザの参加するコミュニティに許可されたサービスへのリクエスト)であると判定し、リクエストを指定サービスへ転送する(ステップS507)。このとき、フィルタリング部301は、リクエストに含まれているサービス識別子に対応付けられた転送先情報を、利用サービス情報記憶部504から取得する。フィルタリング部301は、その転送先情報が示すアドレスを宛先として、サービス提供部60にリクエストを転送する。
【0136】
なお、サービス提供部60が単一の装置である場合、フィルタリング部301は、その装置の装置アドレス情報を予め記憶していてもよい。その場合、サービス管理部70からコミュニティ管理部60に送信して利用サービス情報記憶部504に記憶させる転送先情報には装置アドレス情報を含めなくてよい。フィルタリング部301は、リクエストに含まれているサービス識別子に対応付けられた転送先情報(本例では、サービスアドレス情報)と、自身が記憶している装置アドレス情報とによって特定されるアドレスを宛先として、サービス提供部60にリクエストを転送すればよい。
【0137】
フィルタリング部301は、ステップS505で取得したコミュニティ識別子が、ステップS504で取得したコミュニティ識別子の中に含まれていない場合、受信したリクエストが不正なリクエスト(ユーザの参加するコミュニティに許可されていないサービスへのリクエスト)であると判定し、そのリクエストを破棄する(ステップS506)。
【0138】
また、上記の実施の形態では、利用サービス情報記憶部504が転送先情報を記憶する場合を示したが、端末21が転送先情報を含むリクエストを通信フィルタリング部30に送信する場合には、利用サービス情報記憶部504に転送先情報を記憶させなくてもよい。この場合、コミュニティ情報管理部501は、サービス管理部70から受信した転送先情報を端末22に送信すればよい。端末22は、その転送先情報を表示し、管理者が利用者に転送先情報を通知すればよい。なお、転送先情報の一態様として、例えば、サービスの所在を一意に特定するURL等が挙げられる。URLは、例えば、サービス設定部702が作成すればよい。端末21は、利用者によって転送先情報を入力され、その転送先情報をリクエストに含めればよい。そして、フィルタリング部301は、ステップS507において、リクエストに含まれる転送先情報が示すアドレスを宛先として、サービス提供部60にリクエストを転送すればよい。
【0139】
次に、本実施の形態の効果について説明する。本実施の形態では、利用者が内部NWのコミュニティサービスを利用するようにコミュニティを形成したり、あるいは内部NWのコミュニティサービスを利用していたコミュニティを解散(閉鎖)した場合、さらにコミュニティが利用するサービスの種別を変更する場合、管理者自身は、アクセス制御の設定(利用サービス情報やメンバ情報)をあらためて通信フィルタリング部30に設定する必要がない。また、コミュニティ閉鎖時にも、アクセス制御の設定(利用サービス情報やメンバ情報)をあらためて通信フィルタリング部30に設定する必要がない。また、コミュニティが利用するサービスの種別を変更する場合も同様に、アクセス制御の設定(利用サービス情報やメンバ情報)をあらためて通信フィルタリング部30に設定する必要がない。よって、利用者が内部NWのコミュニティサービスを利用するようにコミュニティを形成したり、あるいは内部NWのコミュニティサービスを利用していたコミュニティを解散(閉鎖)した場合、さらにコミュニティが利用するサービスの種別を変更する場合に、管理者があらためてアクセス制御の設定(利用サービス情報やメンバ情報)を変更する必要がないため、管理者の運用コストを増加させることなく、アクセス管理(フィルタリング)を行うことができる。
【0140】
また、利用者が内部NWのコミュニティサービスを利用するようにコミュニティを形成したり、あるいは内部NWのコミュニティサービスを利用していたコミュニティを解散(閉鎖)した場合、さらにコミュニティが利用するサービスの種別を変更する場合に、あらためて管理者がアクセス制御の設定(利用サービス情報やメンバ情報)を変更しなくても、セキュアな領域であるサービス提供部に開設されたサービスへのアクセスのみが自動的に許可される。従って、セキュリティに対する人為的なリスクを生じさせることなく、コミュニティが利用するサービスへのアクセス管理を行うことができる。
【0141】
実施の形態2.
図8は、本発明の第2の実施の形態の例を示すブロック図である。第2の実施の形態では、ユーザ管理部40を複数備える。図8では、通信フィルタリングシステムが2つのユーザ管理部40a,40bを備えた場合を示している。第1の実施の形態と同様の構成要素については、図1と同一の符号を付して説明を省略する。ただし、メンバ情報記憶部503が記憶するメンバ情報は、第1の実施の形態と異なる。また、ユーザ認証部302がユーザ認証時にメンバ情報記憶部503に記憶されるメンバ情報を参照する点で、第1の実施の形態と異なる。メンバ情報記憶部503が記憶する情報およびユーザ認証部3の動作については後述する。
【0142】
ユーザ管理部40aは、ユーザ情報管理部401aとユーザ情報記憶部402aとを備える。ユーザ管理部40bは、ユーザ情報管理部401bとユーザ情報記憶部402bとを備える。ユーザ情報管理部401a,401bは、第1の実施の形態におけるユーザ情報管理部401と同様であり、ユーザ情報記憶部402a,402bは、第1の実施の形態におけるユーザ情報管理部402と同様である。
【0143】
ただし、複数のユーザ情報管理部401a,401bのうち、一部のユーザ情報管理部は管理者の端末22からの管理(具体的には端末22からユーザ情報を受信してユーザ情報記憶部に記憶させる動作)を禁止してもよい。図8に示す例では、ユーザ情報管理部401aは、第1の実施の形態で説明したステップS101と同様に、端末22からユーザ情報を受信し、ユーザ情報記憶部402aに記憶させる。一方、ユーザ情報管理部401bは、端末22からユーザ情報を受信することはなく、端末22が送信したユーザ情報をユーザ情報記憶部402に記憶させることもない。
【0144】
端末22からの管理を禁止するユーザ管理部40bは、例えば、企業の一般的な社員管理システム(社員情報データベース)によって実現される。企業の社員管理システムは、ユーザ情報を記憶するユーザ情報記憶部402bと、ユーザ情報記憶部402bにユーザ情報を記憶させるユーザ情報管理部401bとを備える。ただし、そのような社員管理システムは、本発明の通信フィルタリングシステムだけで用いられるわけではなく、通信フィルタリングシステムの管理者であっても、新たなユーザ情報を社員管理システムに登録する権限を持たない。ユーザ情報管理部401bは、社員管理システムのユーザ情報を更新する特別の権限を有する者の端末(図示せず。)からのユーザ情報を受信して、ユーザ情報記憶部402bに記憶させる。
【0145】
一方、ユーザ管理部40aは、コミュニティのメンバとなるユーザのうち、ユーザ管理部40bにユーザ情報を登録できないユーザのユーザ情報を管理する。例えば、本発明の通信フィルタリングシステムの管理者がユーザA,B,Cの3人をメンバとするコミュニティを開設しようとしていて、ユーザA,Bのユーザ情報は社員管理システム(ユーザ管理部40b)に登録されているが、ユーザCはユーザA,Bとは異なる企業の社員であるためユーザ管理部40bにユーザCのユーザ情報は登録できないとする。この場合、管理者は、ユーザCのユーザ情報をユーザ情報402aに記憶させればよい。このときのユーザ情報管理部401aおよび端末22の動作は、ステップS101の動作と同様である。なお、ユーザA,Bのユーザ情報は、予めユーザ情報記憶部402bに記憶されている。
【0146】
図9は、本実施の形態においてメンバ情報記憶部503が記憶するメンバ情報の例を示す説明図である。本実施の形態におけるメンバ情報は、コミュニティ識別子と、そのコミュニティ識別子が示すコミュニティに属する所属メンバのユーザ識別子とを対応付け、さらにそのユーザ識別子とそのユーザ識別子が登録されているユーザ管理部の識別子とを対応付けた情報である。図9に示す「c111」は、コミュニティ識別子である。また、「u123」および「u456」はそれぞれユーザ識別子である。また、「11.22.33.44」および「55.66.77.88」はそれぞれユーザ管理部の識別子(以下、管理部識別子と記す。)である。本例において、「11.22.33.44」はユーザ管理部40aを示す管理部識別子であり、「55.66.77.88」はユーザ管理部40bを示す管理部識別子である。「u123」は、ユーザ管理部40aに記憶されていたユーザ識別子であり、「11.22.33.44」と対応付けられている。また、「u456」は、ユーザ管理部40bに記憶されていたユーザ識別子であり、「55.66.77.88」と対応付けられている。また、「u123」および「u456」が示すユーザは、「c111」が示すコミュニティのメンバであり、「u123」および「11.22.33.44」と、「u456」および「55.66.77.88」とは、それぞれ「c111」に対応付けられている。
【0147】
ユーザ認証部302は、ユーザ情報を取得する前に、メンバ情報を参照し、ユーザ情報の取得先となるユーザ管理部を特定する。ユーザ認証部302は、ユーザ認証を行うときに、メンバ情報を取得し、リクエストに含まれているユーザ情報に含まれているユーザ識別子に対応する管理部識別子を特定する。そして、ユーザ認証部302は、その管理部識別子が示すユーザ管理部からユーザ情報を取得して、ユーザ認証を行う。
【0148】
次に、本実施の形態の動作について説明する。
本実施の形態では、コミュニティのメンバとなり得るユーザのうち、一部のユーザは予めユーザ情報記憶部402bに記憶されている。通信フィルタリングシステムの管理者は、ユーザ情報記憶部402bにユーザ情報を登録することができないユーザ(ユーザ情報記憶部402bが社員管理システムである場合における社外の者等)のユーザ情報記憶部402bに記憶させる。このときの、ユーザ情報管理部401aおよび端末22の動作は、第1の実施の形態で説明したステップS101における動作と同様である。
【0149】
なお、管理者は、複数のユーザ情報記憶部にユーザ情報が重複して記憶されないように、ユーザ情報を登録する。例えば、ユーザ情報記憶部402bに既にユーザ情報が登録されている場合、そのユーザ情報をユーザ情報記憶部402aに登録しない。また、ユーザ情報記憶部402aには、ユーザ情報記憶部402bにユーザ情報を登録できないユーザのユーザ情報を登録する。
【0150】
新たにコミュニティが開設される場合の動作について説明する。ステップS201(図4参照。)において、コミュニティ情報管理部501は、端末22からコミュニティ登録要求を受信すると、各ユーザ情報記憶部402a,402bそろぞれからユーザ一覧情報を取得し、ユーザ一覧情報を端末22に送信する。このとき、コミュニティ情報管理部501は、ユーザ情報記憶部402aから取得したユーザ一覧情報と、ユーザ情報記憶部402bから取得したユーザ一覧情報とが別々に表示される態様でユーザ一覧情報を端末22に送信してもよい。例えば、ユーザ一覧情報をユーザ情報記憶部毎に分けて表示する画面の画面情報を端末22に送信してもよい。端末22は、コミュニティ情報管理部501からユーザ一覧情報を受信し、ユーザ一覧情報を表示する。この後、通信フィルタリングシステムは、ステップS202〜S205(図4参照。)と同様に動作する。
【0151】
ステップS206において、コミュニティ情報管理部501は、生成したコミュニティ識別子と、端末22から受信したユーザ識別子(すなわち、管理者によってメンバとして選択されたユーザのユーザ識別子)とを対応付けメンバ情報記憶部503に記憶させる。ただし、このとき、コミュニティ情報管理部501は、端末22から受信したユーザ識別子がどのユーザ管理部に記憶されているかを判断し、端末22から受信したユーザ識別子が記憶されているユーザ管理部の管理部識別子をユーザ識別子と対応付け、さらにコミュニティ識別子とも対応付けて、メンバ情報記憶部503に記憶させる。コミュニティ情報管理部501は、端末22から受信したユーザ識別子が、ユーザ情報記憶部402aから取得したユーザ一覧情報に含まれているならば、そのユーザ識別子とユーザ管理部40aの管理部識別子とを対応付けてメンバ情報記憶部503に記憶させればよい。また、端末22から受信したユーザ識別子が、ユーザ情報記憶部402bから取得したユーザ一覧情報に含まれているならば、そのユーザ識別子とユーザ管理部40bの管理部識別子とを対応付けてメンバ情報記憶部503に記憶させればよい。なお、管理部識別子として、例えば、ユーザ管理部のIPアドレスを用いればよい。その後、ステップS207以降の動作を行えばよい。
【0152】
コミュニティを閉鎖する場合の通信フィルタリングシステムの動作は、ステップS301〜S311の動作と同様である。ただし、ステップS310では、コミュニティ識別子およびそのコミュニティ識別子に対応付けられたユーザ識別子と、そのコミュニティ識別子に対応付けられたユーザ識別子および管理部識別子を削除する。コミュニティが利用するサービス種別を変更する場合の通信フィルタリングシステムの動作は、ステップS401〜S414の動作と同様である。
【0153】
図10は、第2の実施の形態においてリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。端末21がコミュニティのメンバ向けに開設されているサービスを利用するためのリクエストを送信し、フィルタリング部301はそのリクエストを受信する(ステップS601)。
【0154】
フィルタリング部301は、リクエスト受信すると、ユーザ認証部302にユーザ認証を要求する。この動作は、第1の実施の形態において、フィルタリング部301がユーザ認証部302にユーザ認証を要求する動作と同様である。
【0155】
ユーザ認証部302は、ユーザ認証の要求を受けると、リクエストに含まれるユーザ識別子と対応付けられた管理部識別子を、メンバ情報記憶部503から取得する(ステップS602)。この管理部識別子は、リクエストを行ったユーザのユーザ情報を記憶しているユーザ情報記憶部を備えたユーザ管理部を示している。ユーザ認証部302は、その管理部識別子が示すユーザ管理部のユーザ情報記憶部から各ユーザ情報(ユーザ識別子とユーザ認証情報とを対応付けた情報)を取得する(ステップS603)。ステップS603の後、第1の実施の形態で示したステップS503以降の動作を行えばよい。
【0156】
次に、本実施の形態の効果について説明する。本実施の形態では、複数のユーザ管理部40a,40bを設けるので、既存のデータベースシステム(既存の社員管理システム等の社員情報データベースシステム)をユーザ管理部として用いることができる。その結果、そのデータベースにユーザ情報を登録できないユーザ(例えば社外ユーザ)のユーザ情報はユーザ管理部40aに登録しつつ、既存のデータベースを利用して通信フィルタリングシステムを実現することができる。既存のデータベースにユーザ情報が記憶されているユーザに関しては、新規にユーザ情報の登録を行わなくてよいので、運用コストや運用負荷を軽減することができる。
【0157】
また、本実施の形態では、複数のユーザ管理部40a,40bを設けるので、複数の組織の既存のデータベースをユーザ管理装置として用いることもできる。例えば、組織Aの既存のユーザ管理データベースと、組織Bの既存のユーザ管理データベースとを利用して通信フィルタリングシステムを実現することができる。
【0158】
実施の形態3.
図11は、本発明の第3の実施の形態の例を示すブロック図である。第1の実施の形態と同様の構成要素については、図1と同一の符号を付し説明を省略する。ただし、本実施の形態では、外部NW11と内部NW12の間に設けられる通信フィルタリング部301が、ユーザ管理部40とコミュニティ管理部50とを備える。
【0159】
また、本実施の形態では、外部NW11に端末23が接続されている。端末23は、通信フィルタリングシステムの管理者が使用する端末である。管理者は、第1の実施の形態で示したように、内部NW12に接続された端末22からユーザ情報の登録、コミュニティの開設、コミュニティの閉鎖、コミュニティが利用可能なサービスの変更を指示する。また、管理者は、端末22だけでなく、端末23から外部NW11を介して、同様の指示を行ってもよい。
【0160】
ユーザ管理部40は、ユーザ情報管理部401とユーザ情報記憶部402に加え、さらにコミュニティ管理者認証部403を備える。コミュニティ管理者認証部403は、端末22や端末23からユーザ情報の登録、コミュニティの開設、コミュニティの閉鎖、コミュニティが利用可能なサービスの変更の要求を受ける前に、端末23等を使用する管理者のユーザ識別子およびユーザ認証情報を受信し、ユーザ情報記憶部402に記憶されているユーザ情報を照合して、管理者のユーザ認証を行う。
【0161】
端末23や端末22がユーザ情報の登録等を要求する場合、端末23や端末22は管理者のユーザ識別子およびユーザ認証情報をユーザ情報管理部401に送信する。ユーザ情報管理部401は、そのユーザ識別子およびユーザ認証情報をコミュニティ管理者認証部403に送り、管理者のユーザ認証を要求する。
【0162】
また、端末23や端末22がコミュニティの開設、コミュニティの閉鎖、コミュニティが利用可能なサービスの変更等を要求する場合、端末23や端末22は管理者のユーザ識別子およびユーザ認証情報をコミュニティ情報管理部501に送信する。コミュニティ情報管理部501は、そのユーザ識別子およびユーザ認証情報をコミュニティ管理者認証部403に送り、管理者のユーザ認証を要求する。
【0163】
端末23は、特定の端末に限定されない。外部NW11に管理者の端末として複数の端末23が設置され、複数の端末23が、コミュニティ管理部50およびユーザ管理部40に指示を送信できる構成としてもよい。端末23は、外部NW11を介してユーザ情報管理部401およびコミュニティ情報管理部501にアクセスできるように構成されている。
【0164】
また、端末21および端末23は、直接内部NW12へアクセスできないが、通信フィルタリング部30は、少なくともサービス提供部60、サービス管理部70にアクセスできるように構成されている。
【0165】
図12は、ユーザ情報記憶部402が記憶する管理者のユーザ情報の例を示す説明図である。ユーザ情報記憶部402は、管理者(複数であってもよい。)が固定的に決まっている場合には、例えば、その管理者のユーザ識別子と、管理者のユーザ認証情報(例えば、パスワード、指紋情報、あるいは顔写真情報等)とを予めユーザ情報管理部402に記憶させておく。図12(a)は、このような管理者のユーザ情報の例を示す。図12(a)に示す「u987」および「u654」は、管理者のユーザ識別子であり、「xxx」および「yyy」は、それぞれ管理者「u987」と管理者「u654」のユーザ認証情報(ここではパスワード)である。ただし、ユーザ情報記憶部402は、このような管理者のユーザ情報を、利用者のユーザ情報(ステップS503のユーザ認証で用いるユーザ情報)と区別して記憶する。
【0166】
また、ユーザ情報記憶部402は、利用者のユーザ情報(ステップS503のユーザ認証で用いるユーザ情報)と、管理者のユーザ情報とを合わせて記憶してもよい。図12(b)は、この場合のユーザ情報の例を示す。図12(b)に示すように、利用者のユーザ情報と管理者のユーザ情報とを合わせて記憶する場合、ユーザ識別子およびユーザ認証情報に対応させて、そのユーザ識別子が示すユーザが管理者であるか否かを示す情報も記憶する。図12(b)に例示する「true」は、ユーザ識別子が示すユーザが管理者であることを示す。また、図12(b)に例示する「false」は、ユーザ識別子が示すユーザが管理者でないことを示す。
【0167】
図12(b)に例示するユーザ情報をユーザ情報記憶部402に登録する場合、ステップS101(図3参照。)において、管理者の端末22や端末23は、管理者の操作によって、管理者のユーザ識別子およびユーザ認証情報の他に、そのユーザ識別子が示すユーザが管理者であるか否かを示す情報もユーザ情報管理部401に送信する。ユーザ情報管理部401は、管理者のユーザ識別子と、ユーザ認証情報と、ユーザが管理者であるか否かを示す情報(図12(b)に示す例では「true」または「false」)とを対応付けてユーザ情報記憶部402に記憶させればよい。
【0168】
図12(b)に例示するように、ユーザが管理者であるか否かを示す情報とともにユーザ識別子およびユーザ認証情報とを記憶させておけば、ユーザが管理者であるか否かを示す情報を変更することによって、利用者に管理者権限を与えることができる。例えば、「false」を「true」に変更することによって、利用者に管理者権限を与えることができる。
【0169】
次に、本実施の形態の動作について説明する。また、以下の説明では、端末23が各種要求(ユーザ情報の登録要求等)を送信する場合を例にして説明するが、端末22が各種要求を送信する場合でも同様である。
【0170】
図13は、ユーザ情報の登録の前に行う管理者のユーザ認証を示すフローチャートである。コミュニティ管理者認証部403は、ユーザ管理部40がユーザ情報をユーザ情報記憶部402に記憶させる前に、管理者のユーザ認証を行う(ステップS701)。
【0171】
ステップS701の動作は、具体的には以下のようになる。端末23は、ユーザ情報の登録等を要求する場合、管理者のユーザ識別子およびユーザ認証情報をユーザ情報管理部401に送信する。ユーザ情報管理部401はそのユーザ識別子およびユーザ認証情報をコミュニティ管理者認証部403に送る。
【0172】
コミュニティ管理者認証部403は、ユーザ情報記憶部402から管理者のユーザ情報を読み込む。ユーザ情報記憶部402が、図12(a)に例示する管理者のユーザ情報を、利用者のユーザ情報と区別して記憶している場合、コミュニティ管理者認証部403は、その管理者のユーザ情報をユーザ情報記憶部402から読み込む。そして、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報と、ユーザ情報記憶部402から読み込んだユーザ情報とを照合してユーザ認証を行う。コミュニティ管理者認証部403は、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ユーザ情報記憶部402から読み込んだ管理者のユーザ情報に含まれていれば、管理者のユーザ認証に成功したと判定する。また、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ユーザ情報記憶部402から読み込んだ管理者のユーザ情報に含まれていなければ、コミュニティ管理者認証部403は管理者のユーザ認証に失敗したと判定する。
【0173】
また、ユーザ情報記憶部402が、図12(b)に例示するように管理者のユーザ情報および利用者のユーザ情報を合わせて記憶している場合には、コミュニティ管理者認証部403は、ユーザ情報記憶部402に記憶されている各ユーザ情報を読み込む。そして、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報と、ユーザ情報記憶部402から読み込んだユーザ情報とを照合してユーザ認証を行う。コミュニティ管理者認証部403は、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ユーザ情報記憶部402から読み込んだ各ユーザ情報の中に含まれていて、かつ、ユーザが管理者であることを示す情報(例えば「true」)がそのユーザ識別子に対応付けられているならば、管理者のユーザ認証に成功したと判定する。また、ユーザ情報管理部401から送られたユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ユーザ情報記憶部402から読み込んだ各ユーザ情報の中に含まれていなかったり、あるいは、含まれていたとしても、ユーザが管理者が管理者でないことを示す情報(例えば「false」)がそのユーザ識別子に対応付けられているならば、管理者のユーザ認証に失敗したと判定する。
【0174】
ユーザ情報管理部401は、ステップS701においてユーザ認証に成功したと判定された場合、ユーザ情報の登録を許可する。この場合、ステップS701の後、ステップS101(図3参照。)と同様の動作を行う。
【0175】
一方、ユーザ情報管理部401は、ステップS701においてユーザ認証に失敗したと判定された場合、ステップS101の動作を行わずに、そのまま動作を終了する。
【0176】
図14は、コミュニティ開設の前に行う管理者のユーザ認証を示すフローチャートである。コミュニティ管理者認証部403は、ステップS201(図4参照。)の動作の前に管理者のユーザ認証を行う(ステップS801)。すなわち、端末23は、コミュニティ開設をコミュニティ情報管理部501に要求する場合、管理者のユーザ識別子およびユーザ認証情報をコミュニティ情報管理部501に送信する。コミュニティ情報管理部501は、そのユーザ識別子およびユーザ認証情報をコミュニティ管理者認証部403に送る。
【0177】
コミュニティ情報管理部501からユーザ識別子およびユーザ認証情報を受信したコミュニティ管理者認証部403は、ステップS701と同様に管理者の認証を行う。
【0178】
コミュニティ情報管理部501は、ステップS801においてユーザ認証に成功したと判定された場合、コミュニティの開設を許可する。この場合、ステップS801の後、ステップS201以降(図4参照。)と同様の動作を行う。
【0179】
一方、コミュニティ情報管理部501は、ステップS801においてユーザ認証に失敗したと判定された場合、ステップS201以降の動作を行わずに、そのまま動作を終了する。
【0180】
図15は、コミュニティ閉鎖の前に行う管理者のユーザ認証を示すフローチャートである。コミュニティ管理者認証部403は、ステップS301(図5参照。)の動作の前に管理者のユーザ認証を行う(ステップS901)。ステップS901の動作はステップS801と同様である。
【0181】
コミュニティ情報管理部501は、ステップS901においてユーザ認証に成功したと判定された場合、コミュニティの閉鎖を許可する。この場合、ステップS901の後、ステップS301以降(図5参照。)と同様の動作を行う。
【0182】
一方、コミュニティ情報管理部501は、ステップS901においてユーザ認証に失敗したと判定された場合、ステップS301以降の動作を行わずに、そのまま動作を終了する。
【0183】
図16は、コミュニティの利用サービス種別の変更の前に行う管理者のユーザ認証を示すフローチャートである。コミュニティ管理者認証部403は、ステップS401(図6参照。)の動作の前に管理者のユーザ認証を行う(ステップS1001)。ステップS1001の動作はステップS801,S901と同様である。
【0184】
コミュニティ情報管理部501は、ステップS1001においてユーザ認証に成功したと判定された場合、サービス種別の変更を許可する。この場合、ステップS1001の後、ステップS401以降(図6参照。)と同様の動作を行う。
【0185】
一方、コミュニティ情報管理部501は、ステップS1001においてユーザ認証に失敗したと判定された場合、ステップS401以降の動作を行わずに、そのまま動作を終了する。
【0186】
また、通信フィルタリング部30が端末21からリクエストを受信した場合のフィルタリング部301、ユーザ認証部302、リクエスト内容検証部303動作は、第1の実施の形態と同様である。
【0187】
次に、本実施の形態の効果について説明する。本実施の形態では、ユーザ管理部40およびコミュニティ管理部50に外部NW11から端末23がアクセスできるようにし、ユーザ管理およびコミュニティ管理を行う際にコミュニティ管理者であることの認証を行うようにすることで、外部NW11からコミュニティ管理者権限のあるユーザであれば、ユーザ情報とコミュニティ情報を管理することができるようになる。
【0188】
実施の形態4.
図17は、本発明の第4の実施の形態の例を示すブロック図である。第1の実施の形態と同様の構成要素については、図1と同一の符号を付し説明を省略する。本実施の形態では、通信フィルタリング部30が、フィルタリング部301、ユーザ認証部302、リクエスト内容検証部303に加えて、セッション情報管理部305と、セッション情報記憶部306とを備える。他の構成要素は、第1の実施の形態と同様である。
【0189】
セッション情報管理部305は、端末21のセッションを管理する。ここでは、端末21からリクエストを受信してユーザ認証を行った後の端末21と通信フィルタリングシステムとの通信をセッションと記す。セッション情報管理部305によるセッションの管理とは、具体的には以下の動作である。セッション情報管理部305は、ユーザ識別子およびユーザ認証情報によるユーザ認証に成功した後に、新たにセッション情報を発行し、セッション情報記憶部306に記憶させる。続いて、セッション情報が付加されたリクエストを通信フィルタリング部30が受信したときに、セッション情報管理部305は、セッション情報記憶部306に記憶されたセッション情報を参照し、リクエストに付加されたセッション情報と照合する。この動作によって、ユーザ識別子およびユーザ認証情報によるユーザ認証を省略することができる。セッション情報管理部305は、必要に応じて、セッション情報記憶部306に記憶されたセッション情報を変更したり、削除したりしてもよい。
【0190】
図18は、セッション情報の例を示す説明図である。セッション情報は、セッション識別子(セッションID)と、ランダムに生成される文字列(図18に示す例では「x1y2z3abc 」)とを対応付けた情報である。セッション識別子は、ユーザ認証に成功した後の端末21と通信フィルタリングシステムとの間の通信を識別する識別情報である。すなわち、セッション情報は、成功したと判定されたユーザ認証と対応するデータである。セッション情報管理部305は、ユーザ識別子およびユーザ認証情報を用いたユーザ認証部302によるユーザ認証に成功する毎に、例えば、シーケンシャルな値としてセッション識別子を定めればよい。例えば、あるリクエストについてユーザ認証部302によるユーザ認証に成功した場合、セッションIDを「101」と定めたとする。続いて、例えば他の端末からの他のリクエストについてユーザ認証部302によるユーザ認証に成功した場合、セッション識別子を「102」のように定めればよい。
【0191】
また、セッション情報管理部305は、ランダムで予測不能な文字列として、セッション識別子を対応付ける文字列を生成する。また、このランダムな文字列を一意になるように生成すれば、この文字列自体をセッション識別子として用いてもよい。
【0192】
セッション管理部305は、セッション情報が付加されていないリクエストに対してユーザ認証(ユーザ識別子およびユーザ認証情報を用いたユーザ認証)に成功したならば、新たにセッション情報を生成し、セッション情報記憶部306に記憶させる。また、セッション管理部305は、そのセッション情報を端末21に送信する。その後、端末21からセッション情報が付加されたリクエストを受信した場合には、そのセッション情報と、セッション情報記憶部306に記憶させたセッション情報とを照合する。そして、セッション情報記憶部306に記憶されたセッション情報の中に、リクエストに付加されたセッション情報が含まれていれば、ユーザ認証部302によるユーザ認証を行わなくてもユーザ認証に成功した場合と同様に次の動作を行う。
【0193】
セッション情報記憶部306は、セッション情報を記憶する。セッション情報記憶部306に記憶されたセッション情報は、ユーザ認証部302によるユーザ認証に成功した結果、発行(生成)されるセッション情報であるので、正規のセッション情報である。
【0194】
図19は、本実施の形態において端末21がリクエストに付加する情報の例を示す説明図である。ただし、図19では、端末21がセッション情報を受信し、リクエストにセッション情報を付加する場合の例を示している。図19に示すように、端末21は、通信フィルタリング部30に送信するリクエストに、セッション情報、サービスID(すなわちサービス識別子)、およびユーザ識別子を付加し、そのリクエストを送信する。端末21が通信フィルタリング部30からセッション情報を受信するのは、通信フィルタリング部30においてユーザ認証に成功した場合であり、また、リクエストにセッション情報を付加した場合にはユーザ認証を省略することができるので、リクエストにセッション情報を付加する場合には、ユーザ認証情報をリクエストに付加する必要はない。なお、ユーザ認証に成功した後であっても、後述のステップS1104の処理を実行可能とするために、リクエストにユーザ識別子を付加する。ただし、端末21が最初に通信フィルタリング部30に対してリクエストを送信するときにはセッション情報は通知されていないので、その場合には、端末21はリクエストにセッション情報を付加しない。また、この場合には、通信フィルタリング部30においてユーザ認証を行う必要があるので、リクエストにユーザ認証情報を付加する。すなわち、端末21が最初に通信フィルタリング部30に対してリクエストを送信するときには、リクエストにユーザ識別子、ユーザ認証情報、およびサービス識別子を付加し(例えば、図2参照。)、そのリクエストを送信する。なお、図2に示すユーザID、パスワード、サービスIDは、それぞれユーザ識別子、ユーザ認証情報、サービス識別子である。
【0195】
本実施の形態では、ユーザ登録時の動作は、第1の実施の形態と同様である(図3参照。)。また、コミュニティ開設時の動作も、第1の実施の形態と同様である(図4参照。)。コミュニティ閉鎖時の動作も、第1の実施の形態と同様である(図5参照。)。コミュニティが利用するサービス種別変更時の動作も、第1の実施の形態と同様である(図6参照。)。
【0196】
図20は、外部NW11からサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。まず、端末21がコミュニティのメンバ向けに開設されているサービスを利用するためのリクエストを送信し、フィルタリング部301は外部NW11を介してそのリクエストを受信する(ステップS1101)。端末21は、通信フィルタリング部30にリクエストを送信する。
【0197】
フィルタリング部301は、端末21からリクエストを受信すると、そのリクエストにセッション情報が付加されているか否かを確認する(ステップS1102)。
【0198】
リクエストにセッション情報が付加されている場合(ステップS1102のYES)、フィルタリング部30は、そのセッション情報をセッション情報管理部305に送り、そのセッション情報が正規のセッション情報であるかの確認をセッション情報管理部305に要求する。セッション情報管理部305は、リクエストに付加されていたセッション情報と一致するセッション情報が、セッション情報記憶部306に記憶されているセッション情報の中に含まれていれば、リクエストに付加されていたセッション情報は正規のセッション情報であると判定し、リクエストに付加されていたセッション情報と一致するセッション情報が、セッション情報記憶部306に記憶されているセッション情報の中に含まれていなければ、リクエストに付加されていたセッション情報は正規のセッション情報ではないと判定する(ステップS1103)。
【0199】
ステップS1103でセッション情報が正規のセッション情報ではないと判定された場合(ステップS1103のN0)、フィルタリング部301は、ステップS1101で受信したリクエストを破棄する(ステップS1111)。ステップS1103でセッション情報が正規のセッション情報であると判定された場合(ステップS1103のYES)、フィルタリング部301は、さらにリクエストの内容の検証(リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証)をリクエスト内容検証部303に要求する。このとき、フィルタリング部301は、リクエストに含まれるユーザ識別子およびサービス識別子をリクエスト内容検証部303に送る。
【0200】
そして、リクエスト内容検証部303は、メンバ情報記憶部503に記憶されたメンバ情報の中から、リクエストに含まれるユーザ識別子に対応付けられているコミュニティ識別子を取得する(ステップS1104)。利用者が複数のコミュニティのメンバである場合、その利用者のユーザ識別子に対応するコミュニティ識別子はメンバ情報記憶部503に複数種類記憶されている。このような場合、リクエストに含まれるユーザ識別子に対応付けられている全てのコミュニティ識別子をメンバ情報記憶部503から取得する。
【0201】
次に、リクエスト内容検証部303は、リクエストに含まれるサービス識別子に対応付けられたコミュニティ識別子をサービス情報記憶部504から取得する(ステップS1105)。
【0202】
続いて、リクエスト内容検証部303は、ステップS1105で取得したコミュニティ識別子が、ステップS1104で取得したコミュニティ識別子の中に含まれているか否かを判定する(ステップS1106)。なお、ステップS1104で取得したコミュニティ識別子が1つしかなく、そのコミュニティ識別子がステップS1105で取得したコミュニティ識別子と同一である場合、ステップS1105で取得したコミュニティ識別子が、ステップS1104で取得したコミュニティ識別子の中に含まれていると判定する。リクエスト内容検証部303は、判定結果をフィルタリング部301に通知する。
【0203】
ステップS1104〜S1106の動作は、第1の実施の形態におけるステップS504〜S506と同様である。
【0204】
ステップS1105で取得したコミュニティ識別子がステップS1104で取得したコミュニティ識別子の中に含まれている場合(ステップS1106のYES)、フィルタリング部301は、リクエストが正規のリクエスト(すなわち、ユーザが参加するコミュニティに許可されたサービスへのリクエスト)であると判定し、リクエストを指定サービスへ転送する(ステップS1107)。また、ステップS1105で取得したコミュニティ識別子がステップS1104で取得したコミュニティ識別子の中に含まれていない場合(ステップS1106のNO)、受信したリクエストが不正なリクエスト(ユーザの参加するコミュニティに許可されていないサービスへのリクエスト)であると判定し、そのリクエストを破棄する(ステップS1111)。
【0205】
なお、ステップS1107での転送処理は、第1の実施の形態と同様に行えばよい。例えば、フィルタリング部301は、リクエストに含まれているサービス識別子に対応付けられた転送先情報を利用サービス情報記憶部504から取得し、その転送先情報が示すアドレスを宛先として、サービス提供部60にリクエストを転送すればよい。
【0206】
また、第1の実施の形態で説明したように、サービス提供部60が単一の装置である場合、フィルタリング部301は、その装置の装置アドレス情報を予め記憶していてもよい。その場合、サービス管理部70からコミュニティ管理部60に送信して利用サービス情報記憶部504に記憶させる転送先情報には装置アドレス情報を含めなくてよい。そして、フィルタリング部301は、リクエストに含まれているサービス識別子に対応付けられた転送先情報(本例では、サービスアドレス情報)と、自身が記憶している装置アドレス情報とによって特定されるアドレスを宛先として、サービス提供部60にリクエストを転送すればよい。
【0207】
また、端末21がリクエストに転送先情報を含めた場合には、フィルタリング部301は、その転送先情報が示すアドレスを宛先として、サービス提供部60にリクエストを転送すればよい。
【0208】
また、ステップS1102において、リクエストにセッション情報が付加されていない場合には(ステップS1102のNO)、フィルタリング部301は、ユーザ認証部302にユーザ認証を要求する。このとき、フィルタリング部301は、リクエストに含まれるユーザ識別子およびユーザ認証情報をユーザ認証部302に送る。ユーザ認証部302は、ユーザ認証の要求を受けると、ユーザ情報記憶部402に記憶されている各ユーザ情報(ユーザ識別子とユーザ認証情報とを対応付けた情報)を取得する(ステップS1108)。
【0209】
続いて、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報と、ステップS1108において取得したユーザ情報とを照合してユーザ認証を行う(ステップS1109)。具体的には、ユーザ認証部302は、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ステップS1103でユーザ情報記憶部402から取得した各ユーザ情報の中に含まれていればユーザ認証に成功したと判定し、リクエストに含まれるユーザ識別子およびユーザ認証情報の組み合わせと一致するユーザ情報が、ステップS1108でユーザ情報記憶部402から取得した各ユーザ情報の中に含まれていなければユーザ認証に失敗したと判定する。そして、ユーザ認証部302は、ユーザ認証の結果(ユーザ認証に成功したか失敗したか)をフィルタリング部301に通知する。
【0210】
フィルタリング部301は、ユーザ認証に失敗した場合、端末21からのリクエストを破棄する(ステップS1111)。また、ユーザ認証に成功した場合、フィルタリング部301は、セッション情報管理部305に新規にセッション情報の生成を要求する。セッション情報管理部305は、一意のセッション識別子およびランダムで予測不能な文字列を生成する。このセッション識別子および文字列の組み合わせがセッション情報である。なお、既に説明したように、生成する文字列が一意になるようにすれば、文字列のみを生成しその文字列をセッション識別子として用いてもよい。セッション管理部305は、生成したセッション情報(セッション識別子および文字列)をセッション情報記憶部306に記憶させ、また、そのセッション情報を端末21に送信する(ステップS1110)。
【0211】
セッション情報を受信した端末21は、リクエストにそのセッション情報を付加して、再度リクエストを通信フィルタリング部30に送信する。例えば、端末21は、セッション情報をクッキー(Cookie)の態様でリクエストに付加してもよい。このセッション情報が付加されたリクエストを受信すると(ステップS1101)、通信フィルタリング部30は、ステップS1102,S1103,S1104〜S1106の処理を行う。そして、ステップS1105で取得したコミュニティ識別子がステップS1104で取得したコミュニティ識別子の中に含まれている場合(ステップS1106のYES)、そのリクエストはサービスに転送される。
【0212】
本実施の形態によれば、リクエストに付加されたセッション情報と、セッション情報記憶装置306に記憶されるセッション情報との照合を行うので、ユーザ識別子およびユーザ認証情報とを用いたユーザ認証をリクエスト受信時に最初に行った後は省略することが可能となる。すなわち、同一ユーザの端末からのリクエスト毎に毎回ユーザ認証を行う必要がなくなるので、通信フィルタリング部30の負荷を軽減することができる。
【0213】
次に、第4の実施の形態の変形例について説明する。本変形例においても、ユーザ登録時、コミュニティ開設時、コミュニティ閉鎖時、およびコミュニティが利用するサービス種別変更時の動作は、第1の実施の形態と同様である。以下の変形例では、上述のセッション情報を第1のセッション情報と記す。また、以下に示す変形例では、第1のセッション情報とは異なる第2のセッション情報も用いる。第2のセッション情報におけるセッションとは、あるサービスの要求以降における、そのサービスに関する通信を意味する。第2のセッション情報は、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると検証された後の端末21と通信フィルタリングシステムとの間の通信を識別する識別情報である。すなわち、第2のセッション情報は、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるという判定に対応するデータである。図21は、セッション情報記憶部306に記憶される第2のセッション情報とサービス識別子とを対応付けた情報の例を示す説明図である。第2のセッション情報は、セッション識別子(セッションID)と、ランダムに生成される文字列(図21に示す例では「qwertyuio 」)とを対応付けた情報である。
【0214】
セッション情報管理部305は、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると検証された場合に第2のセッション情報を生成する。セッション情報管理部305は、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定すると、第2のセッション情報のセッション識別子を定める。第2のセッション情報のセッション識別子を定めるときには、既存の第2のセッション情報のセッション識別子と一致しないように一意な値として定める。例えば、セッション識別子を定める毎に、セッション識別子の値を順番に増加させればよい。なお、第2のセッション情報の文字列については、セッション情報管理部305は、第1のセッション情報の文字列と同様にランダムで予測不能な文字列として作成すればよい。
【0215】
また、本変形例において、第2のセッション情報は、リクエストに付加されたサービス識別子(図21に示す例では「sv11」)と対応付けてセッション情報記憶部306に記憶される。
【0216】
また、第1のセッション情報と第2のセッション情報とを区別するための情報を、第1のセッション情報および第2のセッション情報に含める。例えば、図18に例示する第1のセッション情報と、図21に例示する第2のセッション情報とでは、セッション識別子の最上位の桁を「1」とするか「2」とするかによって区別している。すなわち、セッション識別子の最上位の桁が「1」であれば、そのセッション識別子を含むセッション情報は第1のセッション情報である。また、セッション識別子の最上位の桁が「2」であれば、そのセッション識別子を含むセッション情報は第2のセッション情報である。また、このように桁の値で区別するのではなく、第1のセッション情報であることを示す情報(例えば、「Type=1」等の情報)を第1のセッション情報に付加して、第1のセッション情報を生成し、第2のセッション情報であることを示す情報(例えば、「Type=2 」等の情報)を第2のセッション情報に付加して、第2のセッション情報を生成してもよい。
【0217】
第1のセッション情報は、ユーザ認証の省略のために用いられる。すなわち端末21は、セッション情報が通知されていない初回のリクエスト送信時にはセッション情報をリクエストに付加せず、その結果、ユーザ認証部302によるユーザ認証が行われる。その場合、新たにセッション情報が生成され、端末21に送信される。端末21は、このセッション情報をリクエストに付加することによって、端末21からの2回目の以降のリクエスト送信時ではユーザ認証部302によるユーザ認証は省略される。以上の点は、第4の実施の形態で述べたとおりである。
【0218】
第2のセッション情報は、一旦、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると検証された後、同様の検証を省略するために用いられる。
【0219】
図22は、第4の実施の形態の変形例において端末21が送信するリクエストに付加される情報の例を示す説明図である。ただし、図22では、端末21が第1のセッション情報や第2のセッション情報を受信し、リクエストに第1のセッション情報および第2のセッション情報を付加する場合の例を示している。図22に示すように、端末21は、通信フィルタリング部30に送信するリクエストに、第1のセッション情報、第2のセッション情報、サービスID(すなわちサービス識別子)、およびユーザ識別子を付加し、そのリクエストを送信する。端末21が通信フィルタリング部30から第1のセッション情報を受信するのは、通信フィルタリング部30においてユーザ認証に成功した場合であり、また、リクエストに第1のセッション情報を付加した場合にはユーザ認証を省略することができるので、リクエストに第1のセッション情報を付加する場合には、ユーザ認証情報をリクエストに付加する必要はない。なお、ユーザ認証に成功した後であっても、後述のステップS1211の処理を実行可能とするために、リクエストにユーザ識別子を付加する。ただし、端末21が最初に通信フィルタリング部30に対してリクエストを送信するときには第1のセッション情報および第2のセッション情報は、通知されていないので、第1のセッション情報および第2のセッション情報をリクエストに付加しない。また、この場合には、通信フィルタリング部30においてユーザ認証を行う必要があるので、リクエストにユーザ認証情報を付加する。すなわち、端末21が最初に通信フィルタリング部30に対してリクエストを送信するときには、リクエストにユーザ識別子、ユーザ認証情報、およびサービス識別子を付加し(例えば、図2参照。)、そのリクエストを送信する。その後、第1のセッション情報が通信フィルタリング部30から通知されると、端末21は第1のセッション情報も付加したリクエストを通信フィルタリング部30に送信する。さらにその後、第2のセッション情報が通信フィルタリング部30から通知されると、端末21はさらに第2のセッション情報も付加したリクエストを通信フィルタリング部30に送信する。
【0220】
本変形例において、セッション管理部305は、上述の第4の実施の形態と同様に、ユーザ認証に成功したならば第1のセッション情報を生成してセッション情報記憶部306に記憶させる。そして、セッション管理部305は、その第1のセッション情報を端末21に送信する。
【0221】
また、セッション管理部305は、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると検証された場合に、第2のセッション情報を生成し、リクエストに付加されたサービス識別子と対応付けてセッション情報記憶部306に記憶させる。そして、セッション管理部305は、その第2のセッション情報を端末21に送信する。なお、図20に示すフローチャートでは、ステップS1104〜S1106の処理が、リクエストがユーザに参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証に相当する。本変形例のフローチャートにも同様の処理が含まれ(後述する図23のステップS1211〜S1213)、第2のセッション情報によりこの処理を省略することが可能となる。
【0222】
セッション情報記憶部306は、第1のセッション情報を記憶する。また、第2のセッション情報とサービス識別子とを対応付けて記憶する。すなわち、セッション情報記憶部306は、第2のセッション情報とサービス識別子との組み合わせを記憶する。
【0223】
図23は、第4の実施の形態の変形例において、外部NW11からサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。ただし、リクエストを受信してリクエストに第1のセッション情報が付加されてるか否かを確認する処理(ステップS1201,1202)、および第1のセッション情報が正規のセッション情報であるか否かを判定する処理(ステップS1203)は、それぞれ第4の実施の形態におけるステップS1101,S1102,S1103(図20参照。)と同様であるので説明を省略する。また、リクエストにセッション情報が付加されていない場合におけるユーザ認証までの処理(ステップS1207,S1208)、およびユーザ認証後にリクエストを破棄したり(ステップS1209)、第1のセッション情報を生成したりする処理(S1210)は、それぞれ、第4の実施の形態におけるステップS1108,S1109,S1111,S1110(図20参照。)と同様であるので説明を省略する。なお、既に述べたように、第4の実施の形態におけるセッション情報を、本変形例では第1のセッション情報と記している。
【0224】
ステップS1203で第1のセッション情報が正規の第1のセッション情報ではないと判定された場合(ステップS1203のNO)、フィルタリング部301は、ステップS1201で受信したリクエストを破棄する(ステップS1209)。ステップS1203で第1のセッション情報が正規の第1のセッション情報であると判定された場合(ステップS1203のYES)、フィルタリング部301は、受信したリクエストに第2のセッション情報が付加されているか否かの確認を行う(ステップS1204)。例えば、既に例示した態様で第1のセッション情報と第2のセッション情報とを区別するための情報がセッション情報に付加されているとする。この場合、ステップS1204では、最上位等の桁が「2」等の第2のセッション情報を表す値になっているセッション識別子を含むセッション情報がリクエストに付加されているか否か等を確認すればよい。あるいは、「Type=2」等の、第2のセッション情報であることを示す情報が付加されたセッション情報がリクエストに付加されているか等を確認してもよい。なお、第1のセッション情報が付加されているか否かの確認も同様である。
【0225】
リクエストに第2のセッション情報が付加されている場合(ステップS1204のYES)、フィルタリング部30は、その第2のセッション情報およびリクエストに付加されているサービス識別子をセッション情報管理部305に送り、その第2のセッション情報が正規の第2のセッション情報であるかの確認をセッション情報管理部305に要求する。セッション情報管理部305は、リクエストに付加されていたその第2のセッション情報およびサービス識別子の組み合わせと同一の組み合わせが、セッション情報記憶部306に記憶されている第2のセッション情報およびサービス識別子の組み合わせの中に含まれていれば、リクエストに付加されていた第2のセッション情報は正規の第2のセッション情報であると判定する。また、セッション情報管理部305は、リクエストに付加されていた第2のセッション情報およびサービス識別子の組み合わせと同一の組み合わせが、セッション情報記憶部306に記憶されている第2のセッション情報およびサービス識別子の組み合わせの中に含まれていなければ、リクエストに付加されていた第2のセッション情報は正規の第2のセッション情報ではないと判定する(ステップS1205)。
【0226】
なお、正規の第2のセッション情報とは、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると検証された後に生成されたセッション情報である。
【0227】
リクエストに付加されていた第2のセッション情報は正規の第2のセッション情報である場合(ステップS1205のYES)、フィルタリング部301は、リクエストを指定サービスに転送する(ステップS1206)。この転送は、第1の実施の形態や第4の実施の形態と同様に行えばよい。また、後述するステップS1215で第2のセッション情報を生成して、サービス識別子と対応付けてセッション情報記憶部306に記憶させるときに、そのサービス識別子に対応付けられた転送先情報を利用サービス情報記憶部504から取得し、第2のセッション情報と、サービス識別子と、転送先情報とを対応付けて、セッション情報記憶部306に記憶させてもよい。そして、ステップS1206では、リクエストに付加された転送先情報をセッション情報記憶部306から読み込んで、その転送先情報が示すアドレスを宛先として、サービス提供部60にリクエストを送信してもよい。
【0228】
ステップS1204において、リクエストに第2のセッション情報が付加されていないと判定された場合(ステップS1204のNO)、あるいは、ステップS1205において、リクエストに付加されていた第2のセッション情報およびサービス識別子の組み合わせと同一の組み合わせが、セッション情報記憶部306に記憶されている第2のセッション情報およびサービス識別子の組み合わせの中に含まれていない場合(ステップS1205のNO)、ステップS1211に移行する。
【0229】
リクエストに付加されていた第2のセッション情報およびサービス識別子の組み合わせと同一の組み合わせが、セッション情報記憶部306に記憶されている第2のセッション情報およびサービス識別子の組み合わせの中に含まれていない場合(ステップS1205のNO)にステップS1211に移行することによって、端末21が要求するサービスの種類が変更され、リクエストに付加されるサービス識別子が変更された場合に、新たに第2のセッション情報を生成するステップ(ステップS1215)に移行することが可能となる。
【0230】
ステップS1211では、フィルタリング部301は、リクエストの内容の検証(リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証)をリクエスト内容検証部303に要求する。このとき、フィルタリング部301は、リクエストに含まれるユーザ識別子およびサービス識別子をリクエスト内容検証部303に送る。そして、リクエスト内容検証部303は、メンバ情報記憶部503に記憶されたメンバ情報の中から、リクエストに含まれるユーザ識別子に対応付けられているコミュニティ識別子を取得する(ステップS1211)。利用者が複数のコミュニティのメンバである場合、その利用者のユーザ識別子に対応するコミュニティ識別子はメンバ情報記憶部503に複数種類記憶されている。このような場合、リクエストに含まれるユーザ識別子に対応付けられている全てのコミュニティ識別子をメンバ情報記憶部503から取得する。
【0231】
次に、リクエスト内容検証部303は、リクエストに含まれるサービス識別子に対応付けられたコミュニティ識別子をサービス情報記憶部504から取得する(ステップS1212)。
【0232】
続いて、リクエスト内容検証部303は、ステップS1212で取得したコミュニティ識別子が、ステップS1211で取得したコミュニティ識別子の中に含まれているか否かを判定する(ステップS1213)。なお、ステップS1211で取得したコミュニティ識別子が1つしかなく、そのコミュニティ識別子がステップS1212で取得したコミュニティ識別子と同一である場合、ステップS1212で取得したコミュニティ識別子が、ステップS1211で取得したコミュニティ識別子の中に含まれていると判定する。リクエスト内容検証部303は、判定結果をフィルタリング部301に通知する。
【0233】
ステップS1211〜ステップS1213の動作は、第4の実施の形態におけるステップS1104〜S1106(図20参照。)の動作と同様である。
【0234】
ステップS1212で取得したコミュニティ識別子がステップS1211で取得したコミュニティ識別子の中に含まれていない場合(ステップS1213のNO)、受信したリクエストが不正なリクエスト(ユーザの参加するコミュニティに許可されていないサービスへのリクエスト)であると判定し、そのリクエストを破棄する(ステップS1214)。
【0235】
ステップS1212で取得したコミュニティ識別子がステップS1211で取得したコミュニティ識別子の中に含まれている場合(ステップS1213のYES)、フィルタリング部301は、セッション情報管理部305に新規に第2のセッション情報の生成を要求する。このとき、フィルタリング部301は、リクエストに付加されているサービス識別子をセッション情報管理部305に送る。セッション情報管理部305は、一意のセッション識別子およびランダムで予測不能なな文字列を生成する。このセッション識別子および文字列の組み合わせが第2のセッション情報である。セッション管理部305は、生成した第2のセッション情報と、受信したリクエストに付加されていたサービス識別子とを対応付けてセッション情報記憶部306に記憶させる。また、セッション管理部305は、その第2のセッション情報を端末21に送信する(ステップS1215)。
【0236】
以上のような処理では、リクエストに第1のセッション情報が付加されていない場合、ステップS1215に移行することはなく、先にステップS1210で第1のセッション情報が生成され、その第1のセッション情報が端末21に送信される。端末21が第1のセッション情報を付加したリクエストを送信した場合、ステップS1215に移行すれば、第2のセッション情報が生成され、端末21に送信される。端末21が第1のセッション情報および第2のセッション情報を付加したリクエスを送信し、通信フィルタリング部30がこのリクエストを受信すると(ステップS1201)、ステップS1202,S1203,S1204,S1205の処理を行い、リクエストをサービスに転送する(ステップS1206)。
【0237】
なお、端末21は、第1のセッション情報や第2のセッション情報をクッキー(Cookie)の態様でリクエストに付加してもよい。
【0238】
第1のセッション情報は、通信フィルタリング部30がユーザのリクエスト毎にユーザ認証を行う負荷を軽減するためのもので、同じユーザの端末がリクエストを送信していることを保証する。
【0239】
また、第2のセッション情報は、同一ユーザの端末がリクエストを送信していることを保証したうえで、通信フィルタリング部30が同一サービスに対するリクエスト毎にリクエスト内容の検証を行う負荷を軽減するためのものであり、同じユーザの端末が同じサービスへのリクエストを行っていることを保証する。すなわち、リクエストに第2のセッション情報が付加されていて、第2のセッション情報が正規の第2のセッション情報であることを判定すれば、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証(ステップS1211〜S1213)を行わなくて済む。このように第2のセッション情報を用いることで、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるか否かの検証(ステップS1211〜S1213)を省略できる。
【0240】
また、通信フィルタリング部30から第1のセッション情報および第2のセッション情報を受信済みの端末21が、それまで利用していたサービスとは別のサービスを利用するためにリクエストを送信する場合、第1のセッション情報によりユーザ認証は省略される。この場合、別のサービスを要求するので、端末21は、リクエストに付加するサービス識別子を変更する。この場合、第1のセッション情報および第2のセッション情報がリクエストに付加されるので、ステップS1201の後、ステップS1202,S1203,S1204の処理を行い、ステップS1205に移行する。ここで、第1のセッション情報は正規のセッション情報であり、ステップS1203からステップS1204に移行するものとする。ステップS1205では、リクエストに付加された変更後のサービス識別子と第2のセッション情報との組み合わせは、セッション情報記憶部306に記憶されておらず、第2のセッション情報は正規のセッション情報ではないと判定され、ステップS1211以降の処理が行われる。この場合、ステップS1215に移行すれば、新たにセッション情報が発行され、変更後のサービス識別子と対応付けて正規の第2のセッション情報としてセッション情報記憶部306に記憶される。そして、その新たな第2のセッション情報が端末21に送られ、端末21は、第1のセッション情報および第2のセッション情報と変更後のサービス識別子を付加したリクエストを送信する。この場合、変更後のサービス識別子と第2のセッション情報との組み合わせは、セッション情報記憶部306に記憶されているので、ステップS1205において、第2のセッション情報は正規のセッション情報であると判定され、リクエストはサービスに転送される(ステップS1206)。
【0241】
従って、利用するサービスを変更する場合(リクエストに付加するサービス識別子を変更する場合)であっても、第2のセッション情報を新たに生成すれば、ユーザ認証を省略してリクエストを転送することができる。
【0242】
以下に、第4の実施の形態の変形例の具体的な動作を例示する。
端末21が、最初に、「{UserID=u123,Password=pass }」というユーザ識別子およびパスワードを付加したリクエストを通信フィルタリング部30に送信したとする。なお、このリクエストには、第1のセッション情報および第2のセッション情報は付加されていない。また、本例において、「u123」はユーザ識別子であり、「pass」はパスワードである。
【0243】
リクエストに第1のセッション情報が付加されていないので、通信フィルタリング部30は、ステップS1201,S1202の後、ユーザ認証(ステップS1207,S1208)を行う。ここでは、ユーザ認証に成功したものとする。すると、セッション情報管理部305は、第1のセッション情報を生成してセッション情報記憶部306に記憶させ、第1のセッション情報を端末21に送信する。本例では、「{SessionID=101,CertString=xyz}」という第1のセッション情報が生成されたものとする。
【0244】
続いて、端末21は、2回目のリクエストを送信する。端末21は、「{UserID=u123,ServiceID=sv11,{SessionID=101,CertString=xyz}}」というユーザ識別子、サービス識別子(本例では「sv11」)、および第1のセッション情報を付加したリクエストを、通信フィルタリング部30に送信する。なお、端末21は、すでにユーザ認証に成功して第1のセッション情報を受信しているので、このときにパスワードなどのユーザ認証情報をリクエストに付加する必要はない。
【0245】
このリクエストを受信した場合、通信フィルタリング部30は、ステップS1201,S1202の後、ステップS1203に移行する。ステップS1203において、リクエストに付加された第1のセッション情報と同一のセッション情報がセッション情報記憶部306に記憶されているので、ステップS1204に移行する。リクエストには、第2のセッション情報が付加されていないので、さらにステップS1211に移行する。その後、ステップS1211,S1212,S1213の後、ステップS1215に移行したとする。ステップS1215で、セッション情報管理部305は、第2のセッション情報を生成して、リクエストに付加されていたサービス識別子「sv11」と対応付けて、セッション情報記憶部306に記憶させる。また、第2のセッション情報を端末21に送信する。本例では、「{SessionID=201,CertString=abc}」という第2のセッション情報が生成されたものとする。
【0246】
続いて、端末21は、3回目のリクエストを送信する。端末21は、「{UserID=u123,ServiceID=sv11,{SessionID=101,CertString=xyz},{SessionID=201,CertString=abc}}」というユーザ識別子、サービス識別子、第1のセッション情報、および第2のセッション情報を付加したリクエストを通信フィルタリング部30に送信する。
【0247】
このリクエストを受信した場合、通信フィルタリング部30は、ステップS1201,S1202の後、ステップS1203に移行する。ステップS1203において、リクエストに付加された第1のセッション情報と同一のセッション情報がセッション情報記憶部306に記憶されているので、ステップS1204に移行する。また、リクエストに第2のセッション情報が付加されているのでステップS1205に移行する。さらに、リクエストに付加された第2のセッション情報およびサービス識別子「sv11」の組み合わせと同一の組み合わせがセッション情報記憶部306に記憶されているので、ステップS1206に移行し、リクエストをサービスに転送する。
【0248】
端末21が、リクエストに付加するサービス識別子を「sv11」から「sv33」に変更したとする。すなわち、利用しようとするサービスを変えたとする。端末21は、「{UserID=u123,ServiceID=sv33,{SessionID=101,CertString=xyz},{SessionID=201,CertString=abc}}」というユーザ識別子、サービス識別子、第1のセッション情報、および第2のセッション情報を付加したリクエストを通信フィルタリング部30に送信する。この場合、上記と同様に、ステップS1204まで移行する。しかし、リクエストに付加された第2の識別情報「{SessionID=201,CertString=abc}」およびサービス識別子「sv33」の組み合わせと同一の組み合わせはセッション情報記憶部306に記憶されていない。よって、この場合、ステップS1211に移行する。その後、ステップS1211,S1212,S1213の後、ステップS1215に移行したとする。ステップS1215で、セッション情報管理部305は、新たに第2のセッション情報を生成して、リクエストに付加されていたサービス識別子「sv33」と対応付けて、セッション情報記憶部306に記憶させる。また、第2のセッション情報を端末21に送信する。本例では、「{SessionID=202,CertString=1qaz2wsx3}」という第2のセッション情報が新たに生成されたものとする。
【0249】
端末21は、新たな第2のセッション情報をリクエストに付加して送信する。すなわち、端末21は、「{UserID=u123,ServiceID=sv33,{SessionID=101,CertString=xyz}, {SessionID=202,CertString=1qaz2wsx3}}」というユーザ識別子、サービス識別子、第1のセッション情報、および第2のセッション情報を付加したリクエストを通信フィルタリング部30に送信する。このリクエストを受信した場合、通信フィルタリング部30は、ステップS1201〜S1024の後、ステップS1205に移行する。リクエストに付加された第2のセッション情報およびサービス識別子「sv33」の組み合わせと同一の組み合わせがセッション情報記憶部306に記憶されているので、ステップS1206に移行し、リクエストをサービスに転送する。
【0250】
上記のような第4の実施の形態の変形例では、第1のセッション情報および第2のセッション情報を管理することで、通信フィルタリング部30が、同一ユーザの端末のリクエスト毎に毎回ユーザ認証を行う必要がなくなり、また、同一ユーザの端末の同一サービスに対するリクエスト毎に毎回リクエスト内容の検証を行う必要がなくなる。よって、通信フィルタリング部30の負荷を軽減することができる。
【0251】
第4の実施の形態および第4の実施の形態の変形例では、セッション情報管理部305がセッション情報(第1のセッション情報)や第2のセッション情報を生成する場合を例として説明した。セッション情報(第1のセッション情報)や第2のセッション情報の生成は、フィルタリング部301、ユーザ認証部302、あるいはリクエスト内容検証部303等の他の構成要素が行ってもよい。
【0252】
なお、以上の説明では、サービスアドレス情報および装置アドレス情報の組み合わせを転送先情報として用いる場合、あるいは、装置アドレス情報を予め通信フィルタリング部30が記憶してサービスアドレス情報を転送先情報として用いる場合を例にして説明した。転送先情報の態様は、このような態様に限定されない。例えば、転送先情報は、装置アドレス情報と、サービス提供部60がリクエストされたときにサービスを特定するためのパラメータを含んだ情報などであってもよい。
【0253】
第1の実施の形態、第4の実施の形態、および第4の実施の形態の変形例において、ユーザ管理部40、コミュニティ管理部50、サービス管理部70は、それぞれ別個の装置であってもよい。あるいは、これらの構成要素の一部あるいは全部が1つの装置であってもよい。
【0254】
同様に第2の実施の形態において、ユーザ管理部40a、コミュニティ管理部50、サービス管理部70は、それぞれ別個の装置であってもよい。あるいは、これらの構成要素の一部あるいは全部が1つの装置であってもよい。
【0255】
また、上記の各実施の形態において、サービス情報管理部701およびサービス設定部702は、例えば、プログラムに従って動作するコンピュータによって実現される。サービス情報管理部701およびサービス設定部702が同一のコンピュータによって実現されてもよい。この場合、サービス管理部70は、コンピュータにサービス情報管理部701およびサービス設定部702としての動作を実行させるサービス管理プログラムを記憶装置(図示せず。)に記憶しておく。コンピュータは、サービス管理プログラムを読み込み、サービス管理プログラムに従って、サービス情報管理部701およびサービス設定部702としての動作を実行する。
【0256】
また、上記の各実施の形態において、コミュニティ情報管理部501は、例えば、プログラムに従って動作するコンピュータによって実現される。コミュニティ管理部50は、コンピュータにコミュニティ管理部50としての動作を実行させるコミュニティ管理プログラムを記憶装置(図示せず。)に記憶しておく。コンピュータは、コミュニティ管理プログラムを読み込み、コミュニティ管理プログラムに従って、コミュニティ情報管理部501としての動作を実行する。
【0257】
また、上記の各実施の形態において、フィルタリング部301、ユーザ認証部302、およびリクエスト内容検証部303は、例えば、プログラムに従って動作するコンピュータによって実現される。フィルタリング部301、ユーザ認証部302、およびリクエスト内容検証部303が同一のコンピュータによって実現されてもよい。この場合、通信フィルタリング部30は、コンピュータに、フィルタリング部301、ユーザ認証部302、およびリクエスト内容検証部303としての動作を実行させるフィルタリングプログラムを記憶装置(図示せず。)に記憶させておく。コンピュータは、フィルタリングプログラムを読み込み、フィルタリングプログラムに従って、フィルタリング部301、ユーザ認証部302、およびリクエスト内容検証部303としての動作を実行する。さらに、フィルタリングプログラムは、コンピュータにセッション情報管理部305としての動作を実行させるプログラムであってもよい。この場合、コンピュータは、フィルタリングプログラムを読み込み、フィルタリングプログラムに従って、フィルタリング部301、ユーザ認証部302、リクエスト内容検証部303、およびセッション情報管理部305としての動作を実行する。
【0258】
また、上記の各実施の形態において、ユーザ情報管理部401(第2の実施の形態の場合は、ユーザ情報管理部401a,401b)は、例えば、プログラムに従って動作するコンピュータによって実現される。ユーザ管理部40(第2の実施の形態の場合は、ユーザ管理部40a,40b)は、コンピュータにユーザ情報管理部401としての動作を実行させるユーザ情報管理プログラムを記憶装置(図示せず。)に記憶させておく。コンピュータは、ユーザ情報管理プログラムを読み込み、ユーザ情報管理プログラムに従って、ユーザ情報管理部401としての動作を実行させる。
【0259】
また、第3の実施の形態において、フィルタリング部301、ユーザ認証部302、リクエスト内容検証部303、ユーザ情報管理部401、コミュニティ管理者認証部403、およびコミュニティ情報管理部501が同一のコンピュータによって実現されてもよい。この場合、通信フィルタリング部30は、コンピュータに、フィルタリング部301、ユーザ認証部302、リクエスト内容検証部303、ユーザ情報管理部401、コミュニティ管理者認証部403、およびコミュニティ情報管理部501としての動作を実行させるフィルタリングプログラムを記憶装置(図示せず。)に記憶させておく。コンピュータは、フィルタリングプログラムを読み込み、フィルタリングプログラムに従って、フィルタリング部301、ユーザ認証部302、リクエスト内容検証部303、ユーザ情報管理部401、コミュニティ管理者認証部403、およびコミュニティ情報管理部501としての動作を実行する。
【0260】
また、上記の各実施の形態において、ユーザ情報記憶部402(第2の実施の形態の場合は、ユーザ情報記憶部402a,402b)、コミュニティ情報記憶部502、メンバ情報記憶部503、利用サービス情報記憶部504、サービス提供部情報記憶部703、サービス情報記憶部704は、それぞれデータベースによって実現される。
【0261】
なお、第3の実施の形態、第4の実施の形態、および第4の実施の形態の変形例において、第2の実施の形態と同様に、内部NW12に接続されるユーザ管理部40bを備え、複数のユーザ管理部にユーザ情報を登録する構成であってもよい。
【0262】
また、第4の実施の形態、および第4の実施の形態の変形例において、第3の実施の形態と同様に、通信フィルタリング部30が、ユーザ管理部40と、コミュニティ管理部50とを備える構成としてもよい。
【産業上の利用可能性】
【0263】
本発明は、外部ネットワークから内部ネットワークへの通信に対して、コミュニティに関する情報を用いてフィルタリングを行う通信フィルタリングシステムとして好適に適用可能である。
【図面の簡単な説明】
【0264】
【図1】本発明の第1の実施の形態の例を示すブロック図である。
【図2】本実施の形態における端末が通信フィルタリング部に対して送信するリクエスト内容の一例を示す説明図である。
【図3】ユーザ登録におけるフローチャートである。
【図4】新たにコミュニティが開設される場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図5】コミュニティを閉鎖する場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図6】既に開設されているコミュニティが利用するサービス種別を変更する場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図7】外部NWからサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図8】本発明の第2の実施の形態の例を示すブロック図である。
【図9】第2の実施の形態においてメンバ情報記憶部が記憶するメンバ情報の例を示す説明図である。
【図10】第2の実施の形態においてリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図11】本発明の第3の実施の形態の例を示すブロック図である。
【図12】ユーザ情報記憶部が記憶する管理者のユーザ情報の例を示す説明図である。
【図13】ユーザ情報の登録の前に行う管理者のユーザ認証を示すフローチャートである。
【図14】コミュニティ開設の前に行う管理者のユーザ認証を示すフローチャートである。
【図15】コミュニティ閉鎖の前に行う管理者のユーザ認証を示すフローチャートである。
【図16】コミュニティの利用サービス種別の変更の前に行う管理者のユーザ認証を示すフローチャートである。
【図17】本発明の第4の実施の形態の例を示すブロック図である。
【図18】セッション情報の例を示す説明図である。
【図19】第4の実施の形態において端末がリクエストに付加する情報の例を示す説明図である。
【図20】外部NWからサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。
【図21】セッション情報記憶部に記憶される第2のセッション情報の例を示す説明図である。
【図22】第4の実施の形態の変形例において端末が送信するリクエストに付加される情報の例を示す説明図である。
【図23】第4の実施の形態の変形例において、外部NWからサービスを利用するリクエストを受信した場合の通信フィルタリングシステムの動作を示すフローチャートである。
【符号の説明】
【0265】
21,22 端末
30 通信フィルタリング部
40 ユーザ管理部
50 コミュニティ管理部
60 サービス提供部
70 サービス管理部
301 フィルタリング部
302 ユーザ認証部
303 リクエスト内容検証部
401 ユーザ情報管理部
402 ユーザ情報記憶部
501 コミュニティ情報管理部
502 コミュニティ情報記憶部
503 メンバ情報記憶部
504 利用サービス情報記憶部
701 サービス情報管理部
702 サービス設定部
703 サービス提供部情報記憶部
704 サービス情報記憶部

【特許請求の範囲】
【請求項1】
個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部と、
ユーザの端末に対してサービスを提供するサービス提供部と、
ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング部と、
コミュニティに関する情報を登録するコミュニティ管理部と、
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、
コミュニティ管理部に情報を送信する管理者端末とを備え、
コミュニティ管理部は、
個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、
コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを有し、
サービス管理部は、
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、
コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを有し、
通信フィルタリング部は、
ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証部と、
ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証部と、
ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送するフィルタリング部とを有し、
コミュニティ情報管理部は、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス情報管理部に要求し、
サービス情報管理部は、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、
サービス設定部は、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、
コミュニティ情報管理部は、コミュニティ識別子と前記サービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させる
ことを特徴とする通信フィルタリングシステム。
【請求項2】
サービス管理部は、サービス提供部に開設可能なサービスの種別を記憶するサービス提供部情報記憶部を備え、
コミュニティ情報管理部は、前記サービスの種別をサービス情報管理部に要求し、
サービス情報管理部は、コミュニティ情報管理部からの要求に応じて前記サービスの種別をサービス提供部情報記憶部から読み込んでコミュニティ情報管理部に送信し、
コミュニティ情報管理部は、前記サービスの種別を管理者端末に送信し、
コミュニティ情報管理部は、管理者端末に指定された種別のサービスの開設をサービス情報管理部に要求する
請求項1に記載の通信フィルタリングシステム。
【請求項3】
サービス設定部は、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスのアドレスを示すサービスアドレス情報を生成し、
サービス管理部は、サービス設定部が生成したサービス識別子とサービスアドレス情報とを記憶するサービス情報記憶部を備えた
請求項1または請求項2に記載の通信フィルタリングシステム。
【請求項4】
コミュニティ情報管理部は、管理者端末から閉鎖対象となるコミュニティのコミュニティ識別子を受信すると、当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から読み込み、当該サービス識別子をサービス情報管理部に送信して、サービス情報管理部にサービスの閉鎖を要求し、
サービス情報管理部は、コミュニティ情報管理部から受信したサービス識別子が示すサービスの閉鎖をサービス設定部に要求し、
サービス設定部は、サービス識別子が示すサービスを提供不能となるようにサービス提供部の設定を行い、
コミュニティ情報管理部は、閉鎖対象となるコミュニティのコミュニティ識別子をコミュニティ情報記憶部から削除し、閉鎖対象となるコミュニティのコミュニティ識別子および当該コミュニティ識別子に対応するユーザ識別子をメンバ情報記憶部から削除し、閉鎖対象となるコミュニティのコミュニティ識別子および当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から削除する
請求項1から請求項3のうちのいずれか1項に記載の通信フィルタリングシステム。
【請求項5】
サービス管理部は、サービス提供部に開設可能なサービスの種別を記憶するサービス提供部情報記憶部を備え、
コミュニティ情報管理部は、管理者端末からサービス変更対象となるコミュニティのコミュニティ識別子を受信すると、当該コミュニティ識別子に対応するサービス識別子を利用サービス情報記憶部から読み込み、当該サービス識別子を管理者端末に送信し、管理者端末に指定されたサービス識別子をサービス情報管理部に送信して、サービス情報管理部にサービスの閉鎖を要求し、
サービス情報管理部は、コミュニティ情報管理部から受信したサービス識別子が示すサービスの閉鎖をサービス設定部に要求し、
サービス設定部は、サービス識別子が示すサービスを提供不能となるようにサービス提供部の設定を行い、
コミュニティ情報管理部は、前記サービス識別子を利用サービス情報記憶部から削除し、
コミュニティ情報管理部は、サービスの種別をサービス情報管理部に要求し、
サービス情報管理部は、コミュニティ情報管理部からの要求に応じて前記サービスの種別をサービス提供部情報記憶部から読み込んでコミュニティ情報管理部に送信し、
コミュニティ情報管理部は、前記サービスの種別を管理者端末に送信し、
コミュニティ情報管理部は、管理者端末に指定された種別のサービスの開設をサービス情報管理部に要求し、
サービス情報管理部は、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、
サービス設定部は、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、
サービス情報管理部は、前記サービス識別子をサービス変更対象となるコミュニティのコミュニティ識別子に対応付けて利用サービス情報記憶部に記憶させる
請求項1から請求項4のうちのいずれか1項に記載の通信フィルタリングシステム。
【請求項6】
複数のユーザ情報記憶部を備え、
コミュニティ情報管理部は、各ユーザ情報記憶部に記憶されたユーザ識別子を管理者端末に送信し、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子と、管理者端末から受信したユーザ識別子と、当該ユーザ識別子を記憶しているユーザ情報記憶部の識別情報とを対応づけたメンバ情報をメンバ情報記憶部に記憶させる
請求項1から請求項5のうちのいずれか1項に記載の通信フィルタリングシステム。
【請求項7】
管理者端末からの要求に応じて、ユーザ情報記憶部にユーザ識別子とユーザ認証情報とを対応付けて記憶させるユーザ情報管理部と、
管理者のユーザ識別子と管理者のユーザ認証情報とを対応付けて記憶する管理者情報記憶部と、
管理者端末から受信した管理者のユーザ識別子および管理者のユーザ認証情報の組み合わせが管理者情報記憶部に記憶されている場合に管理者の認証に成功したと判定し、管理者端末から受信した管理者のユーザ識別子および管理者のユーザ認証情報の組み合わせが管理者情報記憶部に記憶されていない場合に管理者の認証に失敗したと判定する管理者認証部とを備え、
ユーザ情報管理部は、管理者の認証に成功したと判定された場合に、管理者端末からの要求に応じて、ユーザ情報記憶部にユーザ識別子とユーザ認証情報とを対応付けて記憶させる
請求項1から請求項6のうちのいずれか1項に記載の通信フィルタリングシステム。
【請求項8】
コミュニティ情報管理部は、管理者の認証に成功したと判定された場合に、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信する
請求項7に記載の通信フィルタリングシステム。
【請求項9】
通信フィルタリング部は、ユーザ認証部によってユーザ認証に成功したと判定された場合に前記ユーザ認証に対応するデータである第1のセッション情報を生成し、リクエストの送信元のユーザの端末に第1のセッション情報を送信するセッション情報生成部と、
第1のセッション情報を記憶するセッション情報記憶部と、
ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が、セッション情報記憶部に記憶されている場合に、前記第1のセッション情報が正規の第1のセッション情報であると判定するセッション情報管理部とを備え、
リクエスト内容検証部は、ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が正規の第1のセッション情報であると判定されたならば、ユーザ認証部にユーザ認証に成功したと判定されていなくても、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定する
請求項1から請求項8のうちのいずれか1項に記載の通信フィルタリングシステム。
【請求項10】
セッション情報生成部は、ユーザの端末から受信したリクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるとリクエスト内容検証部によって判定された場合に前記判定に対応するデータである第2のセッション情報を生成し、第2のセッション情報と前記リクエストに付加されているサービス識別子とを対応付けてセッション情報記憶部に記憶させ、リクエストの送信元のユーザの端末に第2のセッション情報を送信し、
セッション情報管理部は、ユーザの端末から新たに受信したリクエストに付加された第2のセッション情報およびサービス識別子の組み合わせがセッション情報記憶部に記憶されているか否かを判定し、
フィルタリング部は、ユーザの端末から新たに受信したリクエストに付加されている第1のセッション情報が正規の第1のセッション情報であると判定され、かつ、前記リクエストに付加された第2のセッション情報およびサービス識別子の組み合わせがセッション情報記憶部に記憶されていると判定された場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであるとリクエスト内容検証部によって判定されない場合であっても、前記リクエストをサービス提供部に転送する
請求項9に記載の通信フィルタリングシステム。
【請求項11】
個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部と、
ユーザの端末に対してサービスを提供するサービス提供部と、
ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング部と、
コミュニティに関する情報を登録するコミュニティ管理部と、
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、
コミュニティ管理部に情報を送信する管理者端末とを備え、
コミュニティ管理部が、
個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、
コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを有し、
サービス管理部が、
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、
コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを有する通信フィルタリングシステムを用いて、ユーザの端末からの所定のリクエストをサービス提供部に転送する通信フィルタリング方法であって、
コミュニティ情報管理部が、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス情報管理部に要求し、
サービス情報管理部が、コミュニティ情報管理部からの要求に応じて、サービス設定部に対してサービスの開設を要求し、
サービス設定部が、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行い、新たにサービス識別子を生成し、
コミュニティ情報管理部が、コミュニティ識別子と前記サービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させ、
通信フィルタリング部が、ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定し、
通信フィルタリング部が、ユーザ認証に成功したと判定したときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定し、
通信フィルタリング部が、ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定した場合に、前記リクエストをサービス提供部に転送する
ことを特徴とする通信フィルタリング方法。
【請求項12】
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とに接続されたコミュニティ管理装置であって、
個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、
コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部と、
コミュニティ情報記憶部へのコミュニティ識別子の登録、メンバ情報記憶部へのメンバ情報の登録、利用サービス情報記憶部への利用サービス情報の登録を行うコミュニティ情報管理部とを備え、
コミュニティ情報管理部は、管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信すると、新たなコミュニティのコミュニティ識別子を生成し、当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させ、前記新たなコミュニティのサービスの開設をサービス管理部に要求し、コミュニティ識別子とサービス管理部によって生成されたサービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させる
ことを特徴とするコミュニティ管理装置
【請求項13】
ユーザの端末に対してサービスを提供するサービス提供部と、コミュニティに関する情報を登録するコミュニティ管理部とに接続され、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理装置であって、
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行するサービス設定部と、
コミュニティ管理部からの要求に応じて、サービス設定部に対してサービスの開設またはサービスの閉鎖を要求するサービス情報管理部とを備え、
サービス設定部は、サービス情報管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスを識別するサービス識別子を生成する
ことを特徴とするサービス管理装置。
【請求項14】
個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部とユーザ識別子およびユーザ認証情報を取得可能に接続され、
個々のコミュニティを識別するコミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコミュニティ管理装置と接続され、
ユーザの端末からのリクエストをサービス提供部に転送するか否かを判定する通信フィルタリング装置であって、
ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証部と、
ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証部と、
ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送するフィルタリング部とを備えた
ことを特徴とする通信フィルタリング装置。
【請求項15】
サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービス管理部と、コミュニティ管理部に情報を送信する管理者端末とに接続されたコンピュータであって、個々のコミュニティを識別するコミュニティ識別子を記憶するコミュニティ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコンピュータに、
管理者端末から新たなコミュニティのメンバとなるユーザのユーザ識別子を受信したときに、新たなコミュニティのコミュニティ識別子を生成するコミュニティ識別子生成処理、
当該コミュニティ識別子をコミュニティ情報記憶部に記憶させ、当該コミュニティ識別子と管理者端末から受信したユーザ識別子とを対応付けたメンバ情報をメンバ情報記憶部に記憶させる処理、および
前記新たなコミュニティのサービスの開設をサービス管理部に要求し、コミュニティ識別子とサービス管理部によって生成されたサービス識別子とを対応付けた利用サービス情報を利用サービス情報記憶部に記憶させる処理
を実行させるためのコミュニティ管理プログラム。
【請求項16】
ユーザの端末に対してサービスを提供するサービス提供部と、コミュニティに関する情報を登録するコミュニティ管理部とに接続されるコンピュータに、
コミュニティ管理部からの要求に応じて、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うサービスの開設、およびサービスを提供不能となるようにサービス提供部の設定を行うサービスの閉鎖を実行し、サービス提供部がユーザの端末にサービスを提供できるようにサービス提供部の設定を行うときに、前記サービスを識別するサービス識別子を生成する処理
を実行させるためのサービス管理プログラム。
【請求項17】
個々のユーザを識別するユーザ識別子と、ユーザ認証に用いられる個々のユーザの固有の情報であるユーザ認証情報とを対応付けて記憶するユーザ情報記憶部とユーザ識別子およびユーザ認証情報を取得可能に接続され、個々のコミュニティを識別するコミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバのユーザ識別子とを対応づけたメンバ情報を記憶するメンバ情報記憶部と、コミュニティ識別子と、当該コミュニティ識別子が示すコミュニティに属するメンバが利用可能なサービスを示すサービス識別子とを対応付けた利用サービス情報を記憶する利用サービス情報記憶部とを備えたコミュニティ管理装置と接続されたコンピュータに、
ユーザの端末から受信したリクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されている場合にユーザ認証に成功したと判定し、リクエストに付加されているユーザ識別子およびユーザ認証情報の組み合わせがユーザ情報記憶部に記憶されていない場合にユーザ認証に失敗したと判定するユーザ認証処理、
ユーザ認証に成功したと判定されたときに、ユーザの端末から受信したリクエストに付加されているユーザ識別子に対応するコミュニティ識別子をメンバ情報記憶部から取得し、前記リクエストに付加されているサービス識別子に対応するコミュニティ識別子を利用サービス情報記憶部から取得し、メンバ情報記憶部から取得したコミュニティ識別子の中に、利用サービス情報記憶部から取得したコミュニティ識別子が含まれている場合に、前記リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定するリクエスト内容検証処理、および
ユーザ認証に成功し、リクエストがユーザが参加するコミュニティに許可されたサービスへのリクエストであると判定された場合に、前記リクエストをサービス提供部に転送する処理
を実行させるための通信フィルタリングプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate


【公開番号】特開2008−46875(P2008−46875A)
【公開日】平成20年2月28日(2008.2.28)
【国際特許分類】
【出願番号】特願2006−222049(P2006−222049)
【出願日】平成18年8月16日(2006.8.16)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】