在過去的幾天裏,我一直在苦苦掙扎,並沒有在網絡上找到可靠的,可以理解的解決方案。使用Token保護REST API
我有一個網絡應用程序,它由一個rest api和一個表示層組成。表示層有一個登錄表單,用戶引入的數據被髮送到REST api,然後使用第三方服務來認證用戶。這部分我已經設置好了。
我現在想要的是爲每個後續請求提供基於令牌的身份驗證,因此我不必在每個請求上發送憑據,然後再次對第三方服務進行身份驗證。因此,基本上,使用Spring Security(v 3.1.3),我失去了如何創建一個可靠的安全令牌,將其返回給請求者,然後根據所述令牌驗證請求。
你能指點我正確的方向嗎?或者在線例子?
- 如何生成令牌?如何將令牌返回給客戶端 ?
- 如何在隨後的請求中發送令牌?
- 你如何設置整個事情,所以你第一次可以 以某種方式發送憑證(用戶/通行證),然後 請求只發送令牌?
- 您如何對令牌進行身份驗證?
- 我已經看到了令牌包含一些expiryTime的實現。那麼expiryTime之後有什麼用處呢?用戶必須再次登錄,即使他一直在提出請求?我應該在「幕後」更新令牌嗎?
您需要一個oAuth實現。我回答了一個類似的問題[這裏](http://stackoverflow.com/a/26438123/1331801)。 – Jangid 2014-11-01 12:29:21
我相信oAuth可能有點矯枉過正。我已經在網上閱讀了關於更簡單的基於令牌的認證,並且我正在考慮這個問題,然後才沉浸在地獄之中。無論如何,如果你有任何好的輔導oAuth也可能有幫助。 – MichelReap 2014-11-01 14:40:17
如果您對每個請求都執行完整的oAuth工作流程,那麼這將會過度。通常您只需設置一次,並使用訪問令牌發送所有請求。如果需要刷新標記。閱讀[本RFC](http://tools.ietf.org/html/rfc6749#section-1.4)。 – Jangid 2014-11-02 07:30:53