教育支 援
環
境
構
築
の
た
め
の
wiki
の
グ
ル
ー
プ
管
理
機 能
の
拡 張
田
崎 潔
志*藤
田毅
↑Development
of
group
management
system
for
Wiki
Kiyoshi
TASAKI
傘,
Takeshi
FU
”TAt
Abstr亂ct
−
Wi is a kinc! of web ◎ontents managernent system that al 且orws users tO easily add and edit contents arK ! is especially suited for co贍aborative writing.
This免a鵬 is suitable fbr group leaming and 呵〕o貢writing
.
But, ifthe sys m is used fbr group leming and r叩 o貢w 面 馳9,
山 euser au 血 entieation is necessary to prerver}t unspeci 制 pcople ffOm editing contentS・
Th叫 we adde曲 。 follcrwing featUres to
the
syStem.
−
User authentica観by
LDAP serv¢ 【
−
Addi血g new user gmup.
−
Access control eacll group.
Keywerds :Wiki
,
collaboration system,
LDAP,
user authentication,
group management1
は
じ
め に
Web
コ ンテンツ管理 システムW
皿d
[11
は誰で も自 由 に編 集 を行 うこと がで き、
比較的簡単な構 文で あ る程 度 整形 され たWeb
ペー
ジ を作 成 すること が で き る。
個 人的 なメモやレポー
トの作 成、
ま た 誰でも編 集でき る 特徴を 生か し て様々 な議 論を交わ す 場 とし て利用でき る。
しかし、
すべ ての場 合 に おいて誰でも 自 由 に 編 集 できること が よいわ け で はない。 論文の作成な どの場 合は編 集 を行え る人 物 を 関係 者のみに限 定し、
不 特 定 多数の人物に よ る編集を防ぐ た め に利用 制 限 を行 う必 要があ る。
利 用 制 限に は一
般 的にユー
ザ を 特 定 するため に使 用 す るユー
ザ ID とパ ス ワー
ドを 使用 して行 うが、
Wiki の一
般 的 な 機 能で はない ため、 Wiki の 導入時に 認 証 機 能を使用する た めの 設定 を行 う。
ま た、
研 究は複 数 人で行 うこ と も 珍しい こ とではないが、
この よ うな 場 合、
その グルー
プ ごと に Wiki サ イ ト を 開 設する 必要 が あ る。
こ の ユー
ザ や グルー
プの利 用 制限機 能を できる だけ 容易に実装する 目的と複数人 に対 する利 用 制 限 を個 別 にWiki サ イ トを 開 設 す るこ と な く行 える こと を目的ゆ
九州 産業大 学 大学院 工学 研 究 科 電 気工学 専 攻 t九 州 産 業 大 学工学 部 電 気 情 親工学科 と し、
我々 は 独 自にWki
の グルー
プ管理機 能 を 開 発 した。
本研究で は、
日本 国 内で最 も 普 及 し てい るWiki
ク ロー
ン のひ とつ で あるPukiWiki
〔2
]を用い て開 発 を 行 っ た。
2PukiWiki
に
お け る
ユー
ザ
の管
理
本研究で使用 し て い るPukiWiki は ユー
ザを登録 し、
ユー
ザ 単 位でペー
ジの閲 覧 制 限お よ び編 集制 限の 設定 を 行 う機 能 が あ る。PukiWiki
に お け るユー
ザ 管理 は pUkiwiki.
ini.
php とい うスクリプ ト(プロ グラム)ファイ ル を 編 集 し て行 う。
PukiWi】(i
はユー
ザを 登 録し、
制 限 を行うた めの ルー
ル を 設 定することで特 定のペー
ジ に対し て認 証 を 行 わ せ ること が でき る。
3
LDAP
に よ
る
ユー
ザ
認 証
前 述の よ うに
PukiWiki
に お け るユー
ザ 管 理はpuki−
Wiki.
ini.
php
の設 定 を 変 更 す るこ とで行 う。
しか し、
プ ロ グ ラム フ ァイル を編 集 する 必要がある ため、
ファイ30 九 州 産業 大 学工学 部研 究報告 44号 ル の 直 接 編 集が行 える
PukiWiki
の設置者 し かユー
ザ の追 加が行 え ない 上、
P
面dWiki
が記 述 されて い る プロ グラ ミング 言 語 「PHPj
に対 する あ る程度の知 識が必 要 と なる。 こ の問 題 を 解 決 する に は、
PukiWiki のユー
ザ管理 を 行 うための ツー
ル を使用 す る。
し か し、
こ の方 法で は 圏dWiki
のユー
ザ を 別 途 管 理しな ければ ならず、
大 規 模 な ネッ トワー
ク 環 境 下でユー
ザ 管理 を行 うの に は適 し て いない。 大規 模なネッ トワー
ク 環 境であれば、
既 存のネッ トワー
ク 内 に 認 証 を 行 うため にディ レク トリ と 呼 ば れ る認証のた めのユー
ザ 情 報のデー
タベー
ス を 持っ た サー
バ が設置され てい る こ とも多い。
そこ で我々は PUIriwnd の 閲 覧・
編集認 証をディ レ ク ト リサー
バ で行い、
PukiWiki
のユー
ザ 認 証 に 代 わっ て ディ レ ク ト リ サー
バ のユー
ザ 認 証 を用い る機能 を 追 加 し、
PukiWild の ユー
ザ 情報 と その 他のユー
ザ 情 報 を一
元管理す るこ と で効 率 的 なユー
ザ 管 理 が 行 える ように 試 み た。
藤田研 究 室お よ び電気情報工学科の 設 備である情 報処理演 習 室で は LDAP (LightWeightDinmry
AccessPretocoi
)[3
]を使 用し てユー
ザ 認 証 を 行っ て い る。
LDAP は ネッ トワ
ー
ク経 由でユー
ザ 認 証 を 行 う仕 組み であり
、
以下 の よ うに動作す る。
LDAP
.
BASE
亅)N
ディレク ト リサー
バ 内の参 照したいディレク トリを指 定。
define (
’
LDAP BASE DN,dc
冨
1dap.
dc雷
exaTcrple,
dc=
ac,
dc置
jp
り;
PKWK
△UTH.
LDAP LDAP を使用 した認証の方 法を 指定 する。
定義 しない場 合は通 常 通 りPUdW
面 の ユー
ザ 認 証 を行 う。
define {tPKPVK AVTH I ,DAP,,
1};1.
ク ラ イ アン ト はユー
ザ が 入力 した m とパ ス ワー
ドをディ レク トリサー
バ に問い合 わる。2.
送 られてきたID
とパ ス ワー
ドが適切であれ ば 認 証の 成功 をク ラ イ アン ト側に返 す。
Pukiw
/iki
の機能拡張は通常、
プラグイン とい う方 式 に よっ て行 うが、
ユー
ザ認 証機 能は 本体プロ グラム に 組 み 込まれて お り、
プ ラグ インに よる機 能の拡 張は行 え ない。 その た め、
H
)AP
認 証機能は本体プロ グラム のユー
ザ 認 証 機能を変更し て機 能の拡 張 を 行っ た。
こ の プログラム の修 正で は
、puldw
皿d.
iniphp
にい く っ かの 定数を 定義す る 必要が あ る。
LDAP
.
SERVERJ ,IAME ディレク トリサー
バ の ホ ス ト名 もしくは
P
ア ドレ スを 指 定 する。
1
と記 述し てい る箇所に表1
の数 値を指定 するこ と で認 証方法 を変更でき る。
表 1:認 証方法の 指 定 億 認証方 法 0 通 常の認 証の み 1 LDAP 認 証のみ 2 通 常の認 証orLDAP
認 証3
通 常の認 証 and LDAP 認 証4
グ
ルー
プ
管
理
機
能
define {
’
LDAP SERVER )ULME t」
’
1dap.
exaTrple.
ac.
jp
’
)∫ PukiWiki に はユー
ザ単 位で のペー
ジの閲 覧 制 限お よ び編 集 制 限の機 能は用意されて い るもの の、 複数のユー
ザに対し て 同時に設 定 を変更するこ と は できない。 そこ で複 数のユー
ザ をひとつ の グルー
プとし、
容 易 に複 数のユー
ザに 対するペー
ジの 閲覧制限 お よ び編 集 制 限の 設定 を 可 能にす るこ とで Wiki 内 に特定の複 数 人 だ けが利 用できる領 域を 容易に作るこ とが できるよ うに し た。 作 成 した グルー
プ管 理システムはユー
ザの グルー
プ をコ ミュ ニ ティと 呼 んで い る。
以下の説明 で は リー
ダー
(管 理 者)が存在 す る もの を グルー
プ と 呼 び 区 別 す る。
こ の グルー
プ管理システム は以下の よ う な 特 徴 を 持っ てい る。
● コ ミュ ニ ティ の結 成は自 由に行 うこ とが できる。
● コ ミュ ニ ティ の すべ てのメンバ
ー
が 同 じ権限 を持っ て いる。
これ はW /ikiの考 え 方 に 基づい た もの で、
管 理 者 とい う存 在 を 許 さ ない こ とで特 定の メン バー
がグルー
プの 管理 を行い続け る こ と を 避 け る ため であ る。
● すべ ての メン バー
に管理権限を与え るこ と が好ま しくない 場 合があ る。
こ の様 な 用 途にも 対 応で き る よ う に す る た め、
管理者が存 在 するグルー
プを 作 成 するこ とも 可 能 とする。
せない こ とで、一
方 的にメ ン バー
に加入させられ ない よ う に してい る。
● た だ し、
こ の グルー
プ管理者になれ るのは 特定の Wiki のユー
ザのみに限 定 す る。
● グルー
プ 管 理 者の有 無 は グルー
プ結成 時 にのみ 設 定 す ること がで きる。
後か ら設定するこ と はで き ない。 ● 結 成 時に は管理者がいた が その後い なくなっ て し まった 場 合に は、
コ ミュ ニ ティとし て扱 う。
既 存 の メン バー
や新規メン バー
が管理者に な るこ と は で き ない。
● 管理者は他の メン バー
をグルー
プか ら削 除 する こ とが でき る。
● コ ミュ ニ ティはWiki
ペー
ジのひ とつ を ホー
ムペー
ジと して持 ち、
こ のホー
ムペー
ジ及 び そのサブペー
ジ に 対 し て はコ ミュ ニ テ ィに 設 定 さ れ た 編集 劇限 に よっ て所 属 メン バー
以外 か らの書 き 込 み を防ぐ こ とができる。
グルー
プ には以 下の よ うなメ ン バー
の権 限レ ベ ル を 用意 し てい る。
管 理 者 グルー
プメンバー
の追 加・
削 除 や グルー
プが所 有するペー
ジに対 するア クセ ス権 を 設 定で きる。
一
般メンバー
管理者がい る場合は、
管理者に よっ て規 定 され たペー
ジへ の ア ク セ ス権が与 え られる。
管 理 者がいな けれ ば、
コ ミュ ニ テ ィ が所有 するすべ ての ペー
ジ に対す る ア クセ ス 権が与えられ、
そこ に所 属し ていないユー
ザ をコ ミュ ニ テ ィに招 待 す るこ と がで き る。
制限メ ン バー
グルー
プ が所有す るペー
ジの一
部 を 閲 覧で き る。 コ ミュ ニ ティ の場 合、一
般メン バー
に 昇格 する できる。
最 初か ら一
般メン バー
に 登録 さ5
グ
ル ー
プ管
理
の
拡
張
機 能
の
利
用
本 研 究で作 成した PukiWki 用の グルー
プ管理機 能 を使 用 する に は、PiikiWiki
.
ini.
phpの最 後に以 下を追記 し て グルー
プ管理機 能の初期化を行 う必要 が あ る。
if (exist
−
plugin (’
cornmunity’
)}do
_
Plugin_
iniヒ(’
community’
}’これによっ て
、
グルー
プ管理機能を使用 し て 設定し た ア クセ ス 制 限 が 有 効 と な る。
ま た、
以 下の ように Wiki ペー
ジ上 に 記述 するこ と で ユー
ザ が所 属し て い るコ ミュ
ニ ティ の一
覧が 表 示 さ れ る。 #corarnunity {》 こ の よ うに オ プシ ョ ンを指 定し て いない場 合は、
ロ グイン 中の ユー
ザが所 属し てい るコ ミュ ニ テ ィ の一
覧 が表 示 され る。
オ プシ ョ ン に command とすると利 用 可 能 なコ マ ン ドの メニ ュー
が表示 さ れ る。
#communi しy(co and } 表 示 されるコ マ ン ドは以 下の6
種 類であ る。
・ 新規コ ミュ ニ ティ ● メン バー
追加 ● メ ン バー
削除 ・ ア ク セス制 御 ● メン バー
招 待 ● 管 理32 九 州 産 業 大 学工学 部 研 究 報 告44号 表
2
:コ マ ン ドの 表示条 件 コ マ ンド 条件 新 規コ ミュ ニ ティ 常 に 表 示 メ ン バー
追 加 管理者 メ ンバー
削 除 管理者 アクセス制 御 管理者 メンバー
招 待 メン バー
管理 管理者ま た はメ ン バー
こ れ らの コ マ ン ド はすべ て が表 示 されている わ けで は な く、
利 用 可 能 なコ マ ン ドのみ を 表 示 させ る。 そ れ ぞ れの コ マ ン ドが 表示 され る条 件 を表 2に 示す。
これ らの コ マ ン ド につ い て の後ほ ど説明する。
コ ミュ ニ テ ィ の名 前 を 書くと、
その コ ミュ ニ テ ィ に 所 属し てい る メン バー
の一
覧を 表 示す るこ と がで き る。
s∋噂
一隔一
贏璽 鱗 Odba 繭囎
1ト・
ブ11轍 幽一
覧 薗醐 昌瀬刷 鯲 粟廊ヘ
ルカ 塁 薯 量‘
竃.
.
.
.
.
一.
康一
」
」
ぺ
→内 囗 伽一
肉隴 臘晒 ゐ 圃 ● 群 a 眺9 鴎 囮 一 図2
:新 規コ ミュ ニ ティ 以 下の項 目 を 設 定し て 「登 録」 ボ タン を 押 すと、
新し い コ ミュ ニ テ ィが作成 され る。 コ ミュ ニ ティ 作成す るコ ミュ ニ ティ の名 前 。 #cornrnunity (《コ ミュ ニ テ ィ名》)図
1
にメ 三ユー
バー
に所 属コ ミュ ニ テ ィの一
覧と利 用 可能なコ マ ン ドの一
覧を表示 し た例 を示す。
●斬 訓コミュニティ ,ズノバー
邉 加 むメンバー
劉 陣 じア クセ ス 制 鱒:
器
:き
’IP−
2007 ホー
ム ペー
ジ コ ミュ ニ テ ィ が管理権 限を持つ ペー
ジ の名前。 この名前の ペー
ジ とその サブペー
ジがコ ミュ ニ ティ所 有のペー
ジとな り、
メン バー
のみが 編 集可能になる。
た だし、
作 成し よ う とし てい る a一
ザが指定したペー
ジ に対 する書き込 み権限 を 持っ てい なけ れば な ら ない。 グルー
プ管理者機能を使用する コ ミュ ニ テ ィ の管理者 がコ ミ= ニ テ ィ の メンバー
の管理 お よびコ ミュ ニテ ィ所有の ペ
ー
ジ に対 す るア クセ ス (閲覧・
編 集) 制 限の設 定 を 行 え る よ うにす る。
コ ミュ ニ ティを 作 成したメン バー
は管理者と し て メン バー
登 録 さ れる。
6
.
2
メ ン バ
ー
の追
加 図 1;所 属コ ミュ ニ テ ィ と利 用 可 能 なコマ ン ドの一
覧6
グ
ルー
プ
管
理 シ
ステ ム
の操 作
6
.
1
新規
コ ミュ ニ テ ィ 新し い コ ミュ ニ テ ィを作 成 する。
コ ミュ ニ ティ を作 成 したユー
ザは最 初の メン バー
と して登 録 され る。
コ マ ン ド メニ ュー
か ら= ミュ
ニ テ ィを選 択 す ると、
図 2 の ような 画面 が表 示 される。
コ マ ン ド メニ ュー
か ら メン バー
追 加 を 選 択 す る と 図3
の ような 画 面が表示さ れる。 orr − r 恥 { :聴●
一 【い ツ11 噺測一
釦 亀疊博更軌ヘ
ル ヲh 輯 ≡,s・
撫 ザー
娼、
謡
縄
笆 ● 春も 4 樋 自 唖 闘 剛 図 3:メン バー
の追加以下の項 目を 設 定し て 「追加」ボタン を押 す と
、
コ ミュ ニ ティに新 しい メンバー
が 登 録 さ れ る。
コ ミュ ニ ティ 新た に メン バー
を 追加す るコ ミュ ニ テ ィ の名 前。一
覧 に は 管 理 権 限 を 持っ たコ ミュ ニ ティ の みが 表 示 される。
こ の一
覧の 中か ら メン バー
を 追加 したい コ ミュ ニ テ ィを 選 択 する。
追 加 す るユー
ザ 名 新 たに勘O
する メン バー
の名 前。
コ ンマ ( ,)で区 切るこ と で複 数の メン バー
を 追 加 す る ことができる。 た と え ば コ ミュ ニ ティ メ ンバー
を 削 除 するコ ミュ ニ テ ィ の名 前。一
覧に は管理 権 限 を 持ったコ ミュ ニ ティ のみ が 表 示 され る。
こ の一
覧の中か らメン バー
を 追 加 したい コ ミュ ニ ティを選 択 する 。 追 加 す るユー
ザ 名 新 たに追 加 す る メン バー
の名 前。
コンマ (
,
)で 区切るこ とで複 数のメン バー
を 迫 加 す る ことが で き る。
たと え ば U5er2ヲ
u8er4user1
,
user2,
u8er3 と入 力 す ると、
user2、
user4 の 2人が メン バ
ー
登 録 を解除 される。
と入 力 す る と
、
userl、
user2、
uscr3 の3
人 がメンバ
ー
に登 録 され る。
た だ し、
存 在しない (PukiWiki の認 証ユー
ザとし て登録 され てい ない)ユー
ザの 追 加お よ び既に メ ン バー
に登 録してい るユー
ザ を 追加 す ることは で き ない。
ユー
ザの種 類 新た に追 加 する メンバー
が管理者、一
般メン バー、
制限 メン バー
の いずれで あ るかを指 定 する。
6
.
3
メ ンバ
ー
の削 除 コ マ ン ドメニ ュー
か らメンバー
削 除を 選 択する と図4
の よ うな 画 面 が表示 さ れ る。6
.
4
アク セス制御
コ マ ン ドメ ニ ュー
か らア クセ ス制 御 を 選 択 す る と図5
の ような 画 面 が表示 され る。 P一
卩隔
馴
噌 嚇 o 繭●
aWh 寵 lt・
月 1賑捜1→配1儲 1勲 篭夏噺1.
1レ
Vl 鵬:
■r■ の 螂 ペー
ジ魯 伽 ン;
巳,レー
ヒ 絨 口 順:
峰 再 日 時、
分tt 圃 L 匡 L レ 浮ー
o c も亀臼 蘯 国 ■ 四 hr /1 図 5:ア ク セス制御 P輔
一 殉 恥 06 』 恥曽
噂
Ik丱
,5 【鞭 躪一
覧 皀囎 臨 ヒ囎 懸 睫ヘ
ル
ツ「 甥誰
蕊
圏 樋 o 随4e 岫 魑 剛 一 図4
:メンバー
の削除 以 下の項 目 を設 定し て 「削 除」ボタンを押すと、
コ ミュ ニ テ ィ か らメンバー
が削 除さ れ る。
コ ミュ ニテ ィ 新た に ア クセ スルー
ル を追 加 す るコ ミュ ニ ティ の名 前 。一
覧に は管理 権限 を持っ たコ ミュ ニ ティ のみが表 示 され、
こ の一
覧の中からメン バー
を追 加し たい コ ミュ ニ ティ を選 択 する。
制 限の種 類 新たに追 加 するアクセス ルー
ル が閲覧、
編 集の いずれの ものであ るか を選 択 す る。
対象 新た に追 加 す るア クセ ス ルー
ル を 適 用 するユー
ザの レベ ル を設 定 する。 こ こで対象と し たユー
ザ に対し て ア ク セス を許 可 す る。
34 九 州 産 業 大 学 工 学部研 究報告 44号
一
般メンバー
全 員 すべ ての一
般メン バー
に対し てア ク セス を 許可する。一
般メ ン バー
側 人一
般メンバー
に対して指定し たペー
ジ名の直 下にあるユー
ザ 名 と同 じ名前 のペー
ジ に対する ア クセ スを 許 可 す る。
制限メ ン バー
全員 すべ ての 制 限メン バー
に 対し て ア クセス を 許 可 する。
た だし、
上 位に位 置 する一
般メン バー
に対し てのア ク セス 許 可 は 与え ら れない の で注意す る 必 要がある。
制限メンバー
個人 制 限メンバー
に対し て指 定し たペー
ジ 名の直 下にあ るユー
ザ 名 と 同 じ名 前 の ペー
ジに 対 する アクセ ス を許 可 する。ユ
v
サた
o.
一晴
臘 口 ユt
−
b }ゴ
o圏「
ユ
ロ
サロ
コ
ve嘱
噂・
控ひ
leor{
z2Ei11EI
I
]
=
ll
]
JIJ
I
1
:
11
:
]
「
以
.
聯 噌亀 “ 靖tW 晦PtEρ’
t一
すべ て伊 曜 趨鹸 鱒 崚 劇陥
コ詈
, 胤■
凵麟
倒 臨 パター
一
ン ア クセス制 限 を 適 用 す るペー
ジ 名。
ア ク セ ス ルー
ル と し て適用 さ れ る際に は、
こ こ で指 定し たペー
ジ名の 前にコ ミュ ニ テ ィ ホー
ムペー
ジ名が 付 加 され る。 ルー
ルを無効化 チェ ック を 入 れ る と、 この ルー
ル を 無 効にす る。
有 効 期 限 年、
月、
日、
時、
分 を 入 力 す る と、
有 効 期 限 が 設 定 される。
6
.
5
管
理ペー ジ
グルー
プ管理操 作 を 簡 略化するた め にGUI
の ツー
ル を用 意した。GUI
操 作画 面 は 図6
の よ う な 形式で 表 示 され る。
この管理 画面 内にある削除のボタン を押すこ と で、
登 録 され てい るメン バー
及 び 設 定 されてい るア クセス制 限の ルー
ル を 削 除 す るこ と が で き る。
7
終 わ り
に
本論文で は、Wiki
を複数の グルー
プ閻で共有する た めのグルー
プ管 理 機 能の追 加 を 行っ た。
ユー
ザ 管理及 び グルー
プ管 理の機 能 拡 張にっ い て はユー
ザの 管理 をLDAP
サー
バ によっ て行 うこと に よ り、
電 気 情 報工学 科 情 報 処理演 習 室で使 用し てい る ユー
ザ ID 及びパ ス ワー
ド を 利 用 す るこ と が 可 能 に な り、
PukiWiki でユー
ザ管理 を行わ ず に学 科の全学生及 図6
:管理画 面 ぴ教職員の認 証 を 行える。
これ に よっ て、
学 科 全 体の 共 有ス ペー
ス とし て Wiki サイ トを 設 置し、
その一
部 分を各 個人の領域に割り当て、
メモ やレポー
ト作 成を 行 う とい っ た利 用 も 可能であ る。 現 在、
電 気情報工学 科 情 報 処 理 演 習 室で行 わ れてい る 講 義 科目の うち、
プ ロ グラ ミン グ基 礎とい う科目で は今回開発 した グルー
プ管 理シ ス テ ムを 使 用し て、
プロ グ ラ ミング 基 礎の グ ルー
プ を作成し、 その 中に各学生の 個人領域を用意し てレポー
トを 記 述 しても ら う とい う形で実 際の運 用 を 行った。
さ らに、
グルー
プ管理機 能に よっ て 自 由に グルー
プ を作 成す るこ と が 可能に な れ ば、
この 共有ス ペー
ス の 中に各 研 究室の領 域や講 義に使 用 す る領 域 などを作 成 することに よ り教 育 及 び 研 究 用の ツー
ル として Wiki を よ り活 用できる であ ろ う。参 考 文 献
[1}結 城 浩.
結 城 浩の Wiki 入 門;YUkiWiki で は じ め る み んなで作るWeb
サ イ ト,
イン プ レ ス.
第 1版,
2004.
[2】PukiWiki Deve且op Tearn
.
P傭 防 献.
2008.
http
;〃pukiwiki
.
sourceforge・
jP
/・
[3] 稲 地 稔
.
(》penLDAP 入門;オー
プン ソー
ス で は じめ る ディ レ ク ト リサ