SuperAPI AI 工具集

oauth-social-login

通用与其它

查看项目

更新于 10-15 20:30

技能介绍

用途:为应用添加“使用 Google/GitHub 登录”等社交登录入口,降低注册摩擦,支持将多个认证提供商关联到同一账号,并可用于企业 SSO 场景。

主要能力:生成带 state 的授权 URL 并跳转至提供商同意页;在回调中校验 state 防 CSRF、用授权码交换令牌、拉取并归一化用户资料;按 OAuth 提供商 ID 查找用户,若邮箱已存在则关联到既有账号,否则创建新用户;创建会话 Cookie;支持解绑账号,但会阻止移除最后一个认证方式。

使用方式:配置各提供商的 clientId、clientSecret、授权/令牌/用户信息 URL 与 scopes;暴露 /auth/:provider 发起流程、/auth/:provider/callback 处理回调;示例包含 TypeScript 的 OAuthService、Express 路由、UserService,以及 Python 的 OAuthService 与数据库 users 表结构。

限制:资料未提供具体安装命令、依赖版本、收费或价格信息;示例中的 userService、sessionService、db 等为占位实现,需自行接入;state 存储为内存 Map,示例中未展示分布式或持久化方案;GitHub 邮箱可能为空,需额外处理。