メインコンテンツまでスキップ

メンバー評価 API

これは何か

「この人はこのサークルのメンバーか?」という問いに答える API です。

Cloudflare Access という外部の認証システムと連携して使います。たとえば「サークルAのメンバーだけがアクセスできる内部ページ」を作りたいとき、Cloudflare Access がこの API を呼び出して「このメールアドレスの人はサークルAのメンバーか?」を確認し、メンバーであればアクセスを許可、そうでなければ拒否します。

Happa はサークルのメンバー情報を持っているため、この判定を担うことができます。

仕組み(技術的な詳細を知らなくていい人向けの説明)

ユーザーが「サークルAの内部ページ」にアクセスしようとする

Cloudflare Access が「このページはサークルAのメンバー専用」と確認する

Cloudflare Access が Happa に問い合わせる
「このメールアドレスの人はサークルAのメンバーですか?」

Happa(メンバー評価 API)が Happa のメンバー情報を確認して答える
「はい、メンバーです」または「いいえ、メンバーではありません」

Cloudflare Access がアクセスを許可または拒否する

誰が使うか

  • Cloudflare Access(外部認証システム):自動的に呼び出す。人間が直接使うものではない。

できなければならないこと

  • Cloudflare Access からのリクエストを受け取り、メンバーシップを判定して結果を返せる
  • 結果は Cloudflare Access の仕様に従った形式(RSA 署名付き JWT)で返せる

できてはいけないこと

  • この API を通じてメンバーシップ情報を書き込むこと。読み取り・判定専用。
  • Happa に存在しないメールアドレスを「メンバーである」と判定すること
  • 実際にはメンバーでない人を「メンバーである」と誤判定すること
  • 判定結果を署名なしで返すこと。署名がないと Cloudflare Access が結果を信頼できない。