2011年8月15日月曜日

OAuthの仕組みについてのメモ

ちょっと前に
twitterのOAuth認証についてのエントリを書きましたが、
ちょっとOAuthについて自分の頭の中が整理できていなかったので、
ちょっと整理します。

OAuthってそのそも、

  • アプリケーションがとあるサービスのAPIを使うための、ユーザに認証してもらうための仕組み

  • アプリケーションはとあるサービスのユーザ名やパスワードをユーザから教えてもらう必要がない


  • です。

    で、
    API提供しているとあるサービスとあるサービス => Service Provider
    アプリケーション => Consumer
    
    とそれぞれ呼びます。

    Consumer(アプリケーション)はService Provider(API提供しているとあるサービス)にConsumerの登録を行います。
    登録すると、Consumer KeyとConsumer Secretが発行されます。Consumer Key/Secretはそのアプリケーションを示すトークンです。このConsumer(アプリケーション)はConsumer Key/Secretを使って、Service Providerにリクエストトークンを発行してもらいます。

    リクエストトークンを発行してもらったら、ConsumerはそのリクエストトークンをパラメータとしたURLを使って、Service Provicerのサイトにリダイレクトを行います。

    ユーザーはリダイレクトされたサイト上にて、ConsumerがService ProviderのAPIを使って情報を取得するのを許可します。

    許可したら、Service Providerはあらかじめ登録されたURLへリダイレクトするので、
    Consumerはそこから、アクセストークンをService Providerに要求し、Service ProviderはアクセストークンをConsumerに送信します。

    このアクセストークンがあれば、ConsumerがService ProviderのAPIを使うことができるようになります。

    ざっと書くとこんな感じでしょうか?

    2011年8月7日日曜日

    第1回Androidテスト祭り に行ってきました。

    第1回Androidテスト祭り に行ってきました。
    行ってきましたと言っても、途中から実行委員にまぜてもらったので、
    スタッフとして参加させていただきました。

    ATNDの参加希望者が定員の倍以上になってしまい、
    Androidでの品質の確保については、たくさんの人が関心を持っているのだと思います。
    (困っている人が多いってことですね><) 今回の発表は非常にレベルが高く、 参加していただいた方々の満足度も高かったのではないかと思います。 個人的には、尾上さんの「テスト可能なUI設計パターン」 が勉強になりました。 ちなみに、僭越ながら私も懇親会でLTをしてきました。 スライドは下記になります。
    講演者の皆様、ご来場していただいた皆様、Ustreamを視聴していただいた皆様、本当にありがとうございました。

    2011年8月4日木曜日

    Jenkinsのインストールのメモ

    Jenkinsのインストールのメモ。あくまでもメモです。

    自宅のサーバーがDebianなので、それを使って。

    まず最初にコマンドラインで、
    wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | apt-key add -
    
    をしたあと、
    /etc/apt/sources.listの末尾に
    deb http://pkg.jenkins-ci.org/debian binary/
    
    を追加します。

    その後
    apt-get update
    apt-get install jenkins
    
    をして、インストールします。

    設定に関しては、
    /etc/default/jenkins
    をいじった後、
    /etc/init.d/jenkins restart
    
    をします。

    /etc/default/jenkins
    は、たとえばポートを変えたい時は、HTTP_PORTを帰ればいいです。
    私は、URLに /jenkins を加えたかったので、
    JENKINS_ARGS に --prerix=/jenkins を加えました。

    詳しくは、ここを見るといいかもしれません。

    URLにアクセスすると
    (例えば、http://localhost:8080/jenkins)

    が出てくるはずです。
    デイリービルド等ジョブを作成したい時は、「新規ジョブ作成」を選んでください。

    のページに遷移しますので、
    適当なジョブ名を入力して、基本的にフリースタイル・プロジェクトのビルドを使います。

    あとは、下記の画面が出てくるので、適当に入力していってください。