海野秀之(うんのひでゆき)の外部記憶
Twitter (twilog) / RSS / アンテナ / ぶくま
http://www.itmedia.co.jp/news/articles/0811/05/news115.html
「天秤としても使えます」って……。
どうみても、ドンキホーテかどっかで売ってるパーティーグッズなんだけど、 トリンプって、ちゃんとした下着メーカだよね。
同社はこれまで「郵政民営化ブラ」や「投票率UP!ブラ」「少子化対策ブラ」などを制作している。
へー。あっそ。
一番の問題は言葉である。これは、けっこう気にする人は気にする。 「話せば通じる」と信じている人は、言葉が異なることで心配になるようだ。
ああ、なるほどー。
たしかに、日本語で話しているからといって、 話なんか全然通じないんだということに気づいたのは、僕の場合ごく最近なんですが、 このことに気づいた時期と、英語で話すのがそんなに恐くなくなった時期は重なっているかも。
母国語だからって通じるわけじゃないし、英語でも通じなかったりするんだけど、 程度問題でしかないなと思う。
母国語で通じない方が、腹たつけどね。 ま、外国人あいてにしゃべっていると思えばいいのかも知れない。
えー、まず、ブラウンアイズ、ちょーかわいい。 ぼくも、あんなこととか*1、 したい。
でもって、用心していたんですが、
SF さんまだ出てこないなー。 ↓ それにしても、ブラウンアイズ!(はあと) ↓ SF さんまだかなー ↓ きたー! ↓ まじでー?? ↓ なるほどー
って感じに推移いたしました。
「気づいてみれば、SF さんは始めからいたよ」、 「『これは恋愛小説であり、戦争小説であり、SF 小説である』って作者も言ってるじゃないか」 というあたりは知った上で、用心しもって読んだんですがね。
『ハローサマー、グッドバイ』を読み終わったところで、 注文してあった本を取りにいったよ:
さて、どれから読もう(嬉)。
*1 どんなことなのか、正確なところはよくわからないんですが、ま、とにかく。
えー、社内 web みたいなところに、なんか勝手に・自由に Wiki でも立てましょうというケース。 Hiki を使って、edit_user なんかがとても便利なんだが、 こう、アカウント・パスワード情報があちこちに増え続けるのが、ちょっと堪らない。
そこで、LDAP サーバに認証をまかせてしまおう!おー、それがいい。
まず、${Hiki のインストールディレクトリ}/hiki/ldapauth.rb とかいう名前で、 次のようなファイルを置く。
require 'ldap' def auth_ldap(uid, pass) conn = LDAP::Conn.new("127.0.0.1", LDAP::LDAP_PORT) # これは、LDAP サーバが localhost な場合。 conn.set_option(LDAP::LDAP_OPT_PROTOCOL_VERSION,3) dn="uid=#{uid},ou=People,dc=hoge,dc=fuga,dc=honya" # dn は適切に、ね。 begin conn.simple_bind(dn, pass) true rescue LDAP::ResultError false end end
でもって、さらに、${Hiki のインストールディレクトリ}/hiki/plugin.rb にちょいと小細工を施す。
最初らへん:
# $Id: plugin.rb,v 1.36 2006/09/02 06:36:57 znz Exp $ # Copyright (C) 2002-2003 TAKEUCHI Hitoshi <hitoshi@namaraii.com> # Copyright (C) 2004-2005 Kazuhiko <kazuhiko@fdiary.net> # # TADA Tadashi <sho@spc.gr.jp> holds the copyright of Config class. require 'cgi' require 'uri' require 'hiki/util' require 'hiki/ldapauth' # ←ここ
なかほど:
def login( name, password ) return if @user return nil unless password name ||= @conf.admin_name if @conf.password.empty? || password.crypt( @conf.password ) == @conf.password && name == @conf.admin_name @user = @conf.admin_name elsif @conf['user.list'] if auth_ldap(name, password) # ここ @user = name end end end
実際、plugin.rb を書き換えたのは二行だけである。
% diff plugin.rb.bk plugin.rb [~/html/h/hiki] 9a10 > require 'hiki/ldapauth' 309c310 < if @conf['user.list'].has_key?(name) && @conf['user.list'][name] == password.crypt(@conf['user.list'][name]) --- > if auth_ldap(name, password)
これで、LDAP サーバに認証を丸なげできる。elsif @conf['user.list'] とか、 そのまま残してあるので、edit_user プラグインはちゃんと有効にして、 ユーザリストに適当なユーザ名を書いておく必要がある。
動作確認は、Hiki 0.8.7 (2007-06-24) で行った。 また、ruby-ldap-0.9.7 を使用してます。
# katayama [初めまして この日記を参考にhikiのLDAP認証プラグインを作ってみました。 http://sourceforge..]
# うんの [うわぁ、びっくり。 # 普段、ひとに読まれるのを意識しているよう、いないような感じなので。 わざわざ御報告いただい..]