最近 Web 上で写真をサッと管理するためのアプリケーションを Cloudflare 上で構築しているのですが、その際に Cloudflare Workers, KV を用いて GitHub アカウントを用いたアクセス制御を行う機会があったのでそのメモです。 認証の流れ GitHub アカウントと連携する場合は OAuth 2.0 を利用するため、クライアント側では次の流れを踏みます。 state パラメータを生成し、https://github.com/login/oauth/authorize?client_id=<id>&state=<state>(認可エンドポイント)へ遷移 GitHub 上の認可画面で、ユーザにアカウント連携の承認を求める。これが許可されると、事前に指定した(Workers 上の)コールバック URL にリダイレクトされる Workers:state パラメータを