日記
RandomeNote/PHP with TypeKey Authenticationテスト中 (15:15)Edit

RandomNotePHPにポーティングしたバージョンに、PHP版TypeKeyライブラリを使ってTypeKeyによる読み書き認証とmixiライクな足跡機能を取り込んだバージョン。現在、

にて実働テスト中。

現在の設定では、閲覧は誰でもOK、編集はTypeKeyログイン必須だけどログインしたら誰でもOK、にしてある。設定によって、完全オープンから読み書き(特定ユーザーのみ)クローズドまで自由に変更できる。あと、個人的な趣味でWiki記法をtDiary Wikiスタイル互換(というか、Wiki Wayを参考にもっとも標準的と思われるWiki記法に近いもの)にしてある。

基本的な機能は一通りできているんだけど、設定周りとかまだ煮詰め中&TypeKeyのverifyにときどき失敗する原因もできれば調査しておきたい&ドキュメントとか著作権表示周りとかもちゃんとしないとな状態なんで、配布版はまだできていない。一応xreaのs57サーバーでも動いた。

ひとまずこれで、TypeKeyを使った認証が単なるSPAM対策だけでなく、一般的なWebアプリでも十分有効に使えることが十分テストできたならば、次は同じ仕組みを使った日記(あるいはblog)ツールを作るつもり。これとTypeKey SNSを使った、認証情報の複数Webアプリでの共有の仕組みを用意すれば、はてなダイアリーというかmixi日記というか、的なシステムをオープンなインターネット上に構築することができるはず。

Rubyのお勉強が間にあえば、この仕組みをtDiaryにも組み込んでみたいところだけど、Rubyのお勉強をしているくらいだったら、PHPとかPerlでスクラッチから組んだ方が早そうなんだよな。というわけで、そっち系は後回し。というかもし本当に有用そうならば、tDiary系の人たちが勝手にそういうのを作ってくれそうだし。

でもまあ、ひとまずこのネタで遊べるのは今日でいったんおしまいで、次に手をかけれるのは来年になってからかもしれない。となると、不完全でも現状バージョンを公開しておいた方がいいのかな。

一応アーカイブにまとめた

ドキュメント類は適当。いろいろ足りない部分とか修正し切れていない部分とかあるかもしれないけど、その辺はおいおい直そう。というか、ちゃんと直している暇がしばらく取れないっぽいんで、自助努力推奨。

ライセンスに関しては、本体をいじったものについては、オリジナルのRandomNoteおよびRandomNote/PHPに準じてフリーソフトウェア。平田さんのAuth_TypeKeyの修正版も同梱してあるけど、それについてはPHPライセンス。あとさらに独自のTypeKey認証コードが別ファイルで追加されているけど、その部分はLGPL扱い(というか、別ソフト用にLGPLとして組み込んでいたコードを改変流用しているんで)。

どういう風に使うものか?

いろいろ利用例はあるけど、ひとまず思いついた例を以下に。

自分用メモ帳

アクセス権限を閲覧private、編集privateに設定して、管理者として自分を登録しておけば、自分専用のメモ帳になる。他の人は閲覧も編集もできない。

身内用メモ帳

上記設定で、閲覧許可ユーザー、編集許可ユーザーを設定すると、あらかじめ登録したユーザーのみ閲覧・編集可能な共有メモ帳になる。許可・拒否ユーザーは、管理者権限があればWeb上から追加可能。

誰が編集したのかがわかる

編集権限をprotectedもしくはprivateにして、足跡設定をedit => TRUEにしておくと、編集した人が誰なのかが足跡に記録されるようになる。もしもいたずら等された場合は、そのユーザー名をアクセス拒否リストに追加することで、以降そのアカウントからの編集は拒否することができる。

誰が見に来たのかわかる

閲覧権限をprotectedもしくはprivateにしておいて、一覧表示時にReadMoreが表示されるようにしておき、足跡設定をshow_leaf => TRUEにしておけば、そのドキュメント(の詳細)を閲覧した人がわかる。

編集のみ自分/身内専用

閲覧権限public、編集権限をprivateにしておくと、単に閲覧するユーザーにはTypeKeyアカウントはいらない。編集は登録ユーザーのみが可能。

Published At2004-11-22 00:00Updated At2004-11-22 00:00