2021-07-26
GitHubかんたん編集ツールで使ったOpenID認証に対応するサーバーコードを整理しました。 Denoを使って簡単にログイン付きサービスが作れます。jigインターンでおなじみお気軽サーバーフレームワーク Server.js の拡張です。

GitHubログイン実験」(テンポラリなサービスなのでそのうち落とすか別の用途に使います)
GitHubアカウントを持っている人向けです。src on GitHub

0. ドメインとDenoを起動できるサーバーを準備しましょう

1. GitHubのDeveloper applicationsから、"New OAuth App"
2. コールバックURLに "ドメイン + /openid_callback" を登録します
3. client_id を server.jsのclient_idと、static/index.htmlのログインURLのものを上書き
4. client_secret を生成して、client_secret.txt ファイルを作って保存
5. ドメインを設定したDenoがインストールされたサーバーで run.sh を起動
6. そのドメインにブラウザでアクセス


こんな画面が出るはずです。
7. GitHubでログイン


8. 設定したアプリへのログイン許可


9. accessTokenがlocalStorageに設定され、それを使ってログインユーザー情報をテスト表示!できました!


GitHubの Authorized OAuth Apps からアプリを選んで、revoke access すると・・・


accessTokenが無効になり、表示できなくなりました。

GitHub連携サービス、いろいろ作りましょう!

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS