人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

OAuth認証によるログインを実装したアプリケーションを開発しています。

アクセストークンの保存について、質問させてください。

一度、認証を経た後に、ユーザのアクセストークンを取得した後、その保存先としてDBに格納する記事が多いのですが、セッションに保存するのではまずいのでしょうか?
むしろ、通常の(OAuthを利用しない時の)ログイン時のように、セッションに保存する方が自然な気がするのですが…。


●質問者: 匿名質問者
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● 匿名回答1号

セッションに置かずDBなどに保管する手間をかけるのはセキュリティ強化の一環です。
http://alpha.mixi.co.jp/2013/12020/

OAuth 2.0では, OAuth Clientが現在のセッションに紐づくstateパラメータを用意し, 認可要求に含むことが推奨されています.
OAuth ServerはOAuth Clientに認可応答を返す際にそのstateパラメータを含み,OAuth Clientはその値とセッションの組み合わせを検証してからアクセストークン取得を試みます.


匿名質問者さんのコメント
ご回答ありがとうございます。

匿名回答2号さんのコメント
横から便乗なのですが…… DBとセッションは同じようなものですが、なぜDBの方がセキュリティが強化されるのでしょうか? 具体的な想定を知っていたら教えていただけるとありがたいです。

匿名回答1号さんのコメント
>> DBとセッションは同じようなもの << 言葉の意味がわかりません。セッションでもDBを使う事があるということを言いたいのかもしれませんが、同じ道具でも組み合わせ方によってできることに違いがでてくるという認識ができるようになってくださることを願ってます。 >> 具体的な想定 << リンク先にあるようにCSRF対策です。

匿名回答2号さんのコメント
OAuth認証でDBを使うと具体的にどういうことが可能になるんでしょうか? リンク先ではDBの話は出てきてない気がしていますが…… #CSRF対策はstate/server_stateの話では?
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ