C# 史上最全第三方授權框架


Login-OAuth2, so easy.

star

查看更多

特別感謝

JustAuth:這里特別感謝JustAuth開源項目作者提供架構思路(特別是Readme大部分來自於JustAuth,本人比較懶)

.Net平台下 CollectiveOAuth,它僅僅是一個 第三方授權登錄工具類庫,它可以讓我們脫離繁瑣的第三方登錄SDK,讓登錄變得So easy!

特點

廢話不多說,就倆字:

  1. :已集成十多家第三方平台(國內外常用的基本都已包含),仍然還在持續擴展中([開發計划(制作中)]!
  2. :API就是奔着最簡單去設計的(見后面快速開始),盡量讓您用起來沒有障礙感!

快速開始

  • 引入依賴

  • 配置授權信息(默認配置在webconfig中, 可以改造存儲數據庫或者其它任意地方)

1 <!--Demo: 微信服務號授權配置-->
2 <add key="CollectiveOAuth_WECHAT_MP_ClientId" value="wxer6785660834656" />
3 <add key="CollectiveOAuth_WECHAT_MP_ClientSecret" value="98967867678678678546434345344" />
4 <add key="CollectiveOAuth_WECHAT_MP_Scope" value="snsapi_userinfo" />
5 <add key="CollectiveOAuth_WECHAT_MP_RedirectUri" value="https://yours.domain.com/oauth2/callback?authSource=WECHAT_MP" />

 

  • 調用api
// 創建授權request
 1 var clientConfig = new ClientConfig();
 2 clientConfig.clientId = AppSettingUtils.GetStrValue($"CollectiveOAuth_XXXXXX_ClientId");
 3 clientConfig.clientSecret = AppSettingUtils.GetStrValue($"CollectiveOAuth_XXXXXX_ClientSecret");
 4 clientConfig.redirectUri = AppSettingUtils.GetStrValue($"CollectiveOAuth_XXXXXX_RedirectUri");
 5 clientConfig.scope = AppSettingUtils.GetStrValue($"CollectiveOAuth_XXXXXX_Scope");
 6 
 7 AuthRequest authRequest = new GiteeAuthRequest(clientConfig);
 8 // 生成授權頁面
 9 authRequest.authorize("state");
10 // 授權登錄后會返回code(auth_code(僅限支付寶))、state,可以用AuthCallback類作為回調接口的參數
11 // 注:CollectiveOAuth默認保存state的時效為5分鍾,5分鍾內未使用則會自動清除過期的state
12 authRequest.login(callback);

 

API列表

:computer: 平台 :coffee: API類 :page_facing_up: SDK
GiteeAuthSource 參考文檔
GithubAuthRequest 參考文檔
WeiboAuthRequest 參考文檔
DingTalkScanAuthRequest 參考文檔
BaiduAuthRequest 參考文檔
CodingAuthRequest 參考文檔
OschinaAuthRequest 參考文檔
AlipayMPAuthRequest 參考文檔
QQAuthRequest 參考文檔
WeChatOpenAuthRequest 參考文檔
WeChatMPAuthRequest 參考文檔
WeChatEnterpriseAuthRequest 參考文檔
WeChatEnterpriseScanAuthRequest 參考文檔
[TaobaoAuthRequest] 參考文檔
GoogleAuthRequest 參考文檔
FacebookAuthRequest 參考文檔
DouYinAuthRequest 參考文檔
LinkedInAuthRequest 參考文檔
MicrosoftAuthRequest 參考文檔
XiaoMiAuthRequest 參考文檔
ToutiaoAuthRequest 參考文檔
TeambitionAuthRequest 參考文檔
RenrenAuthRequest 參考文檔
PinterestAuthRequest 參考文檔
StackOverflowAuthRequest 參考文檔
HuaweiAuthRequest 參考文檔
KujialeAuthRequest 參考文檔
GitlabAuthRequest 參考文檔
MeituanAuthRequest 參考文檔
ElemeAuthRequest 參考文檔
[TwitterAuthRequest] 參考文檔

_請知悉:經咨詢CSDN官方客服得知,CSDN的授權開放平台已經下線。如果以前申請過的應用,可以繼續使用,但是不再支持申請新的應用。

后續開發計划

正在籌備中

另外,期待有興趣的你和我一起完善和優化這個項目!

貢獻代碼

  1. fork本項目到自己的repo
  2. 把fork過去的項目也就是你倉庫中的項目clone到你的本地
  3. 修改代碼
  4. commit后push到自己的庫
  5. 發起PR(pull request) 請求,提交到dev分支
  6. 等待作者合並

致謝

在項目立項初期,也對當前開源圈的一些相同類型的項目作過調研,同時本項目也參考過這些項目,再次感謝開源圈內的朋友。

圖片引用自lets-mica

關於OAuth

關注&交流

公眾號 QQ群

QQ群

  • CollectiveOAuth交流群 (836803890):專業交流該項目

請喝咖啡

支付寶 微信

開源不求盈利,多少都是心意,生活不易,隨緣隨緣……


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM