目次


【 ACL(アクセス制御リスト) 】


このマニュアルはホストシステム管理者(アドミニストレータ)を対象としたマニュアルです。

  開発者マニュアル


概要

BIG-Model における ACL(アクセス制御リスト)は、シスオペ( System Oprator )やゲスト( Guest )など、一般的なユーザ権限のほか、一部のユーザ(またはユーザグループ)にのみ提供されるサービス CUG( Closed User Group )のためのユーザ区分などを設定することができました。
BIG-Model のバージョンアップやリリース時期の社会情勢を反映するように、ACLの機能が段階的に拡大していくのですが、設定方法が非常に煩雑で、初心者のシスオペには理解しがたいものがあったのかと個人的には思うのですが。

仕様

各種の設定ファイルに権限を付与または剥奪するユーザIDを追加し、各ディレクトリに配置することで機能します。
BIG-Model 4.0では、ユーザのグループ管理が可能になり、従来のユーザIDによる指定の他、グループ名で指定できるようになっています。グループの仕組みについてはこちらのページをご参照ください。

シスオペ権限(SYSOPID)

シスオペ権限はシスオペコマンド( SYST )の実行権限を持つことができ、システムの停止やユーザ管理、掲示板や投稿の管理など、全権限を掌握します。

ディレクトリ DANGER/OTHERS に ファイル SYSOPID を設置し、任命するユーザIDを追加することで付与されます。

[ DANGER ]
  +--[ OTHERS ]
  |    +--[ SYSOPID ]		← 任命するユーザを追加

ゲスト権限(GUESTID)

ゲスト権限はユーザIDを作成しなくてもログインを行うことができる特別な権限を持つユーザですが、ユーザIDを作成していない分、身分を明かさないので、一部のサービスの利用が制限されることがあり、例えば、電子メールや電報、電子掲示板の投稿ができないように制限されますが、これらはホストシステムの仕様ではなく、シスオペ権限によるため、シスオペの裁量により利用を許可していた運営局もあったようです。

ディレクトリ DANGER/OTHER に ファイル GUESTID を設置し、任命するユーザIDを追加することで付与されます。
ただし追加するユーザIDは、すでに登録されているユーザIDを指定することができないため、登録していないIDをゲストIDとして登録します。

[ DANGER ]
  +--[ OTHERS ]
  |    +--[ GUESTID ]		← 任命するユーザを追加

ゲストIDでログインすると、プロフィール(ハンドルネーム)の入力が促され、入力するとシステムが開始されます。

IDを入力してください : BIG00000
プロフィールを入力してください :

シグオペ権限(SIGOPID)

シグオペ権限は、掲示板の投稿を削除する権限を付与されます。

ディレクトリ DANGER/BOARD 以降の掲示板のディレクトリ内にファイル SIGOPID を設置し、任命するユーザIDを追加することで付与されます。
ディレクトリ DANGER/BOARD 以降のサブディレクトリに配置しても権限は有効にならないため、ファイル SIGOPID は必ず、末端の掲示板ディレクトリに配置します。

[ DANGER ]
  +--[ BOARD ]
  |    +--[ 1 ]					← 掲示板(1)
  |         +--[ SIGOPID ]		← 掲示板(1)のシグオペに任命するユーザを追加

メンバー権限(MEMBER/NMEMBER)

メンバー権限は、一部のユーザ(およびユーザグループ)にのみサービスを提供し、それ以外のユーザを締め出します。
バージョン 3.0 では、電子掲示板にのみ設定を行うことができましたが、バージョン 4.0 では、チャットルームにも設定を行うことができるようになっています。
掲示板では、ディレクトリ DANGER/BOARD 以降の掲示板のディレクトリ内にファイル MEMBER またはファイル NMEMBER を設置することで設定を行います。
ファイル MEMBER は、ファイルに追加されたユーザIDが設置したディレクトリ以降の掲示板を利用することが許可され、追加されていないユーザは利用を拒否されます。
ファイル NMEMBER は、反対に、ファイルに追加されたユーザIDが設置したディレクトリ以降の掲示板の利用を禁止し、追加されていないユーザは利用を許可されます。
ファイル NMEMBER と ファイル MEMBER が同一ディレクトリに設置されている場合、ファイル MEMBER の設定が無効となり、ファイル NMEMBER の設定が有効となります。

例えば、

[ DANGER ]
  +--[ BOARD ]					← 掲示板ディレクトリ
  |    +--[ 1 ]					← 掲示板(2)
  |         +--[ NMEMBER ]		← ユーザ BIG00002 を追加
  |         +--[ MEMBER ]		← ユーザ BIG00002 を追加

のようにファイルを設置した場合、ファイル MEMBER の設定が無効となり、ファイル NMEMBER の設定が有効になります。
したがって、ユーザ BIG00002 は掲示板(1)から締め出されます。

また、次のような場合、

[ DANGER ]
  +--[ BOARD ]					← 掲示板ディレクトリ
  |    +--[ 1 ]					← 掲示板(1)
  |         +--[ MEMBER ]		← 誰も追加していない空ファイル

は、ファイル MEMBER に許可するユーザが追加されていないため、全てのユーザが掲示板(1)から締め出されます。

さらに、次のような場合、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)のサブメニュー
  |         +--[ SUBMENU ]
  |         +--[ NMEMBER ]			← ユーザ BIG00002 を追加
  |         +--[ 1 ]				← 掲示板(1-1)
  |              +--[ MEMBER ]		← ユーザ BIG00002 を追加

は、掲示板(1-1)の上位にあたる掲示板(1)のサブメニューのディレクトリで、ファイル NMEMBER に、ユーザ BIG00002 が拒否ユーザとして登録されているため、掲示板(1)の配下にある掲示板(1-1)のディレクトリでファイル MEMBER に ユーザ BIG00002 を登録していても無効となり、ユーザ BIG00002 は掲示板(1)と掲示板(1-1)から締め出されます。
ファイル MEMBER/NMEMBER の評価(判定)の仕組みは、後述、ファイル READER/NREADER、ファイル WRITER/NWRITER でも同じです。

掲示板の投稿権限(WRITER/NWRITER)

投稿権限は、掲示板のための権限で、権限が付与されたユーザは、掲示板への投稿が許可されます。
許可されているユーザは、掲示板に入ったとき、次のようなプロンプトを表示します。

選択してください ( [W] 書く [R] 読む [yy-mm-dd] 日付 )

また、投稿権限が剥奪されているときは、

選択してください ( [R] 読む [yy-mm-dd] 日付 )

と表示されます。

ファイル WRITER/NWRITER は、掲示板にのみ設定するもので、掲示板以外のディレクトリに設置しても動作しません。
ファイルは必ず、末端の掲示板ディレクトリに配置します。

BIG-Model 4.0 ユーザズマニュアルによると、「投稿権限を付与されたユーザは、閲覧権限が同時に与えられる」とのことですが、この辺りの解説が煩雑で、理解し難いので、要約します。

まず、掲示板におけるユーザの権限は初期状態で、投稿、閲覧共に権限が許可されています。
この初期状態から、2段階の設定を行って権限を剥奪しますが、この組み合わせから、ユーザの権限はつぎの3タイプに分かれます。

(1) 投稿+閲覧(全ての権限を許可)
(2) 閲覧のみ(投稿権限を剥奪し、投稿権限を禁止)
(3) アクセス権限なし(閲覧権限を剥奪し、全ての権限を禁止)

前述、「投稿権限が付与されると、閲覧権限も同時に付与される」と説明している以上、投稿権限を許可し、閲覧権限を剥奪することは不可能であるようです。

投稿権限の禁止設定

ファイル NWRITER に禁止するユーザを追加するか、ファイル WRITER に禁止するユーザを追加しない、いずれかのファイルを設置します。

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ WRITER ]			← ユーザ BIG00002 を追加
[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ NWRITER ]			← ユーザ BIG00002 を追加しない

この段階で投稿権限が剥奪されたユーザは、掲示板に入ったときに、

選択してください ( [R] 読む [yy-mm-dd] 日付 )

のプロンプトを表示します。
この段階で投稿権限が付与されたユーザは、閲覧権限も付与されるため、掲示板に入ったときに、

選択してください ( [W] 書く [R] 読む [yy-mm-dd] 日付 )

のプロンプトを表示します。

閲覧権限の禁止設定

投稿権限の設定を踏まえて、ファイル NREADER に禁止するユーザを追加するか、ファイル READER に禁止するユーザを追加しない、いずれかのファイルを設置します。
この段階で閲覧権限が剥奪されたユーザは、掲示板に入っても投稿、閲覧のいずれの権限も付与されていないため、

** アクセス権がありません **                                                    

と表示して、掲示板から締め出されます。

閲覧権限は、ファイル READER/NREADER のみで設定することはできず、必ず、ファイル WRITER/NWRITER の設定を同時に行う必要があります。

例えば、ユーザ BIG00002 の投稿権限を剥奪(閲覧のみを許可)する場合、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ NWRITER ]			← ユーザ BIG00002 を追加

または

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ WRITER ]			← ユーザ BIG00002 を追加しない

と設定します。
この段階では、ファイル READER/NREADER を設定する必要はありませんが、さらに、閲覧権限を剥奪する場合、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ NWRITER ]			← ユーザ BIG00002 を追加
  |         +--[ NREADER ]			← ユーザ BIG00002 を追加

または、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ NWRITER ]			← ユーザ BIG00002 を追加
  |         +--[ READER ]			← ユーザ BIG00002 を追加しない

もしくは、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ WRITER ]			← ユーザ BIG00002 を追加しない
  |         +--[ NREADER ]			← ユーザ BIG00002 を追加

または、

[ DANGER ]
  +--[ BOARD ]						← 掲示板ディレクトリ
  |    +--[ 1 ]						← 掲示板(1)
  |         +--[ WRITER ]			← ユーザ BIG00002 を追加しない
  |         +--[ READER ]			← ユーザ BIG00002 を追加しない

とします。
この段階で、投稿と閲覧の両方の権限を剥奪しますので、掲示板(1)から締め出されます。