yochiyochirb/kawaiichan

認証を Signin with Slack に変える?

Opened this issue · 4 comments

omniauth-slack に signin with slack の承認フローを追加する PR がマージされたので GitHub の HEAD を使えば identity.basic などのスコープを使うことができます。

よいこと

  • アバター画像の URL 取れる
  • ログイン時の Authorize のときの画面遷移が1つ減る
  • Slack 的にはこれが正攻法?

悪いこと

  • 結構な breaking changes で uid が変わる (でもこれは一意性を担保する点ではよい?)
  • アカウント名が取れない (でもこれはストラテジ側の問題かもなので raw response を見てみないと)
  • なんかまた変わりそう

WIP #51

アカウント名が取れない (でもこれはストラテジ側の問題かもなので raw response を見てみないと)

raw response みたら identity の scope 指定しててもそのユーザーの user_info は取ってこれてて、よく見たらストラテジ側でも raw_info に突っ込んでくれてるようでした。

つまり深いところにあるけど auth.dig(:extra, :raw_info, :user_info, :user, :name) でアカウント名もちゃんと取れます。

💭全然どうでもいいことだけど、 authHashie::Mash の子どもにあたるから auth.info.nickname みたいにドットでアクセスできるって、死んだばあちゃんが言ってました。(お好みで)

ここに書かなくてもよかった