移転しました http://please-sleep.cou929.nu/20130121.html
移転しました http://please-sleep.cou929.nu/20130121.html
デジタル・アイデンティティの世界へようこそ はじめまして、OpenID Foundation JapanでエバンジェリストをしているNovです。 この連載では、僕を含めOpenID Foundation Japanにかかわるメンバーで、OpenID ConnectやOAuthなどの「デジタル・アイデンティティ(Digital Identity)」にかかわる技術について紹介していきます。 APIエコノミー時代のデジタル・アイデンティティ 世界中で9億人のユーザーを抱える「Facebook」や5億人のユーザーを持つ「Twitter」など、巨大なソーシャルグラフを持つサービスが、日々その存在感を増しています。日本でも、グリーやモバゲーなどがそれぞれソーシャルゲームプラットフォームを公開し、国内に一気に巨大なソーシャルゲーム市場を作り上げました。最近では、ユーザー数が5000万人を突破し、プラット
In some of the feedback I have gotten on the openID Connect spec, the statement is made that Connect is too complicated. That OAuth 2.0 is all you need to do authentication. Many point to Identity Pro… 英語読みたくないという人のために簡単に解説すると… OAuth 2.0 の implicit flow を使って「認証」をしようとすると、とっても大きな穴が開きます。 カット&ペーストアタックが可能だからです。 OAuth 認証?は、図1のような流れになります。 図1 OAuth 認証?の流れ 一見、問題なさそうに見えます。しかし、それはすべてのサイトが「良いサイト」ならばです。 Site_A
The OAuth 2.0 Protocol draft-ietf-oauth-v2-10 Abstract これはOAuth 2.0プロトコルの仕様書である. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is
FacebookやTwitterをはじめ、mixiやLinkedInでも使用されているAPIへの接続の基本とも言えるOAuth。ソーシャルメディアを活用したウェブサービスを構築するには、OAuthをしっかり理解しておいたほうが良さそうです。そこで、今回はOAuthについての基本情報をまとめてみました。実装作業に入る前の予備知識として知っておくと開発が早く進むと思います。 OAuthをひとことで言うと 「ユーザがとあるサービスAにサービスBを経由して安全に接続するための認証手段」といえば分かるでしょうか。これによって、ユーザはサービスAで使用しているユーザ名やパスワードを、第3者であるサービスBに明かさずに安全に接続できるようになるわけです。 たとえば、このブログのユーザはTwitter(サービスA)にこのサイト(サービスB)を経由して安全につぶやきを投稿できるようになるわけです。その際、こ
Facebook Graph APIの実験の為に、いろいろなサンプルアプリを作ったりしています。 本番用のアプリを作るときはRailsを採用したりするのですが、簡単にAPIを試すだけのサンプルの場合は、Sinatraを使ったほうがサクっと作れて便利ですよね。 そんなときは、Ruby OAuth2 gemとSinatraを使うと、「Facebookアカウントでのログインの仕組み」を簡単に実装することが出来たりします。 今回は、ボクが普段使っているサンプルコードを紹介したいと思います。 本当は Rack::Session::Pool を使いたいのですが、shotgunと併用するとうまくセッションが効いてくれなかったりすることもあり、Rack::Session::Cookieで我慢しています。 https://gist.github.com/998545 require 'rubygems' r
いままで Mix-up Attack は Client が AS 毎に redirect_uri を使い分けていれば防げると信じられてきましたが、それじゃ防げないケースもあるよってのが OAuth ML に投稿されました。 細かい解説は英語読んでもらうとして、シーケンスにするとこういうことです。 Attacker AS が (Display Name やロゴ等を通じて) 一見 Honest Client に見えるような Client (Attacker Client) を Honest AS に登録しておく必要があります。 User が Attacker AS 選んでるのに Honest AS に飛んで Approve してしまってる部分も、Attacker Proxy が利用可能な状況 (e.g., Client が HTTP なエンドポイントで Honest AS のログインボタン等を
OAuth 2.0で Webサービスの利用方法はどう変わるか ソーシャルAPI活用に必須の“OAuth”の基礎知識 株式会社ビーコンIT 木村篤彦 2011/2/2 TwitterがOAuth 1.0を採用したのを皮切りに、今では多くのサービスがOAuth 1.0に対応しています。国内でも、例えば、マイクロブログ型コラボツール「youRoom」、小規模グループ向けグループウェア「サイボウズLive」、「はてな」のいくつかのサービス、「Yahoo!オークション」、リアルタイムドローツール「Cacoo」などがOAuth 1.0に対応したAPIを公開しています。 ここ数年でOAuthはさまざまなWebサービスのリソースを利用する際の認証方式として普及してきました。これは大きなプレーヤーがサポートしたことも一因ですが、OAuthの持つ以下の2つの特徴によって、「OAuthを使うと、サービスプロバイ
Google, twitter, mixiアプリなどのAPI認可のためのOAuth(オース)という プロトコールが利用されています。 今回は、マッシュアップなWebサービスを作る上で必要になってくるOAuthの簡単な概念とrubyでの使用例を紹介したいと思います。 ■ OAuthとは? デスクトップアプリやwebアプリケーションなどにセキュアなAPI認証の 標準的な手段を提供するオープンプロトコルです。 OAuth利用することによって、ユーザのgoogleアカウント情報(ID,Password)を保持しなくてもgoogleのアドレス帳などを参照するwebサービスを作ることができます。 ■ OAuthが必要になった背景 OAuthがなかった場合、先程の例のようなgoogleのアドレス帳を参照するサービスを作ろうとした場合、ユーザのgoogleアカウント情報をもとにアクセスすることになります。
前置き 前回の記事でOAuthを使ってTwitter APIにアクセスすることができるようになりましたが、ruby-oauthは内部でNet::HTTPを呼び出しているため、そのままではGoogle App Engine for Java上のJRuby(以下JRuby for GAE/J)で利用できません。 「JRuby for GAE/JでもNet::HTTPが使えるようになる」というrb-gae-supportと組み合わせればOKなのかもしれませんが*1、OAuthの仕様自体はシンプルなものですし、せっかくなので勉強がてら自分で実装してみることにします。 車輪の再発明おいしいです!*2 ちなみにタイトルにRuby編と付いていますが、他の言語編を作成する予定は特にありません。 OAuthの仕様 実装の前にOAuthの仕様や、そもそもの成り立ちについて調べました。既にわかりやすいまとめ記事
OAuth認証でTwitterを利用するWebアプリケーションの作り方を以前紹介しました。OAuth認証はさまざまなサイトで使われていますが、使い方がちょっとずつ違っていたりして、プログラミングが苦手な人には敷居が高い気がします。せっかくおもしろいことを思いついても、最初の段階で躓いて挫折するのはがっかりなので、簡単なサンプルがたくさんあるといいと思います。 というわけで、PHPでFacebookのOAuth認証を利用する例を紹介しましょう。 Facebookの開発者サイトでアプリケーションを登録し、アプリケーションIDとシークレットキーを取得します。 2つのファイルでOAuth(説明用) OAuth認証の開始ページを/facebook/oauth-start.php、終了ページを/facebook/oauth-end.phpとします。 oauth-start.phpは次のようになります。
node.js + express でTwitter認証をしてみました。今回は取得した情報をセッションに格納していますが、これを MySQL や MongoDB に保存すれば「Twitterでログイン」みたいな事は簡単に出来そうですね。 下記環境で動作確認しています。 Node.js v0.4.8 express v2.3.11 jade v0.12.1 oauth v0.9.0 実装する# 必要なモジュールを npm でインストールします。 // This program is free software. It comes without any warranty, to // the extent permitted by applicable law. You can redistribute it // and/or modify it under the terms of th
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く