JP2006040219A - Content disclosure device, system and medium - Google Patents
Content disclosure device, system and medium Download PDFInfo
- Publication number
- JP2006040219A JP2006040219A JP2004223333A JP2004223333A JP2006040219A JP 2006040219 A JP2006040219 A JP 2006040219A JP 2004223333 A JP2004223333 A JP 2004223333A JP 2004223333 A JP2004223333 A JP 2004223333A JP 2006040219 A JP2006040219 A JP 2006040219A
- Authority
- JP
- Japan
- Prior art keywords
- content
- port
- publishing
- contents
- registered
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、ネットワークに接続されたコンピュータ等によって情報やサービスを提供するシステムにおいて、情報やサービスを提供するために使用するネットワークの通信ポートの制御に関するものである。 The present invention relates to control of a communication port of a network used for providing information and services in a system that provides information and services by a computer or the like connected to a network.
近年、TCP/IP等のネットワークで、HTTPプロトコルを用いてHTML等で記述した情報やサービスを提供するシステムが増加している。 In recent years, an increasing number of systems provide information and services described in HTML or the like using the HTTP protocol in a network such as TCP / IP.
図6はこのような情報提供システムの従来例の機器構成をあらわす図である。同図において、7010はHTML等で記述された情報やサービス、すなわちコンテンツを蓄積し、ユーザからの要求に応じてそれらコンテンツを配信するHTTPサーバを動かすサーバマシン、7020はサーバマシン7010から配信されるコンテンツを作成しサーバマシン7010 に供給するコンテンツ供給マシン、7030はユーザがHTMLブラウザ等を用いてサーバマシン7010が配信しているコンテンツを閲覧するためのクライアントマシン、7040はサーバマシン7010、コンテンツ供給マシン7020、クライアントマシン7030を結合するネットワークである。
FIG. 6 is a diagram showing a conventional device configuration of such an information providing system. In the figure, 7010 is a server machine that stores information and services described in HTML or the like, that is, contents, and operates an HTTP server that distributes the contents in response to a request from the user, and 7020 is distributed from the
図7はサーバマシン7010上で実行されるHTTPサーバとクライアントマシン7030からのアクセスを示す概念図で、TCP/IPのポート80とポート8080の2つのポートを開いてユーザからのアクセスを許可する場合の従来の構成を示している。同図において、8010は、ポート80用のコンテンツを配信するためのHTTPサーバであり、8020は80番ポート用HTTPサーバで配信されるコンテンツであり、8030は、ポート8080用のコンテンツを配信するためのHTTPサーバであり、8040は8080番ポート用HTTPサーバで配信されるコンテンツである。
FIG. 7 is a conceptual diagram showing access from the HTTP server and the
HTTPサーバで配信されるコンテンツはURL(Universal Resource Locator:RFC2396)で識別される。URLのサーバを識別する部分は、ホスト(ホスト名もしくはIPアドレスで記述される)とポート番号からなる。HTTPサーバが配信するコンテンツのURLの例を示すと以下のようになる。 Content distributed by the HTTP server is identified by a URL (Universal Resource Locator: RFC2396). The part that identifies the server in the URL consists of a host (described by a host name or IP address) and a port number. An example of the content URL delivered by the HTTP server is as follows.
http://www.foo.com:8000/test
この例では、www.foo.comというホストマシンの8000番ポートにアクセスし、testというコンテンツを取得することを示している。ポート番号は省略することも可能で、省略された場合はプロトコルごとに決められているデフォルトポートにアクセスする。HTTPプロトコルの場合のデフォルトポートは80番である。
http://www.foo.com:8000/test
In this example, access is made to port 8000 of the host machine www.foo.com, and content called test is acquired. The port number can be omitted. When the port number is omitted, a default port determined for each protocol is accessed. The default port for HTTP protocol is 80.
このようにしてコンピュータを使用した情報発信が隆盛を迎えている一方、開いているポートを探し出し、そのポートによって通信を行なっているサーバの脆弱性をついてコンピュータに不正アクセスを行ない、そのコンピュータに様々な攻撃を仕掛けるケースが増えている。 While information transmission using computers has been flourishing in this way, it finds an open port, makes unauthorized access to the computer by exploiting the vulnerability of the server that communicates with that port, and various kinds of computer There are an increasing number of cases that make various attacks.
その対策として、様々な防御策が考えられている(例えば、特許文献1参照)。 Various countermeasures have been considered as countermeasures (for example, see Patent Document 1).
その中で一般的な対策方法として、不必要にポートを開かないようにして、開いているポートに対して不正アクセスがあるかを、いわゆるファイアウォールを設置して監視する方法が取られている。 As a general countermeasure, a so-called firewall is installed to monitor whether there is an unauthorized access to the open port without opening the port unnecessarily.
一方、機器の管理をHTTPプロトコルとHTMLを使用して行なうことも一般的に行なわれており、この際には一般的な標準ポートではなく、管理用のポートを別に設けてそのポートを使用して管理を行なうことが多い。
管理用などに標準ポートとは別にポートを開く場合にも、開いている時間を極力短くして、外部からの攻撃に晒される時間を最低限に押えるようにしたいという要求がある。 Even when a port is opened separately from a standard port for management or the like, there is a demand to keep the open time as short as possible so that the time exposed to external attacks is minimized.
また、前記従来例で示したように、別ポートで情報提供を行なう際にはそのポートを用いて情報提供を行なうサーバを別途立ち上げ情報提供を行なう必要がある。 In addition, as shown in the conventional example, when information is provided at another port, it is necessary to separately provide a server that provides information using that port.
通常、このようなサーバを管理する管理者には管理者特権が必要であり、サーバを起動したり、停止したり、といった操作を簡単におよび頻繁に行なうことは容易ではない。 Usually, an administrator who manages such a server requires administrator privileges, and it is not easy to perform operations such as starting and stopping the server simply and frequently.
また、操作が簡単に行なえないことから、提供すべきコンテンツが無くてもサーバを稼動させておくことにもなり、サーバが使用するポートが常時開いたままになることになるためセキュリティ強度を落とすことにも繋がってしまう。 In addition, since the operation cannot be performed easily, it is possible to keep the server running even if there is no content to be provided, and the port used by the server will remain open at all times, reducing the security strength. It will also lead to things.
さらに、別途サーバを立ち上げることにより、標準ポートで情報提供しているサーバとは別のサーバを立ち上げることにより、それだけコンピュータ資源を余計に必要としてしまう。大規模サーバマシンでは、複数のサーバを稼動することはそれほど問題ないかもしれないが、小規模な特に組み込み機器と呼ばれるもので複数のサーバソフトを稼動するための資源に対するオーバヘッドは許容できるものではない。 In addition, by starting up a separate server, starting up a server other than the server providing information at the standard port requires more computer resources. On a large-scale server machine, running multiple servers may not be a problem, but the overhead of resources for running multiple server software is not acceptable, especially in small-scale devices called embedded devices. .
上記問題点を鑑み、本発明においては、インターネットなどのネットワークに接続され、ネットワークを経由して送られてくる公開要求に応じてHTMLページ、画像、プログラムなどのコンテンツを公開するコンテンツ公開手段と、公開すべきコンテンツを公開できる形に登録し、登録されたコンテンツの内容を変更し、登録済みのコンテンツを削除するといったコンテンツの管理を行なうコンテンツ管理手段を有するコンテンツ公開装置において、コンテンツ登録/変更時にコンテンツを公開すべきネットワークの通信ポートをコンテンツに対して指定する公開ポート指定手段を有し、前記公開ポート指定手段によって通信ポートを指定されたコンテンツが存在しているときにのみ該当する通信ポートを利用可能とする通信ポート管理手段を持つよう構成する。 In view of the above problems, in the present invention, a content publishing unit that is connected to a network such as the Internet and publishes content such as an HTML page, an image, and a program in response to a publishing request sent via the network; In a content publishing apparatus having content management means for managing contents such as registering contents to be disclosed in a form that can be disclosed, changing the contents of the registered contents, and deleting the registered contents, at the time of content registration / change A public port designating unit for designating the communication port of the network to which the content is to be disclosed, for the content, and the communication port corresponding only when the content for which the communication port is designated by the public port designating unit exists Has a communication port management means that can be used. Configure.
また、前記コンテンツ管理手段によってコンテンツを管理するときにコンテンツを公開すべき期間を指定する公開期間指定手段を有するよう構成する。 Further, the content management means is configured to have a publication period designating means for designating a period during which the contents should be published when the contents are managed.
さらに、前記ポート管理手段によってポートを管理する際に、ポートを開くことができる時間帯を指定するポート開設可能時間帯指定手段を有するよう構成する。 Further, when the port is managed by the port management means, it is configured to have a port opening possible time zone specifying means for specifying a time zone during which the port can be opened.
この発明によれば、複数のポートを使用してコンテンツを公開する場合に、そのポートを使用して公開すべきコンテンツが登録されている場合にのみ公開するポートが開かれるように構成しうるため、ポートへの攻撃を受ける期間を最小限に押えることができるという効果を有する。 According to the present invention, when publishing content using a plurality of ports, it is possible to configure such that the port to be opened is opened only when the content to be published using the port is registered. This has the effect of minimizing the period during which the port is attacked.
また、コンテンツを登録することによりポートを開けるように構成できることより、サーバを複数立ち上げることによる管理コストの増大を防ぐ効果を有する。同時に、サーバが一つで済むことにより、サーバを稼動するサーバマシンのコンピュータ資源を提言できるという効果を有する。 Further, since the port can be opened by registering the contents, there is an effect of preventing an increase in management cost due to starting up a plurality of servers. At the same time, having only one server has the effect that computer resources of the server machine that runs the server can be proposed.
本発明の第1の実施形態について説明する。 A first embodiment of the present invention will be described.
システムの機器構成は、図6で示される前記従来例と同じ構成となる。 The system configuration of the system is the same as that of the conventional example shown in FIG.
図1は本実施例においてサーバマシン7010上で実行されるHTTPサーバとクライアントマシン7030からのアクセスを示す概念図で、TCP/IPのポート80とポート8080の2つのポートを開いてユーザからのアクセスを許可する場合の構成を示している。同図において、1010は、HTTPプロトコルを使用してコンテンツを提供するHTTPサーバ、1020は、HTTPサーバ1010によって提供されるコンテンツである。コンテンツ1020は、80番ポートで提供されるものと、8080番ポートで提供されるものに区別されて管理される。
FIG. 1 is a conceptual diagram showing an access from an HTTP server and a
図2はサーバマシン7010のハードウェア構成を示す図である。同図において、2010はサーバマシン7010全体を制御する制御部、2020は提供するコンテンツやサーバマシン7010で実行するプログラムを記憶しておく記憶部、2030はサーバマシン7010と外部マシンをつないで通信を行なうためのネットワーク部、2040は各部を結合してデータ/制御の流れを司るバスである。
FIG. 2 is a diagram showing a hardware configuration of the
図3は、HTTPサーバ1010のソフトウェア構成を示す図である。同図において、3010はコンテンツ1020を管理するコンテンツ管理部、3020はネットワーク部2030を用いて外からのアクセスを許すポートの管理を行なうネットワーク管理部、3030はコンテンツ1020をネットワーク部2030を経由して外部から送られてきた公開要求に基づいて提供するコンテンツ公開処理部である。
FIG. 3 is a diagram showing a software configuration of the
コンテンツ管理部3010は、コンテンツを識別するコンテンツID、コンテンツを提供するポート番号、コンテンツが外部からアクセスされるときの外部パス、記憶部2020にコンテンツを記憶する際にコンテンツが記憶されている記憶部2020内の場所を示す内部パス、コンテンツを説明する文章である記述、コンテンツ登録者のユーザIDをフィールドとするテーブルからなるデータベースによってコンテンツを管理している。
The
以下、図を用いてHTTPサーバ1010で行なわれる処理について説明する。
Hereinafter, processing performed in the
コンテンツ供給マシン7020がコンテンツ管理部3010に対して処理を依頼するには、コンテンツ供給マシン7020の上で稼動するウェブブラウザでHTTPサーバ1010の標準ポートで提供されているコンテンツ管理ページにアクセスする必要がある。このコンテンツ管理ページはコンテンツ公開処理部3030によって公開される。
この管理ページにアクセスすると、図4に示すユーザ確認ページが表示される。同図において、ユーザIDとパスワードを要求され、入力されたユーザIDとパスワードが正しいことをチェックしてユーザ認証を行ない、正規ユーザがアクセスしていることが確認される。正規ユーザであると認識されると、図5に示すコンテンツ管理ページが表示される。同図において、5010は登録されているコンテンツをリスト表示するコンテンツリスト、5015は処理の対象となるコンテンツを選択するためのラジオボタン、5020はコンテンツを新規作成することを指示する新規ボタン、5025は選択されているコンテンツを削除することを指示するための削除ボタン、5030は選択されているコンテンツを編集することを指示する編集ボタン、5035は操作対象となっているコンテンツを識別するためにつけられたIDを表示するID表示フィールド、5040はコンテンツの説明を入力するための記述フィールド、5045はコンテンツを提供するポート番号を指定するポート番号フィールド、5046はコンテンツを公開するURLのパス部分を指定する公開パスフィールド、5050はコンテンツの格納されている場所を指定するためのコンテンツファイルフィールド、5055は記述フィールド5040、ポート番号フィールド5045、公開パスフィールド5046及びコンテンツファイルフィールド5050の設定内容を消去することを指示するための取り消しボタン、5060はHTTPプロトコルのPOSTコマンドを使用してこのページの内容を送信することを指示するための送信ボタンである。
In order for the
When this management page is accessed, a user confirmation page shown in FIG. 4 is displayed. In the figure, a user ID and password are requested, and it is confirmed that the entered user ID and password are correct, user authentication is performed, and an authorized user is accessing. When the user is recognized as a regular user, the content management page shown in FIG. 5 is displayed. In the figure, 5010 is a content list for displaying a list of registered contents, 5015 is a radio button for selecting content to be processed, 5020 is a new button for instructing to newly create content, and 5025 is Delete button for instructing to delete the selected content, 5030 is an edit button for instructing to edit the selected content, and 5035 is for identifying the content to be operated ID display field for displaying an ID, 5040 for a description field for inputting a description of the content, 5045 for a port number field for specifying a port number for providing the content, and 5046 for specifying a path part of a URL for publishing the content Path field, 5050 is a content field for specifying the location where the content is stored. Field, 5055 is a
このコンテンツ管理ページのコンテンツリスト5010には、アクセスしているユーザが登録しているコンテンツ一覧と、アクセスしているユーザに許諾されている処理のリストが表示される。図5に示すコンテンツ管理ページを生成するためのJava(登録商標)Server Pages記述の例を以下に示す(Java(登録商標)Server Pagesは米国Sun Microsystems社の商標である)。
<%@page contentType="text/html; charset=shift-jis"%>
<html>
<head>
<title>コンテンツ管理</title>
<script language='Java(登録商標)Script'>
<!--
function newContent() {
document.reg.command.value = "new";
document.reg.submit();
}
function deleteContent() {
document.reg.command.value = "delete";
document.reg.submit();
}
function editContent() {
document.reg.command.value = "edit";
document.reg.submit();
}
function clearContent() {
document.reg.desc.value = "";
document.reg.port.value = "";
document.reg.contents.value = "";
}
//-->
</script>
</head>
<body>
<jsp:useBean id=" contentsdb " scope="session" class="smp.ContentsDB" />
<form name="reg" method="POST" action="register">
<p align="center">登録コンテンツリスト</p>
<table border="1" cellspacing="0" width="50%" align="center" cellpadding="5">
<tr>
<td>
<%! Content [] contents; %>
<%! int i; %>
<% contents = contentsdb.getContents(); %>
<% if (contents!= null) { %>
<% for (i = 0; i < contents.length; i++) {%>
<input type="radio" value="<%= i %>" name="con<%= i %>">
<%= contents [i].getDecription %>
<input type="hidden" value="<%= contents[i].getId() %>" name="conid<%= i %>"><br>
<% } %>
<% } else {%>
<P>登録されているコンテンツはありません</P>
<% } %>
</td>
</tr>
</table>
<p align="center">
<input type="button" value="新規" name="new" onclick="newContent()">
<input type="button" value="削除" name="delete" onclick="deleteContent()">
<input type="button" value="編集" name="edit" onclick="editContent()">
</p>
<input type="hidden" name="command">
<table border="0" cellspacing="0" width="50%" align="center">
<tr>
<td width="25%">コンテンツID</td>
<td width="75%">
<%! Sting id = null; %>
<% id = contentsdb.getSelectedId(); %>
<% if (id != null) { %>
<%= id %>
<input type="hidden" name="id" value="<%= id %>">
<% } %>
</td>
</tr>
<tr>
<td width="25%">記述</td>
<td width="75%"><input type="text" name="desc" size="40"></td>
</tr>
<tr>
<td width="25%">ポート番号</td>
<td width="75%"><input type="text" name="port" size="40"></td>
</tr>
<tr>
<td width="25%">公開パス</td>
<td width="75%"><input type="text" name="path" size="40"></td>
</tr>
<tr>
<td width="25%">コンテンツ</td>
<td width="75%"><input type="file" name="contents" size="40"></td>
</tr>
</table>
<p align="right">
<input type="submit" value="送信" name="send">
<input type="reset" value="クリア" name="clear" onclick="clearContent()">
</p>
</form>
</body>
</html>
まず、コンテンツ供給マシン7020がコンテンツをサーバマシン7010に登録する処理について説明する。
In the
<% @ page contentType = "text / html; charset = shift-jis"%>
<html>
<head>
<title> Content management </ title>
<script language = 'Java Script'>
<!-
function newContent () {
document.reg.command.value = "new";
document.reg.submit ();
}
function deleteContent () {
document.reg.command.value = "delete";
document.reg.submit ();
}
function editContent () {
document.reg.command.value = "edit";
document.reg.submit ();
}
function clearContent () {
document.reg.desc.value = "";
document.reg.port.value = "";
document.reg.contents.value = "";
}
//->
</ script>
</ head>
<body>
<jsp: useBean id = "contentsdb" scope = "session" class = "smp.ContentsDB"/>
<form name = "reg" method = "POST" action = "register">
<p align = "center"> Registered content list </ p>
<table border = "1" cellspacing = "0" width = "50%" align = "center" cellpadding = "5">
<tr>
<td>
<%! Content [] contents;%>
<%! int i;%>
<% contents = contentsdb.getContents ();%>
<% if (contents! = null) {%>
<% for (i = 0; i <contents.length; i ++) (%>
<input type = "radio" value = "<% = i%>" name = "con <% = i%>">
<% = contents [i] .getDecription%>
<input type = "hidden" value = "<% = contents [i] .getId ()%>" name = "conid <% = i%>"><br>
<%}%>
<%} else {%>
<P> There is no registered content </ P>
<%}%>
</ td>
</ tr>
</ table>
<p align = "center">
<input type = "button" value = "new" name = "new" onclick = "newContent ()">
<input type = "button" value = "delete" name = "delete" onclick = "deleteContent ()">
<input type = "button" value = "edit" name = "edit" onclick = "editContent ()">
</ p>
<input type = "hidden" name = "command">
<table border = "0" cellspacing = "0" width = "50%" align = "center">
<tr>
<td width = "25%"> Content ID </ td>
<td width = "75%">
<%! Sting id = null;%>
<% id = contentsdb.getSelectedId ();%>
<% if (id! = null) {%>
<% = id%>
<input type = "hidden" name = "id" value = "<% = id%>">
<%}%>
</ td>
</ tr>
<tr>
<td width = "25%"> Description </ td>
<td width = "75%"><input type = "text" name = "desc" size = "40"></td>
</ tr>
<tr>
<td width = "25%"> Port number </ td>
<td width = "75%"><input type = "text" name = "port" size = "40"></td>
</ tr>
<tr>
<td width = "25%"> Public path </ td>
<td width = "75%"><input type = "text" name = "path" size = "40"></td>
</ tr>
<tr>
<td width = "25%"> Content </ td>
<td width = "75%"><input type = "file" name = "contents" size = "40"></td>
</ tr>
</ table>
<p align = "right">
<input type = "submit" value = "send" name = "send">
<input type = "reset" value = "clear" name = "clear" onclick = "clearContent ()">
</ p>
</ form>
</ body>
</ html>
First, processing in which the
コンテンツ管理ページの新規ボタン5020をコンテンツ供給マシン7020上で動作するHTMLブラウザでクリックすると、ページ内の隠しフィールドであるcommandフィールドに"new"という文字列を設定し、コンテンツ管理ページのフォームのアクションとして指定されたページであるregisterをHTTPのPOSTコマンドでアクセスする。
When the
registerにはServletプログラムが格納されており、このServletプログラムで実際のコンテンツ処理が行なわれる。 Register stores a Servlet program, and this Servlet program performs actual content processing.
隠しフィールドの値を読み込み、"new"と言う文字列であれば、コンテンツIDを新たに生成し、ID表示フィールド5035にコンテンツIDを設定し、隠しフィールドであるidに同じくコンテンツIDを設定し、記述フィールド5040、ポート番号フィールド5045、公開パスフィールド5046、及びコンテンツファイルフィールド5050に値が設定されていないコンテンツ管理ページをPOSTコマンドの結果として返す。
If the value of the hidden field is read and the character string is "new", a new content ID is generated, the content ID is set in the
コンテンツ供給マシン7020にPOSTコマンドの結果として返されたコンテンツ管理ページが表示されて、操作者が記述フィールド5040、ポート番号フィールド5045、公開パスフィールド5046、コンテンツファイルフィールド5050に必要なデータを入力し、送信ボタン5060をクリックすると新規作成時と同様にregisterをPOSTコマンドでアクセスする。
The content management page returned as a result of the POST command is displayed on the
registerでは隠しフィールドcommandに値が設定されておらず、隠しフィールドidに値が設定されていることを検知して、隠しフィールドidに設定されているコンテンツIDをキーとしてコンテンツ管理部3010の管理しているデータベースを検索し、HTTPリクエストによって設定されているコンテンツIDがデータベースに登録されているかを調べる。登録されている場合は、後述する変更処理を行なう。登録されていない場合は記憶部2020にコンテンツフィールド5050で指定されたコンテンツ情報を格納し格納場所の内部パス情報を取得する。この内部パス情報と、コンテンツID、記述フィールド5040に設定されている記述情報、公開パスフィールド5046に設定されている外部パス情報、ポート番号フィールド5045に設定されているポート番号情報、アクセスしている登録者のユーザIDからなるレコードをデータベースに登録する。同時にネットワーク管理部3020に指定されたポートを開くよう依頼する。
In the register, the value is not set in the hidden field command and the value is set in the hidden field id, and the
ポートを開くよう依頼されたネットワーク管理部3020は、指定されたポートが開かれている場合は、指定されたポート番号に対するポートリクエストカウンターに1加算する。開かれていない場合はポートを開き、ポート番号に対するポートリクエストカウンターに1を設定する。
The
次に、コンテンツ供給マシン7020が、サーバマシン7010に既に登録されているコンテンツの登録情報を変更する処理について説明する。
Next, processing in which the
コンテンツ管理ページの編集ボタン5030をコンテンツ供給マシン7020上で動作するHTMLブラウザでクリックすると、ページ内の隠しフィールドであるcommandフィールドに"edit"という文字列を設定し、コンテンツ管理ページのフォームのアクションとして指定されたページであるregisterをHTTPのPOSTコマンドでアクセスする。
When the
register では、隠しフィールドcommandの値を読み込み、"edit"と言う文字列であれば、選択されているラジオボタン5015に対応するコンテンツIDフィールドを検出する。これは選択されているラジオボタンの名前、"con#"(#は数字)から数字部分を抽出し、同じ数字を名前に内包するコンテンツIDフィールド"conid#"を探すことによって行なう。例えば、"con10"という名前のラジオボタンが選択されている場合は、"conid10"という名前のコンテンツIDフィールドが対象として検出される。検出されたコンテンツIDフィールドに格納されているコンテンツIDによってデータベースを検索し、指定されたコンテンツIDに対応するレコードを取得する。レコードが取得できない場合は、新規作成時と同じ処理を行なう。レコードが取得できた場合は、取得できたレコードからコンテンツIDをID表示フィールド5035と隠しフィールドであるidに、記述情報を記述フィールド5040に、ポート番号情報をポート番号フィールド5045に、外部パス情報を公開パスフィールド5046に設定されているコンテンツ管理ページをPOSTコマンドの結果として返す。
The register reads the value of the hidden field command, and if it is a character string “edit”, the content ID field corresponding to the selected
コンテンツ供給マシン7020にPOSTコマンドの結果として返されたコンテンツ管理ページが表示されて、操作者が記述フィールド5040、ポート番号フィールド5045、公開パスフィールド5046、コンテンツファイルフィールド5050に変更が必要な場合はデータを変更し、送信ボタン5060をクリックするとregisterをPOSTコマンドでアクセスする。
If the content management page returned as a result of the POST command is displayed on the
registerでは隠しフィールドidに設定されているコンテンツIDをキーとしてコンテンツ管理部3010の管理しているデータベースを検索し、HTTPリクエストによって設定されているコンテンツIDを検索し対応するレコードを取得する。レコードが取得できない場合は、前述した新規処理を行なう。レコードが取得できた場合、コンテンツフィールドが値を持つ場合は、新たに記憶部2020にコンテンツフィールド5050で指定されたコンテンツ情報を格納し格納場所の内部パス情報を取得する。取得したレコードに記録されていた内部パスに格納されているコンテンツは削除される。この内部パス情報と、コンテンツID、記述フィールド5040に設定されている記述情報、公開パスフィールド5046に設定されている外部パス情報、ポート番号フィールド5045に設定されているポート番号情報、登録者のユーザIDからなるレコードをデータベースに更新する。ポート番号が以前のレコードの情報と異なる場合は、ネットワーク管理部3020に以前のポート番号を閉じ、新しいポート番号を開くように依頼する。
The register searches the database managed by the
ポートを閉じるよう依頼されたネットワーク管理部3020は、指定されたポートが開かれている場合は、指定されたポート番号に対するポートリクエストカウンターに1減算する。その結果ポートリクエストカウンターが0になった場合はポートを閉じる。
The
ポートを開く処理は前述したとおりである。 The process for opening the port is as described above.
次に、コンテンツ供給マシン7020が、サーバマシン7010に既に登録されているコンテンツを削除する処理に付いて説明する。
Next, a description will be given of processing in which the
コンテンツ管理ページの削除ボタン5025をコンテンツ供給マシン7020上で動作するHTMLブラウザでクリックすると、ページ内の隠しフィールドであるcommandフィールドに"delete"という文字列を設定し、コンテンツ管理ページのフォームのアクションとして指定されたページであるregisterをHTTPのPOSTコマンドでアクセスする。
When the
register では、隠しフィールドcommandの値を読み込み、"delete"と言う文字列であれば、選択されているラジオボタン5015に対応するコンテンツIDフィールドを検出する。これは選択されているラジオボタンの名前、"con#"(#は数字)から数字部分を抽出し、同じ数字を名前に内包するコンテンツIDフィールド"conid#"を探すことによって行なう。例えば、"con10"という名前のラジオボタンが選択されている場合は、"conid10"という名前のコンテンツIDフィールドが対象として検出される。検出されたコンテンツIDフィールドに格納されているコンテンツIDに対応するレコードを取得する。レコードが取得できない場合は、指定されたレコードが存在しないことを表示するページを返す。レコードが取得できた場合は、取得したレコードに記録されている内部パスに格納されているコンテンツは削除される。ネットワーク管理部3020に取得したレコードに記録されているポート番号閉じるように依頼する。
In register, the value of the hidden field command is read, and if the character string is “delete”, the content ID field corresponding to the selected
ポートを閉じる処理は前述したとおりである。 The process for closing the port is as described above.
次に、サーバマシン7010において、コンテンツ公開処理部3030が、クライアントマシン7030からの公開要求にこたえる処理について説明する。
Next, processing in which the content
コンテンツ公開処理部3030は、クライアントマシン7030から公開すべき情報をURLで指定される。コンテンツ公開処理部3030は、指定されてURLからポート番号と、外部パス情報を抽出する。抽出したポート番号と、外部パス情報を指定してコンテンツ管理部3010に指定したポート番号と外部パス情報を持つレコードがコンテンツ管理部3010の管理するデータベースに登録されているかを問い合わせる。
The content
登録されていない場合、外部パスのセグメントを後ろから取り除いて生成されたパスを外部パスとして再度データベースを検索し登録されているかを調べる。
登録されているデータベースのレコードが見つからない場合は、ページが見つからなかったことを示すコードをページ要求の応答として返す。
If not registered, the database is searched again using the path generated by removing the segment of the external path from the back as an external path to check whether it is registered.
If the registered database record is not found, a code indicating that the page was not found is returned as a response to the page request.
登録されているレコードが見つかった場合、レコードを見つけたときの登録外部パス、内部パスと、URLとして指定された外部パスから、対象となる情報の格納されている内部パスを生成する。例えば、指定されたURLの外部パスが"/a/b/c"であり、"/a"を外部パス、"/var/contents/80/100211"を内部パスとしたレコードが検出された場合、"/var/contents/80/100211/b/c"をパスとするファイルを探す。ファイルが見つかった場合は、その内容を要求の応答として返す。ファイルが見つからない場合は、ページが見つからなかったことを示すコードを応答として返す。 When a registered record is found, an internal path storing target information is generated from the registered external path and internal path when the record is found, and the external path specified as the URL. For example, when the external path of the specified URL is "/ a / b / c", a record with "/ a" as the external path and "/ var / contents / 80/100211" as the internal path is detected Search for a file whose path is "/ var / contents / 80/100211 / b / c". If the file is found, its contents are returned as a response to the request. When the file is not found, a code indicating that the page was not found is returned as a response.
本実施例では、登録されたコンテンツは登録されるとすぐ有効になり、登録が解除されるまでアクセス可能であるように構成されているが、登録時に公開する期間(公開開始日時、終了日時)や毎日決まった時間帯に公開するなどといった公開期間を指定し、ユーザマシンからアクセス要求がされた場合に、要求のあった時間が公開期間内に入っているかを検出して入っている場合にのみアクセスを許可するようコンテンツ管理部3010を構成することも可能である。
In this embodiment, the registered content becomes effective as soon as it is registered, and can be accessed until the registration is canceled. When the access period is specified, such as when the user machine is requested to be published at a certain time every day, and when an access request is made from the user machine, it is detected whether the requested time is within the disclosure period. It is also possible to configure the
また、ポートごとにポートが開かれうる時間帯を設定し、その時間帯以外ではたとえそのポートを使用して公開すべきコンテンツが存在していたとしてもポートを開かないようにネットワーク管理部3020を構成することも可能である。
Also, for each port, set a time zone during which the port can be opened, and the
さらに、本実施例では、ユーザ認証をパスしたユーザは、有効な全てのポートを指定可能であるように構成されているが、ユーザ毎に指定できる公開ポートを管理し、許可されていないポート番号を指定して登録要求がなされたときに登録を拒否するようにコンテンツ管理部3010を構成することも可能である。
Furthermore, in this embodiment, a user who has passed user authentication is configured to be able to specify all valid ports, but manages public ports that can be specified for each user, and port numbers that are not permitted. It is also possible to configure the
1020 コンテンツ
2040 バス
7010 サーバマシン
7020 コンテンツ供給マシン
7040 ネットワーク
1020
Claims (7)
コンテンツ登録/変更時にコンテンツを公開すべきネットワークの通信ポートをコンテンツに対して指定する公開ポート指定手段を有し、前記公開ポート指定手段によって通信ポートを指定されたコンテンツが存在しているときにのみ該当する通信ポートを利用可能とする通信ポート管理手段を持つことを特徴とするコンテンツ公開装置。 Connected to a network such as the Internet and registered in a form that can publish content to be published and a content publishing means that publishes content such as HTML pages, images, and programs in response to publishing requests sent via the network. In a content publishing apparatus having content management means for managing content such as changing the content of registered content and deleting registered content,
A public port designating unit for designating the communication port of the network to which the content should be published at the time of content registration / change, and only when the content for which the communication port is designated by the public port designating unit exists A content publishing apparatus comprising communication port management means for enabling use of a corresponding communication port.
コンテンツを登録/変更時にコンテンツを公開すべきネットワークの通信ポートをコンテンツに対して指定し、通信ポートを使用するよう指定されたコンテンツが存在しているときにのみ該当する通信ポートを利用可能とすることを特徴とするコンテンツ公開システム。 Connect to a network such as the Internet, publish content that publishes content such as HTML pages, images, and programs in response to publishing requests sent over the network, register the content to be published, In a content publishing system that manages content such as changing the contents of registered content and deleting registered content,
When a content is registered / changed, the network communication port to which the content is to be disclosed is specified for the content, and the corresponding communication port can be used only when the content specified to use the communication port exists. A content publishing system characterized by this.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004223333A JP2006040219A (en) | 2004-07-30 | 2004-07-30 | Content disclosure device, system and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004223333A JP2006040219A (en) | 2004-07-30 | 2004-07-30 | Content disclosure device, system and medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006040219A true JP2006040219A (en) | 2006-02-09 |
Family
ID=35905099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004223333A Withdrawn JP2006040219A (en) | 2004-07-30 | 2004-07-30 | Content disclosure device, system and medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006040219A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009251710A (en) * | 2008-04-02 | 2009-10-29 | Kyocera Mita Corp | Image forming apparatus and program |
JP2010049537A (en) * | 2008-08-22 | 2010-03-04 | Hitachi Ltd | Information processing system, management apparatus, program, information processing method and management method |
-
2004
- 2004-07-30 JP JP2004223333A patent/JP2006040219A/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009251710A (en) * | 2008-04-02 | 2009-10-29 | Kyocera Mita Corp | Image forming apparatus and program |
JP2010049537A (en) * | 2008-08-22 | 2010-03-04 | Hitachi Ltd | Information processing system, management apparatus, program, information processing method and management method |
JP4639251B2 (en) * | 2008-08-22 | 2011-02-23 | 株式会社日立製作所 | Information processing system, management apparatus, program, information processing method, and management method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10044753B2 (en) | Intercepting and supervising calls to transformed operations and objects | |
Darrell et al. | Robust estimation of a multi-layered motion representation | |
US11552936B2 (en) | Management of dynamic credentials | |
US6006332A (en) | Rights management system for digital media | |
US6976077B1 (en) | Automatic and transparent synchronization of server-side state information with a client application | |
EP0981885B1 (en) | Apparatus and method for identifying clients accessing network sites | |
US8341104B2 (en) | Method and apparatus for rule-based masking of data | |
US6182229B1 (en) | Password helper using a client-side master password which automatically presents the appropriate server-side password in a particular remote server | |
JP3966487B2 (en) | Object redirection management method and method for enabling applet communication | |
US7673045B1 (en) | Multiple site automated logout | |
JP2009134725A (en) | Method and system for extracting application protocol characteristics | |
JP3662734B2 (en) | Web page access control apparatus and method | |
JP5347429B2 (en) | Uniform resource locator rewriting method and apparatus | |
US20070022190A1 (en) | Method for access management | |
RU2272318C2 (en) | Computer-readable data carrier, on which image file is recorded, device for making a data carrier, carrier on which program is recorded for forming an image file, device for transferring image file, device for processing image file and carrier, on which program for processing an image file is recorded | |
JP2003067336A (en) | Computer system and user management method | |
JP4240929B2 (en) | Access control method in file management system | |
JP3563619B2 (en) | Application function designating device and storage medium | |
JP3520264B2 (en) | Authentication information input system, authentication information storage system, authentication information input method and authentication information input program | |
Weiss | Patterns for web applications | |
JP2004086313A (en) | Method and device for authentication | |
JP6391143B2 (en) | Access control apparatus, information sharing system, program, and access control method | |
JP2006040219A (en) | Content disclosure device, system and medium | |
JPH11272613A (en) | User authentication method, recording medium stored with program for executing the method, and user authentication system using the method | |
JP5097418B2 (en) | Session management apparatus, program, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071002 |