2013-10-12 49 views
1

我已經使用DotNetOpenOAuth的ASP.NET簡單成員資格數據庫登錄到我的ASP.NET MVC應用程序。我想使用相同的身份驗證憑據進行身份驗證以使用Google雲端硬盤應用。也就是說,我是否可以使用AuthenticationResult對象詳細信息來構建IAuthenticator對象,以便對我的Google雲端硬盤應用進行身份驗證?使用DotNetOpenAuth進行Google Drive SDK的認證

我的目標是使用已登錄的Google用戶以後授權使用我的Google雲端硬盤應用程序,而不是再次詢問他/她的憑據。

回答

1

爲了獲得對Drive後端的授權和身份驗證,您需要檢索並保存並訪問令牌,以將其附加到您製作的每個請求。對於已經實現一個auth層的系統中的典型的流量爲:

  • 驗證用戶
  • 通過以下在auth步驟上[1]解釋您的用戶連接到谷歌硬盤帳戶。
  • 爲用戶保留訪問令牌刷新令牌。
  • 使用他/她的訪問令牌對用戶代表用戶進行的每個請求進行身份驗證。

[1] https://developers.google.com/drive/about-auth

+0

是十分明顯的對我。但是,我想使用內置的OAuth身份驗證作爲我的應用程序的成員身份,然後使用相同的身份驗證詳細信息。通過電子郵件授權Google Drive應用。也就是說,在AccountController的ExternalLoginCallBack方法中,身份驗證通過以下代碼行完成:AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication(Url.Action(「ExternalLoginCallback」,new {ReturnUrl = returnUrl}));'然後我調用IAuthenticator authenticator = Utils.GetCredentials(null,null);'初始化Drive App授權 – Edi

+0

我的問題是如何使用'Utils.GetCredentials'方法來利用早先通過'AuthenticationResult'提供的認證細節。 – Edi