二段階認証のGoogleアカウントでもemacsからHangout (Gtalk)
ちょろっとググったらあまり情報が出ていなかったのでメモ
二段階認証(2-Step Verification)でもEmacsからJabberを使う
emacswikiなどではGoogleTalkとしか書かれていないし、二段階認証についての情報は特にないのでJabberで良いのか不安だったが、どうやら大丈夫らしい。
以下まとめ
- Jabberをpackage.elでダウンロード
- Googleでアプリケーション固有パスワード(application-specific password)の生成
- .emacsにアプリケーション固有パスワードを記述してログイン
Jabberをpackage.elでダウンロード
Emacs24以降はデフォルトで入っていますが、入っていなければpackage.elを入れる。
package.elでなくても、パスの通っている場所にきちんと動くJabberを置く。
Googleでアプリケーション固有パスワード(application-specific password)の生成
二段階認証(2-Step Verification)は一般的にパスワード+電話で認証を行うものだが、機器によってはこれが不可能な場合がある。そのような場合、認証パスワードを発行することで、それを代用することができる。こちらを参考に設定する。表示されたパスワードは一度しか表示されないので、きちんとどこかにコピーするか、メモするか、画面をそのままにしておいて次のステップへ。
ただし、これは実質的にアプリケーションごと、機器ごとに固有の単一パスワードを生成する行為なので、セキュリティ面は通常の二段階認証よりも大きく劣る。Googleからもその旨がメールで送られてくる。
.emacsにJabberの設定を書き込む
(require 'jabber) (setq jabber-account-list (quote(("username@gmail.com" ;自分のアドレス (:password . "application-specific password") ;アプリケーション固有パスワード (:network-server . "talk.google.com") (:connection-type . ssl)))))
上のように書き加える。
これで完了。
うーん、でも.emacsにパスワードを晒すことになるのはちょっと不安だなあ。アプリケーション限定とはいえ。
Alexander Tamoykin : Google Talk inside Emacs
ここのコメントを見たら暗号化をする方法が書かれていたけれども、やったらエラーは発生した。
エラーが出ないようにいじってみたが、elispは書けないし、試すにしても結構重くて嫌になってしまった。