まつもとさんの日記で「細々と作業を開始」と書かれたのに異義申し立てをしたので、いやがうえにもテンションが高まっております。
ここ数日の作業で、管理者パスワード以外のユーザパスワードも受け付けるようにして、編集履歴にユーザ名を残したり、登録ユーザだけに編集を許可したりといったことができるようになりました。
その他、複数行に渡ってプラグインを書けるようになったり、プラグイン呼び出しの () の記述を省略できるようになったり (角谷さんが欲しいって言ってたっけ?)、地味に改良しています。
で、Hiki ではもともと管理者の認証にパスワードだけを使っていたこともあり、ユーザの認証も ID とパスワードではなくパスワードだけでやるように実装しました。なので、当然ながら全ユーザのパスワードがそれぞれユニークである必要があります。
★シャア「IDが付いてない」 ☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」
というわけで、それが分からない偉い人は、例えば「ID-パスワード」みたいな感じのパスワードを付けるなどしてください、ということで。:)
ところで、これは私が発案したことではなく、だいぶ前に高林さんの日記か何かで紹介されていた誰かの文章の中に「ID とパスワードの両方を使うのは無駄。パスワードだけで十分」みたいなことが書いてあったような気がするのですが、何だったっけかなぁ。
[追記] ツッコミありがとうございます。出典は「ヒューメイン・インタフェース」でした。ちょうど同僚が持っていたので借りてきました。
あなたはシステムに対して事実上、自分が誰であるかを 2 度告げているのです。 理論的には、あなたのパスワードがあれば良いはずです。 これによってシステムのセキュリティが脅かされることはありません。
(P.212 6.4.3 「簡潔なサイン・オン」より)
もちろんこの運用をする際は、ツッコミでも指摘があったように「ユーザが自分で自由にパスワードを決められない」のが前提になりますね。さらには、ゆうぞうさんのところでも議論になっていたりしますが、とにかくもうすこし検討してみます。
なお、「ヒューメイン・インタフェース」著者のジェフ・ラスキンさんは今年の 2 月に亡くなられたそうです。遅ればせながらご冥福をお祈りします。
会社で「うちは衛星が映らないんですよー」と訴えていると、カラコロ広場でパブリック・ビューやるよと教えてもらったので、ゆうなと一緒に行ってきました。
スクリーンは 100 インチ程度でしたが、広場に多くの人達が集まって一緒に応援するのはとても楽しい体験でした。これからもやるらしいので、また来ようっと。
はい、言ってました。tDiaryのWikiスタイルと同じように書けると嬉しいです。
確かに ID とパスワードは、片方だけでも用が足りると言えば
足りるのですが、それでも何となく両方欲しい気がします。
両方あった方が全体として長い文字列を入力してくれることが
期待できるので、ダブる可能性が少なくなるでしょうから。
(入力フォームは2つ用意しておいて、内部的には concat した
値で持っておくとか)
他の人が自分と同じパスワードを使ってるのがわかっちゃうのって、なんとなく嫌じゃありません?
はじめまして。sshiと申します。
高林さんの原文にあたったわけではないのですが、
「ID とパスワードの両方を使うのは無駄。パスワードだけで十分」
というのは「ヒューメイン・インターフェイス」という本に記述があったような記憶があります。御参考まで。
http://www.amazon.co.jp/exec/obidos/ASIN/4894714205/
>全ユーザのパスワードがそれぞれユニークである必要があります。
そうか,この場合,必然的にユーザー自身にパスワードを决めさせてはダメになるのか.「そのパスワードは既に使われています」とか表示しちゃまずいわな.
「1234」とかは確実に衝突するな。
ここで取り上げられている `Wiki的 CMS' のことが判らないので大ボケなんだと思う
のですが。
一般的に認証の際の id には、権限のレベルが付随するものと思います。
なので、id 不要のケースとは、
(1) 認証する権限のレベルが一つしかない。(全てのユーザに同じ操作を許可する)
(2) 認証時に、既に権限のレベルが決まっている。
様なケースだと思われます。(2) は、認証を行なう時点で、既に権限レベルが確定し
たドメインに属している様なケースで、例えば、認証を行なうコンテンツにアクセス
できている時点で、そのコンテンツが属するコンテンツ群の編集を行なう権限を保持
していることが保証されている様な状況でしょうか。
上手く言えないのですが、皆さんのコメントでは、全然オッケーな雰囲気なので、私
の感覚と非常に温度差があって、何かとても不安な気持ちになりました。
いえ、パスワードが unique なら、パスワードだけで個々のユーザを特定できる、ということです。
UI的には合理的ですね。
気になるのはパスワード流出時の対応です。
内部的にuidを持っていたりしていない場合、パスワード変更を行った場合、identityが変わってしまうように思うのですが、そのあたりはどのように対応するのでしょうか。
パスワードだけでuidにマップしようという話なので、パスワードが変化しただけでアイデンティティが変化することは無いと思いますよ。
> パスワードが unique なら、パスワードだけで個々のユーザを特定できる
なるほど、了解しました。
しかし、それだとパスワードを誤入力し、それがたまたま他のユーザのものと
合致してしまった場合、間違いで合致してしまったユーザの権限で動作してし
まうということになりません?
id との整合性を確認する以外に、何か妥当な仕組みがあるのでしょうか。