0

openID

openIDで認証システムをつくることになったんで少し調べてみた。
ある程度理解できたのでメモにしてみる。

引用もなしにopenIDを自分なりに説明すると
URLがログインIDになる。
IDとパスワードの認証はOpenIDを発行するプロバイダがやってくれる。

なので、わざわざログインが必要なサイトに会員登録する手間が省け、ID一つでいろんなサイトを利用できるというわけです。

なるほど、URLは一人一つもてるし、重複がない。

このプロバイダとは現在だと

  • ライブドア
  • ヤフー
  • openID.ne.jp

などがあります。
ユーザーに唯一無二のID(URL)を提供できる媒体です。

自分で立ち上げたブログなどもID(URL)として扱うことができるけど、それもこれらのプロバイダーを介して行われます。

開発者の立場としてopenIDを利用するメリットとしては、

  • 開発にかけるコストが低くなる。
  • 個人情報を保持しなくてよい。

逆にデメリットとしては、

  • メールアドレスが取得できない。
  • ユーザーを特定できない。

で、openIDもバージョンがあって1.1と2.0があります。
メインストリームは1.1
ただ今年になってヤフーが2.0に対応したりで、以前のRSS状態になりつつあります。
2.0はURIでなくXMLでの対応が可能らしい。

でヤフーからパクッた用語集。
OpenID Provider(OP)
OpenIDを発行するプロバイダ(例:Yahoo! JAPAN)

Relying Party(RP)
OpenIDによる認証を受け入れるウェブサイト(Haruとかコミュニティ)

End User
OpenIDの利用者(ログインする人)

疑問
URLはメールアドレスでは無理なのか?そんな規格があってもいいんじゃない?
ライブドアとかJugemの認証APIってopenIDではないの?

0

トランザクションとは

関連する複数の処理を一つの処理単位としてまとめたもの。例えば、

  1. オークションの現在の価格を見る
  2. 自分の預金残高が入札価格に足りるか確認する
  3. 入札する
    という流れの場合、1から3までの処理の中で、オークションの現在の価格が変動してしまっては困ります。

具体的には、現在の預金残高が\2000で、現在のオークション価格が\1900とします。次の入札には\2000あれば参加できるので入札しようとしたのですが、預金残高の確認中に誰か別の人が入札をしてしまい、3の処理がうまくいかない場合があります。

このようなときに、1~3までの複数の処理を1つの処理単位としてまとめる必要があり、このまとめる処理のことを、トランザクション処理といいます。