LoginSignup
0
0

More than 1 year has passed since last update.

タスク管理ツール remember the milkのAuth Token発行方法

Last updated at Posted at 2022-12-18

Overview

タスク管理ツール remember the milk のAuth Tokenの発行方法に躓いたので、備忘録として記載

事前準備

frobの取得

Auth Token発行時に利用するパラメータの取得を行う

frob取得のURL

https://www.rememberthemilk.com/services/auth/?api_key="API key申請時に取得"&perms=read&api_sig="api_sig(署名 ※後述)"

API Sigの生成

frob取得のURLのパラメータとして、署名(api_sig)が必要
下記のパラメータを結合し、md5で暗号化する

  1. API key申請時に取得した secret_key (値のみ)
  2. API key申請時に取得した api_key (keyと値)
  3. perms と 種類(read, delete など)
require 'digest/md5'

code = secret_key
code << 'api_key' << api_key
code << 'perms' << 'read'
frob = Digest::MD5.hexdigest(code)

URLにアクセスし、下記のようなコードが出力されればOK

No callback URL specified for this API key. Your frob value is "ここにfrobのコードが表示される"

Auth Tokenの発行

Auth Token取得のURL

https://api.rememberthemilk.com/services/rest/?api_key="API key申請時に取得"&format=json&frob="取得したfrob"&method=rtm.auth.getToken&api_sig="api_sig(署名)"

API Sigの生成

Auth Token取得のURLのパラメータとして、署名(api_sig)が必要
下記のパラメータを結合し、md5で暗号化する

  1. API key申請時に取得した secret_key (値のみ)
  2. API key申請時に取得した api_key (keyと値)
  3. formatjsonを指定
  4. frob、上記で取得した frob (keyと値)
  5. methodrtm.auth.getToken (keyと値)
require 'digest/md5'

code = secret_key
code << 'api_key' << api_key
code << 'format' << 'json'
code << 'frob' << frob
code << 'method' << 'rtm.auth.getToken'

api_sig = Digest::MD5.hexdigest(code)

コード

発行用のRuby Script / Rustで作成しました

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0