2016-06-07 58 views
1

我正在將google signin2整合到我的網站中,並一直遵循referenceinstruction在您的瀏覽器中執行了哪些步驟的OAuth2流程?

我是OAuth2的新手,並試圖找出授權碼流的哪些步驟是這個谷歌api跟蹤?

由google返回的響應包含id_tokenaccess_token以及有關Google用戶的其他信息。我對id_token授權碼由標準規定嗎? access_token在這裏有什麼作用?

+----------+ 
| Resource | 
| Owner | 
|   | 
+----------+ 
    ^
     | 
    (B) 
+----|-----+   Client Identifier  +---------------+ 
|   -+----(A)-- & Redirection URI ---->|    | 
| User- |         | Authorization | 
| Agent -+----(B)-- User authenticates --->|  Server | 
|   |         |    | 
|   -+----(C)-- Authorization Code ---<|    | 
+-|----|---+         +---------------+ 
    | |          ^ v 
    (A) (C)          |  | 
    | |           |  | 
^ v           |  | 
+---------+          |  | 
|   |>---(D)-- Authorization Code ---------'  | 
| Client |   & Redirection URI     | 
|   |            | 
|   |<---(E)----- Access Token -------------------' 
+---------+  (w/ Optional Refresh Token) 

根據標準我的應用程序應該要求從谷歌一個access_tokenauthronization_code。但後端驗證指令並沒有說任何關於請求access_token,只是驗證id_token無論是在您的應用程序或通過其他谷歌服務。是否gsignin-2不是授權碼根本沒有(隱含)?

如果我的應用程序只需要谷歌登錄,所以用戶不必註冊自己的電子郵件+密碼,即。我沒有在瀏覽器之外請求谷歌的任何資源,我應該選擇哪種流量?

回答

0

我到目前爲止的流程是隱含授權流程,實際上google返回的access_token是空的。

在服務器端,我必須每次使用javascript版本的google-client-api驗證id_token。由於我必須處理爲服務器上的每個請求驗證id_token的喧囂,我想也許我應該使用驗證碼來代替。

相關問題