簡體   English   中英

除了Google以外,是否有OAuth2提供程序無需訪問服務器即可提供訪問令牌驗證?

[英]Any OAuth2 providers other than Google that offer access token validation without an extra server call?

我正在開發一個移動應用程序,必須與它自己的自定義后端API對話。 我寧願不使用自己的身份驗證和帳戶管理,而寧願使用現有提供商的Oauth2。

Google允許您驗證Google生成的Oauth令牌服務器端,而無需調用Google的服務器。 這很重要,因為我將分別認證每個請求。 如果服務器每次都需要調用外部服務以驗證令牌,則該服務將變慢且難以擴展。 Google在本節中介紹了如何驗證其令牌: 驗證令牌 。除了需要每天大約刷新一次Google證書外,您可以僅在自己的服務器上驗證Google生成的OAuth令牌。

我的問題是,是否還有其他不需要驗證令牌的OAuth提供程序? 對於Facebook和Twitter,您都需要調用其服務器以驗證令牌。 由於這些令牌具有到期時間,因此,調用外部服務以驗證此令牌並在令牌有效期內緩存此結果是否被視為一種好習慣? 如果這是一個好習慣,那么我也許可以考慮使用Google OAuth之外的其他服務。

我不知道其他任何主要服務都以Google的方式對令牌進行簽名。 我懷疑(並希望)隨着時間的流逝它將變得越來越普遍。

就Facebook和Twitter而言,您確實必須使用其API驗證令牌,因為它們是頒發令牌的權威。 為了避免不斷向其API發出請求,您可以做的一件事是發出自己的令牌,該令牌將在與您的API通話時設備使用。

它可能看起來像這樣:

POST / login?access_token = twitter_token->聯系Twitter的API->問題並返回您自己的令牌

POST / api / foo?access_token =您的api_token

有了這個,就只需要調用一個外部驗證服務即可。 其余的API調用使用令牌,您可以使用自己的數據庫對其進行驗證。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM