2015-04-15 65 views
1

我想寫一個小應用程序來驗證GitHub組織的成員。GitHub API應用程序列表非公開組織成員

應用程序應該將具體的GitHub組織成員與數據庫匹配。當某人不在數據庫中時,應將其從GitHub組織中刪除,等等。

我使用GitHub API的問題是,以下請求僅列出公共成員資格(因爲我沒有作爲用戶進行身份驗證,但我不想)。

https://api.github.com/orgs/_orgname_/members?client_id=_client_id_&client_secret=_client_secret_

其中ORGNAME,_client_id_和_client_secret_與實際的組織名稱,並在該組織登記的客戶端ID /隱匿對更換。

如何在不進行身份驗證的情況下訪問私有成員(僅作爲應用程序(server2server))?

回答

1

您不能 - 您需要以用戶身份進行身份驗證並擁有正確的權限。當您提供CLIENT_ID和client_secret,你還在做身份認證的請求:

https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications

而且身份認證的請求只能用於讀取公開信息。

+0

這就是我所說的。未經身份驗證的用戶身份未經身份驗證,但已通過身份驗證。不幸的是,我沒有發現 - 而且我認爲沒有 - 「爲應用程序賦予權限」的方法 – sventschui

+0

並不是因爲應用程序本身無法執行任何操作,因爲它們沒有任何與其關聯的權限。只有用戶可以在GitHub上執行操作,因此應用程序通過獲取具有某些特定權限的標記來代表它們執行操作。 –

+0

是的,對於我的用例,我需要應用程序權限。一種方式是分配一個虛擬用戶,但這感覺很糟糕 – sventschui

相關問題