松尾です。

gitbugのHEADにOAuth対応を追加してみました。

twittering-mode.elにはconsumer key, secretを書いていませんので
OAuthを使うには http://dev.twitter.com/apps で自分のアプリケー
ションを登録して、consumer keyとconsumer secretを発行してもらう
必要があります。また、SSL通信が必須になります。
curlが使えない場合にはopensslかgnutls-cliでSSLを行いますが
これらはproxyに対応していませんので注意してください。

設定方法:
  "Authenticating Requests | dev.twitter.com"
 http://dev.twitter.com/pages/auth
  のサンプルを例にすると
  (setq twittering-oauth-consumer-key "GDdmIQH6jhtmLUypg82g")
  (setq twittering-oauth-consumer-secret 
"MCD8BKwGdgPHvAuvgvz4EQpqDAtx89grbuNMRd7Eh98")
  のように設定して使います。
  consumer情報を設定したうえで
  (setq twittering-auth-method 'oauth)
  とすればOAuthでの認証を試みるようになります。
  twittering-modeの起動等、操作方法はこれまでと同じです。

認証手続き:
  access token取得時にTwitterからの認証を受ける必要があります。
  最初にM-x twitしたときに認証を受けるためのURLが表示されますので、
  そこにブラウザでアクセスした上でtwittering-modeからのアクセスを
  許可してください。許可した後、PIN code(暗証番号)が表示されますので
  これをminibufferに入力してやれば認証が完了します。

  (setq twittering-oauth-invoke-browser t)
  としておけば、browse-urlを使って認証用ページを自動的に開きます。
  但しPIN codeをminibufferで入力する関係上、同一Emacs内のw3mやw3で
  認証用のページを開くことはできません。

注意点:
  認証情報を保存しておけばブラウザによる認証手続きが必要なくなり
  ますが、これが漏れると誰でもtweetの読み書きができてしまいますので
  十分注意してください。

  認証したaccess tokenは変数twittering-oauth-access-token-alistに
  記憶されます。Twitterの発行するaccess tokenには有効期限がない
  ( http://apiwiki.twitter.com/OAuth-FAQ#Howlongdoesanaccesstokenlast )
  そうなので、この変数を(~/.emacs等に)保存しておけば再度の認証は
  必要なくなります。

  "Authenticating Requests | dev.twitter.com"
  http://dev.twitter.com/pages/auth
  の例の場合は以下のような設定にしておけば認証手続きなしで
  twittering-modeに入れるようになります。
  (setq twittering-account-authorization 'authorized)
  (setq twittering-oauth-access-token-alist
        '(("oauth_token" . "819797-Jxq8aYUDRmykzVKrgoLhXSq67TEa5ruc4GJC2rWimw")
          ("oauth_token_secret" "J6zix3FfA9LofH0awS24M3HcBYXO5nI1iYe8EfBA")
          ("user_id" . "819797")
          ("screen_name" . "episod")))

  注意!!!
  この認証済みaccess tokenとconsumer情報があればそのアカウントの
  tweetの読み書きが何でもできてしまいます。十分注意してください。


xAuthの認証が得られなければ、mewのmaster password機構のように
ユーザのaccess tokenをGPG等で暗号化して保存するしか無さそうです。

また、OAuth用に登録するアプリケーション名には"twitter"の単語が
使えないそうです。個人的に登録したものは"twit-tering-mode"として
いますが、これも考える必要がありそうです。

From: "Yuto Hayamizu" <y.hayam...@gmail.com>
Subject: Re: [twmode-users] xAuthの対応(Basic認証廃止)
Date: 4 May 2010 17:13:02 +0900

> twittering-modeで必要とされるOAuth/xAuthの機能を汎用OAuth/xAuthライブラ
> リとして実装していくのが後々のことを考えるといいのかな、と思います。

今はOAuth機能をtwittering-mode.elに入れていますが、分離しやすい
ようtwittering-modeの機能にはほぼ依存しない形で実装してあります。
twittering-modeを使うときにファイルが2つ必要になってしまいますが、
oauth.elとして分離した方が良いでしょうか?
(需要があるのかも疑問ですが…)

---
松尾 直志 <t...@mymail.twin.jp>

------------------------------------------------------------------------------

_______________________________________________
twmode-users mailing list
twmode-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/twmode-users

メールによる返信