Vercel OpenID Connect Provider

osu OAuth to OIDC bridge

這個服務把 osu! OAuth authorization code flow 轉成標準 OIDC, 讓支援 OpenID Connect 的服務可以用 osu! 帳號登入。

Required Env

  • OIDC_ISSUER
  • OSU_CLIENT_ID
  • OSU_CLIENT_SECRET
  • OIDC_PRIVATE_KEY
  • OIDC_CLIENTS

Claims

profile scope 回傳標準 OIDC profile claims;osu 專屬欄位可用 osu scope 另外請求。

Deploy

將 osu OAuth callback 設為 /api/osu/callback, 再把 discovery URL 填入你的 OIDC client。

Example OIDC Client

OIDC_CLIENTS='[
  {
    "client_id": "example-client",
    "client_secret": "example-secret",
    "redirect_uris": ["https://example.com/callback"]
  }
]'