Wassr*Labs
Wassr 認証API

Wassr 認証 API は Wassr アカウントによる認証システムをサードパーティーアプリケーションに実装するための API です。

Wassr 認証 API を使うことによりログインID/パスワードをあなたのアプリケーションに入力させずに、ヒトコトを更新することができます

ユーザーは任意のタイミングでそのアプリケーションに対するヒトコト更新許可を取り消すことができます

 
 

Wassr 認証 API 仕様

アプリケーションの登録

まずは開発したアプリケーションを登録してください。

まずは会員登録またはログインしてください

認証用URLを生成する

下記のパラメータを付与して認証用 URL としてください

http://wassr.jp/auth/?app_key={APP_KEY}&sig={SIG}

app_key アプリケーションキー(登録時に発行されます) 必須
sig URLの正当性を証明するためのシグネチャです(下記に詳細を解説) 必須
perms ユーザーに何を求めるか。login_id と token の二種類が指定可能。login_id を指定した場合はログインIDのみ得られる。token を指定した場合にはヒトコトを更新するためのトークンが得られる。この API を単に認証用に使う場合には login_id を使えばよい。デフォルトは token。 任意(optional)

sig の生成は下記の手順によりおこないます

  1. 'app_key'という文字列と app_key の値を連結する
  2. アプリケーションキー登録時に発行された秘密鍵で HMAC SHA1(hex) に変換する

perl の場合には Digest::HMAC_SHA1 モジュールにより簡単に実装できます

下記に Perl による実装例を示す

use strict;
use warnings;
use Digest::HMAC_SHA1;

die "Usage: $0 app_key secret_key\n" unless @ARGV==2;

my ($app_key, $secret_key) = @ARGV;

my $hma = Digest::HMAC_SHA1->new($secret_key);
$hma->add('app_key');
$hma->add($app_key);
print "http://wassr.jp/auth/?app_key=@{[ $app_key ]}&sig=@{[ $hma->hexdigest ]}\n";

コールバックされる

認証完了後、アプリケーション登録時に登録したコールバックURLにコールバックされます。

コールバックURLには ?hmac=61f1234e33cc8d9c043e4d285094b155d07b0523 のような文字列が付与されます。これは下記の例でいえば token, BOOFY を連結して hmac sha1 hexdigest を算出したものに等しいです。このパラメータを用いてクエリの正当性を確認してください。

perms=token を指定した場合

コールバックする際に、?token=BOOFY というパラメータが付与されます。

このとき付与されたトークン(例では BOOFY)をBasic認証のパスワードとして、 通常のログイン時に発行されるパスワードの代わり更新APIにてヒトコトを更新できます

これにより、ヒトコトを更新するサイトにてユーザーのログインID/パスワードを取得することなくトークンのみでヒトコトを更新できます

perms=login_id を指定した場合

コールバックする際に、?login_id=tksk というパラメータが付与されます。

このときに付与されたログインID(例では tksk)によりユーザーを識別できます