# CollectiveOAuth **Repository Path**: rthinking/CollectiveOAuth ## Basic Information - **Project Name**: CollectiveOAuth - **Description**: .Net平台(C#) 史上最全的整合第三方登录目前已包含Github、Gitee、钉钉、百度、支付宝、微信、企业微信、微博、QQ、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest、人人、华为、酷家乐、Gitlab、美团、饿了么、等第三方平台的授权登录。以下平台正在接入中: 推特、淘宝 - **Primary Language**: C# - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: https://geekoutnet.github.io/CollectiveOAuth - **GVP Project**: No ## Statistics - **Stars**: 973 - **Forks**: 319 - **Created**: 2020-01-28 - **Last Updated**: 2026-10-10 ## Categories & Tags **Categories**: oauth-dev **Tags**: None ## README
.NET 平台的第三方 OAuth 登录聚合库
一套接口接入微信、支付宝、钉钉、QQ、GitHub、Google 等 31 个平台
使用文档 · GitHub · Gitee · English
--- ## 简介 CollectiveOAuth 把各家平台五花八门的 OAuth 协议细节封装起来。无论接入哪个平台,都只需要两个调用: ```text 你的应用 ──authorize()──▶ 第三方授权页 ──回调──▶ login() ──▶ AuthUser(统一的用户信息) ``` 项目以 Java 社区成熟的 [JustAuth](https://github.com/justauth/JustAuth) 1.16.7 为基准实现。每个平台的授权地址、发出的请求和解析出的用户信息,都与 JustAuth 做过逐项的自动化比对测试。 ## 特性 - **覆盖面广**:31 个国内外平台,国内包括微信、企业微信、支付宝、钉钉、QQ、微博、抖音、华为、淘宝等,海外包括 GitHub、Google、Microsoft、Facebook、Twitter、LinkedIn 等。 - **API 统一**:所有平台共用 `ClientConfig`、`AuthCallback`、`AuthResponse`、`AuthUser`,切换平台只需更换请求类。 - **安全默认值**:state 一次性使用,防止 CSRF 和回调重放;授权地址参数自动 URL 编码。 - **支持多实例部署**:提供基于 `IDistributedCache` 的 state 缓存,可接入 Redis。 - **可控的网络行为**:支持按平台设置超时和代理;第三方返回错误时给出状态码和响应内容,便于排查。 - **跨框架**:同时支持 .NET Framework 4.6.2+、.NET Standard 2.0 和 .NET 8。 - **测试保障**:236 个单元测试与差分测试,覆盖全部 31 个平台。 ## 支持的平台 | | 平台 | 平台名(authSource) | 请求类 | 官方文档 | |:-:|---|---|---|:-:| |