CGI ComSys User's Help

Ver.3.04.03112001R
2003.11.20
Osamu Ishikawa (NV)
nv@bannaguro.net

概 要
ログオンページ
留意事項など
コマンドボタン
メッセージ表示画面
その他

概 要

ComSys は独自のプロトコルによるインターネットコミュニケーションシステムであり、同時に無手順ホスト機能も併せ持っているが、これまでは Web からのアクセスはできなかった。 CGI ComSys は従来からの ComSys OLC (On-Line Community) サーバに Web のブラウザからのアクセスも可能にするために新たに開発した ComSys の CGI バージョンである。

ここでいう OLC とは、パソコン通信における電子掲示板(BBS)に相当するシステムである。WWW の情報の流れがサーバからクライアントへの一方通行であるのに対し、OLC ではアクセスするすべてのユーザが情報の読み出しとともに書き込みもできる。ネットワークを介して個々人が対等な立場で参加して形成するボーダレスな共同体である、という側面を強調して On-Line Community と名づけている。

これは CGI ComSys の一般ユーザのログオンページ (Welcome.html) 用のヘルプドキュメントである。

ログオンページ

User_ID :
[新規登録] ボタンで取得した User_ID を入力します.
ハンドルではログオンできません.
guest と入力してゲストアクセスが可能です.
Password :
登録したパスワード (8バイト以内) を入力します.
ゲストアクセスの場合パスワードは不要です.
ログオンします.
User_ID, Password 入力欄をリセットします.
このヘルプページを表示します.
新たにアカウントを取得するときにクリックします.
登録のための設問ウィンドウが開きます.
設問にはすべてに回答して [送信] します.
交付された User_ID は,それ以後ログオンする際に必要ですので忘れないでください.
User_ID を忘れた場合に照会します.
登録した名前(アルファベット)とハンドルの入力を求められます.

留意事項など

新規登録とアカウント

新規登録にはあらかじめホストシステムに設定された問い合わせ項目に回答して [送信] する必要がある。問い合わせ項目の内容、個数はそれぞれのシステムによって必ずしも同じではないが、名前(アルファベット)、ハンドル、パスワードの3つはどのシステムでも必須項目になっている。

基本的には設定されているすべての項目に回答しなければアカウントは取得できないが、どうしても回答不能の項目にはその旨記入することでとりあえずアカウントを取得することは可能である。パスワードを含めこれらの項目は取得後いつでも変更可能である。

アカウントを取得するとユーザ番号 (User_ID)ユーザレベル (最初は 'A') が交付される。User_ID はホストシステム固有の Host ID の 3バイトに続いて 16進数 5桁で構成される。アカウント取得後はこの User_ID と 回答したパスワードの入力によりログオンする (ハンドルではログオンできない)。User_ID、パスワードは決して忘れてはいけない。特にパスワードは簡易暗号化されていてシステム管理者にも読み取れないので問い合わすこともできない。

CGI ComSys のボードにはシステム管理者によりボードごとにアクセスレベルとボードパスワードが設定されている場合もある。交付されたユーザレベルより高いアクセスレベルに設定されているボードは不可視となる。同等、あるいはそれ以下のレベルでもパスワードが設定されているボードの場合は、選択時にボードパスワードの入力を求められる。

またシステム管理者は [アクセスログ], [ユーザリスト] 表示コマンドにもそれぞれ別個のアクセス許容レベルを設定可能なので、ユーザレベルによってはゲストでなくてもコマンドボタンが非表示となる場合もありうる。

ユーザレベルはアカウント取得後それぞれのシステム管理者の考え方に基づいて変更されることがありうる。'@' では一時的にアクセスできなくなる。

ゲストアクセス

アカウントを取得していなくても User_ID に "guest" と入力 (Password は不要) して [ログオン] することにより試験的にログオンすることができる。

ゲストでは使えないコマンド ([アクセスログ], [ユーザリスト], [登録確認]], [ログオンデータ] など) とか、システムによってはゲストを許可しないボードなど、ゲストアクセスにはかなり制約がある。できることなら正式にアカウントを取得されることが望ましい。

ブラウザの要件

・フレームを表示できること
・Java Script に対応していること

注意

Java Script を有効にするということについて

1] ブラウザによっては Script の実行に関して深刻なセキュリティホールを内在させているということが判明している。Intenet Explorer を使用している場合には、常に最新のセキュリティパッチプログラムを適用しておくことが Script 使用の最低限の要件である。

2] ブラウザの種別 (セキュリティホールの有無) に依存せず、Script の使用にはクロスサイトスクリブティングの危険性が指摘されている。CGI ComSys ではクロスサイトスクリプティングの脆弱性への対応は済ませているつもりではあるが、スクリプトタグの透過の是非についてはオプション制を取っているので、システム管理者ないしユーザ側の責任でオプションを選択してほしい。

クロスサイトスクリプティングの脆弱性は Web アプリケーションに依存することなので、たとえセキュリティホールのないブラウザを使用していたとしても脆弱性を内在するサイトにアクセスした場合 Script を有効にしておくと危険に晒されることになる。そして危険なサイトがいまだに数多く存在しているということも常々指摘されている。Java Script の処理については、十分な注意を払う必要がある。

リッチテキストの表示

独自プロトコルの ComSys では標準の書き込み形式がプレーンテキストではなくリッチテキストになっている。CGI ComSys が単独で稼動している場合にはとくに問題にはならないが、既存の ComSys との間でのデータ共有モードで稼動している場合には注意が必要である。

一般的なブラウザには通常リッチテキストを表示する機能はない。そのため CGI ComSys ではリッチテキスト形式で書き込まれたメッセージをユーザ (ブラウザ) に送信するときのモードとして次の2つが用意されている。

@ [RTF 形式] リッチテキストのままで送信し、それを表示するのはブラウザ側にまかせる。
A [HTML 形式] リッチテキストを HTML 形式に変換してから送信する。

@ はサーバの負担は軽いが、リッチテキストを表示するかしないかはユーザ側にまかせられる。

ブラウザでリッチテキストを表示するためには

拡張子 = rtf
MIME形式 = application/rtf

で、リッチテキストを表示可能なアプリケーション (Word あるいは Windows なら Wordpad など) をあらかじめ登録しておく必要がある。

【Netscape 4.7】

[編集] - [設定] - [Navigator] - [アプリケーション] を選択
説明欄で "WINWORDファイル" を探し、その "ファイルタイプの詳細" が
拡張子           RTF
MIMEタイプ      application/rtf
開くプログラム  WINWORD あるいは WORDPAD などリッチテキスト表示可能なアプリケーション
であればよい。

【Intenet Explorer】

Windows の エクスプローラで [表示] - [フォルダオプション] - [ファイルタイプ] を選択
登録されているタイプ欄で "リッチテキスト形式" を探し (なければ [追加] で作成)、その "ファイルタイプの詳細" が
拡張子              RTF
内容の種類        application/rtf
アプリケーション  WINWORD あるいは WORDPAD
であればよい。

A は以前はサーバ側で Microsoft Word の機能を用いて変換を行っていたが、現在ではシステム自身にその変換機能が内蔵されている。

Word を用いるのに比べ、処理が軽くなり変換速度が極めて高速化された。
通常はこちらを利用することを推奨する。

ブラウザのキャッシュ機能について

以前はブラウザ側でキャッシュ機能を利用しないように設定しておく必要があったが、現バージョンではキャッシュ機能に関する制約は解除されている。
キャッシュ機能についてブラウザがどのように設定されていても問題なくアクセス可能である。

クッキー

ユーザがいちいち入力する手間を省くという目的だけのために、 CGI ComSys では ID とパスワードについてのみクッキーを利用することができる。アクセス履歴など、個々のユーザのアクセスデータの保存にはクッキーは一切使用していない。

ユーザが使用しているブラウザのクッキーを有効にしてアクセスすると、クッキー情報として User_ID と独自の方法で暗号化されたパスワードが CGI ComSys から送信されてユーザのハードディスクに保存される。次回アクセス時には User_ID もパスワードも入力せずに [ログオン] ボタンをクリックするだけで、保存されているクッキー情報が CGI ComSys へ送信されてログオン可能となる。

入力の手間は省けるが、同じマシン (ブラウザ) からなら誰でも同一人物としてログオンできることになるので注意しなければいけない。またクッキーを保存しているファイルは通常単なるテキストファイルなので、コピーして別のマシンに貼り付ければもともとのパスワードを知らなくても他人に「なりすまし」てアクセスできる危険性もあわせもつ。

さらにより危険なことは、使用するブラウザによってはクッキー情報が漏洩あるいは変更されてしまうというセキュリティホールを内在していることもあるということである。Internet Explorer を使用している場合には常に最新のセキュリティパッチプログラムを当てておく必要があるだろうし、Netscape Navigater についても少なくともバージョン 6.2.1 以上の使用が最低限必要である。 

安全性のためには、できれば入力の手間を惜しまずクッキーを無効にしておくことが望ましいかもしれない。クッキーを無効にする方法について、使用しているブラウザのマニュアルを参照してほしい。

なおクッキーの有効期間は10日間である。

クロスサイトスクリプティング (CSS) の脆弱性について

CGI ComSys のような CGI システムの多くでは、ユーザのリクエストにしたがってその都度動的にページが表示されるわけであるが、ユーザが入力したデータ内容がページの一部としてそのまま出力される場合、無許可のスクリプトがブラウザに渡されて実行され、その結果たとえばクッキー情報を盗まれるなどのクロスサイトスクリプティング (CSS) のセキュリティ問題の危険性が指摘されている。

クロスサイトスクリプティングの脆弱性を回避するために、CGI ComSys ではユーザが入力したデータの中に HTML のタグを記述するために用いられる特殊な文字 (<, >, ", ', & など) が含まれる場合、それらをページの一部として送信する時にはできるだけ変換処理を施すようにしている。

しかしボードへの書き込み (タイトル部分も含めて) にまで変換処理を施すと HTML のタグがすべて無効になってしまい、リンクの埋め込みはもとより書き込みの表現が味のない平板なものになってしまう。そのため CGI ComSys では書き込みに関するタグの処理はシステム管理者の選択に委ねることにしている。

システム管理者が、表現を重視しボードへの書き込み部分のタグを有効 (すべて透過) としている場合、タグの処理方法の選択はユーザ側に委ねられる。この場合 [システム情報] で
1) すべて透過 … 書き込み内容を無変換で送信する (タグ有効)
2) すべて禁止 … 特殊文字をすべて変換して送信する (タグ無効)
3) SCRIPT タグなどの禁止 … SCRIPT, OBJECT, EMBED, APPLET タグを無効にする
のいずれかを選択する。

スクリプトタグなどを有効とすると、悪意のあるユーザによるクロスサイトスクリプティングの脆弱性をついた危険な書き込みがユーザのブラウザ上で実行される可能性も残っているので十分注意してほしい。

REFERER 情報を取得されないために

たとえばボードに書き込まれたメッセージの中にリンクが埋め込まれていた場合、 後でそのメッセージを読んだユーザがリンクをクリックするとそのときの Referer ヘッダが悪意ある Web サーバ管理者に送信されてしまうことになる可能性がある。 Referer ヘッダの中にユーザのセッション情報などが含まれていると、なりすましアクセスを許すことにつながりかねない。

その危険性を回避するために、コマンドボタンのすべて、ボードパスワード投入時、ボードおよびメッセージの選択時、フォローボタンなどの送信要求、を GET メソッドから POST メソッドに変更した。

その結果、ユーザのブラウザの設定によっては、フォームデータ送信時の確認警告メッセージがそのつど表示されることになる。

既読、未読管理

メッセージのタイトルリストでは、未読と既読とが色分けされる。またボードのタイトル一覧でも、未読メッセージがあるものとないものとが同じように色分けされる。色の種類についてはカスタマイズ可能なのでシステムごとに異なる場合がある。

CGI ComSys では個々のユーザについてボードごとの既読ポインター管理までは行っていない。未読か既読かの判定は、メッセージのポスト日時とそれぞれのユーザの前回ログオン日時との比較で行なう。未読メッセージが残っている状態でログオフすると、次回ログオン時には実際に読んでいなくてもそれらは既読扱いとなる。

ポストしたメッセージの削除

自分が書き込んだメッセージは当該メッセージを表示すると [削除] ボタンが現れるのでこれをクリックすることにより削除できる。

ゲストアクセスで書き込んだメッセージはたとえ自分のものであっても削除できない。

なおサブ管理者 User_ID (***00000 から ***0000F まで) でログオンすると、すべてのメッセージについて削除権限を有する。

重複アクセスについて

同一ユーザ番号での重複アクセスは原則として排除される。

正規のログオフ手続きをせずに (ログオン状態のまま) 同じマシンからログオンすると "すでにログオンしている" との表示がなされその直前の状態から継続してのアクセスが可能であるが、異なるマシンからログオンしようとすると拒絶される。

積極的な意思によらないログオフ

1) タイムアウトによる強制ログオフ
設定された無入力タイムアウト時間 (システムによって異なる) を超えてコマンド入力がなければ強制的にログオフされられる。ただしデータ転送中は回避される。

2) メンテナンスによるログオフ
システム管理者によるなんらかのメンテナンスが行われようとした場合、および設定された自動メンテナンス時刻に達した場合、その時点でログオンしていたユーザはすべて強制的にログオフさせられる。

上記の時間、時刻はいずれも [システム情報] で確認できる。

プロバイダ経由のアクセス (固有の IP アドレスを持たず、アクセスのつど動的に IP アドレスが交付される→アクセス中も IP アドレスが変化する) の場合などで上記に関係なくログオン後アクセスが拒絶されることがあるかもしれない。その場合は、アクセス対象のホストシステムのセキュリティレベルが高く設定されていることが考えられるので、システム管理者にそのむね問い合わせて欲しい。

バイナリファイルのダウンロードについて

現在確認済みの問題

1) .exe , .dll などのファイルを Internet Explorer を使ってダウンロードする際、デフォルトの保存ファイル名に拡張子が抜ける。必ず拡張子を補って保存して欲しい。

2) .wav を Netscape でダウンロードした場合、再生されない。いったんファイルに保存後オフラインで再生して欲しい。

コマンドボタン

コマンド
CGI ComSys が既存 ComSys とデータ共有モードで稼動しているとき
コマンド
CGI ComSys が単独で稼動しているとき

ボードが選択されてタイトルリストが表示されているとき
現在表示されているリストより新しいリストを表示する
現在表示されているリストより古いリストを表示する
ボードが選択されてメッセージが表示されているとき
現在表示されているメッセージよりひとつ新しいメッセージを表示する
現在表示されているメッセージよりひとつ古いメッセージを表示する
ボードが選択されているとき
現在のボードにテキストメッセージをポストする
現在のボードに任意のファイルをアップロードする
ボードが選択されてタイトルリストが表示されているとき
最新のタイトルリストを表示する
ボードが選択されてメッセージが表示されているとき
現在表示されているメッセージを含むタイトルリストを表示する
以下のボタンはログオンしたら常に表示される
ボードの一覧を表示する。自分のレベルより高いレベルのボードは表示されない。
最近アクセスしたユーザをのリストを表示する(新しい順に30行) [ゲスト不可]
現在アカウントを取得しているすべてのユーザのリスト [ゲスト不可]
パスワードも含め自分のアカウント登録内容を表示し必要なら変更できる [ゲスト不可]
現在のシステム設定値、バージョン情報、ヘルプおよび管理者からのメッセージ、問い合わせ先などを表示する。
HTML タグの処理方法の選択もここで行う [選択についてはゲスト不可]
今回および直前のログオン時のデータを表示する [ゲスト不可]
「なりすまし」アクセスのチェックにも活用して欲しい。
ログオフする

メッセージ表示画面

タイトルヘッダ部

以下の項目が表示される。
番号 メッセージの通算番号
タイトル メッセージのタイトル
フォロー先

該当メッセージがフォローメッセージの場合フォローされたメッセージの番号
この番号をクリックすることによりフォローされたメッセージが表示される

アドレス メッセージ・ポスト時の IP アドレス
ハンドル メッセージ・ポスト者のハンドル
ID メッセージ・ポスト者の ID
Eメール メッセージ・ポスト者の E-メール・アドレス
日付 メッセージ・ポスト時の日時
バイト メッセージの全バイト数
ファイル名 メッセージがファイルとしてアップロードされた場合、そのファイル名
ファイル名をクリックすればダウンロード可能
リッチテキスト メッセージがリッチテキスト形式の場合、リッチテキストのままで送信するか、HTML形式に変換して送信するかを選択して受信/表示する

オプションボタン

現在表示されているメッセージに対してフォロー書き込みしたいときに用いる
通常の書き込みは [書き込み] ボタンによる

現在表示されているメッセージになんらかのフォロー関係が存在する場合ボタンが表示される
クリックすると別ウィンドウが生成されて、関連メッセージ・フォロー・リストがトリー状に表示される
このウィンドウを閉じるときは Windows 標準の右上隅 [閉じるボタン] によらずに、フォロー・リスト・ウィンドウ自身の [閉じる] ボタンをクリックしてほしい
また、このウィンドウは [ボード一覧], [ログオフ] ボタンによっても閉じられる

現在表示されているメッセージのポスト者に対してボタンが表示される
ポスト者であるかどうかは ID 番号によって照合される
サブ管理者の ID 番号でログオンすると、ポスト者でなくても削除可能
タイトルヘッダ部を押し上げ、メッセージ本体をページ・トップから表示する

メッセージ本体

メッセージが通常のプレインテキスト形式の場合、あるいは HTML 形式の場合、つづけてメッセージ本体が表示される。

その他

● システム構成ページ用ヘルプ (管理者向け)

CfgHelp.html

ComSys ホームページ