Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Fuelphptokyo201303

2,332 views

Published on

  • Be the first to comment

Fuelphptokyo201303

  1. 1. FuelPHP Advent Calender2012 FuelPHP用ソーシャルログイン専用認証パッケージ DsAuthでNinjAuthをもっと簡単に利用する の蛇足 Sohei Iwahori(@EGMC) 2013-03-23 FuelPHP勉強会東京13年3月23日土曜日
  2. 2. who? @EGMC http://egmc.me/ しごと こじん13年3月23日土曜日
  3. 3. DsAuth? https://github.com/egmc/fuel-dsauth fuel-ninjauthに完全依存したOAuthログイン認 証パッケージ (twitter|facebook|github)でログインとかのア レ MITライセンス13年3月23日土曜日
  4. 4. like this13年3月23日土曜日
  5. 5. デモはここ http://dsauth-sample.eg2mix.com/13年3月23日土曜日
  6. 6. バックナンバー FuelPHP 勉強会 東京 vol.2でOAuthログインの発表をしてきた https://speakerdeck.com/egmc/fuel-oauth FuelPHP用ソーシャルログイン専用認証パッケージDsAuthでNinjAuth をもっと簡単に利用する http://dasalog.eg2mix.com/fuel-advent2012-dsauth/13年3月23日土曜日
  7. 7. オプションの補足1 ユーザー名の取り扱い ユーザー名は被る可能性がある13年3月23日土曜日
  8. 8. always_confirm_username 新規登録時に必ずユーザー名の入力を強制 オフると基本的にOAuthで認証したユーザー名 を使います13年3月23日土曜日
  9. 9. allow_duplicated_username 重複ユーザー名を許容 always_confirm_usernameがオフで allow_duplicated_usernameがオンになってると 重複した時だけ入力ページを表示13年3月23日土曜日
  10. 10. オプションの補足2 facebookイメージURLの変更13年3月23日土曜日
  11. 11. auto_modify_userinfo 今のところやっているのはfacebookのユーザー イメージURLを書き換えるだけ if (Config::get(dsauth.auto_modify_userinfo)) { // this will be removed if facebook image url has no token if (strpos($user_to_resgister[image], https://graph.facebook.com/me/picture) !== false) { $user_to_resgister[image] = "https://graph.facebook.com/{$user_to_resgister[uid]}/ picture?type=normal"; } }13年3月23日土曜日
  12. 12. なんで? fuel-oauth2が渡してくるfacebookのユーザーイ メージURLにOAuthトークンがくっついてくる から13年3月23日土曜日
  13. 13. ここですね https://github.com/fuel-packages/fuel-oauth2/blob/ master/classes/provider/facebook.php ! public function get_user_info(Token_Access $token) ! { ! ! $url = https://graph.facebook.com/me?.http_build_query(array( ! ! ! access_token => $token->access_token, ! ! )); ! ! $user = json_decode(file_get_contents($url)); ! ! // Create a response from the request ! ! return array( ! ! ! uid => $user->id, ! ! ! name => $user->name, ! ! ! nickname => isset($user->username) ? $user->username : null, ! ! ! email => isset($user->email) ? $user->email : null, ! ! ! image => https://graph.facebook.com/me/picture? type=normal&access_token=.$token->access_token, ! ! ! urls => array( ! ! ! Facebook => $user->link, ! ! ! ), ! ! ); ! }13年3月23日土曜日
  14. 14. その他 fuel-oauth2はallow_url_fopenがオンになってな いと動かないよ13年3月23日土曜日
  15. 15. なんで? httpリクエストにfile_get_contentsを使ってるか ら13年3月23日土曜日
  16. 16. とのことです https://github.com/fuel-packages/fuel-oauth2/ commit/ f733cd8de957918edef2e0aed8d086902dc1f4fe13年3月23日土曜日
  17. 17. 気をつけましょう13年3月23日土曜日
  18. 18. その他2 fuel-ninjauthのレポジトリが移動してました https://github.com/philsturgeon/fuel-ninjauth13年3月23日土曜日
  19. 19. その他3 Fuel1.5系でDsAuthを動かそうとしたのですが マイグレーションで絶賛こけております (パッケージが見つけられてない)13年3月23日土曜日
  20. 20. なんで? 調査中です13年3月23日土曜日
  21. 21. 以上となります13年3月23日土曜日

×