我爲Symfony2應用程序開發了一個REST API。這個api將被一個移動應用程序使用。大部分的功能在當前已驗證用戶的情況下進行,即:Symfony2 API驗證(適用於移動應用程序)
$this->container->get('security.context')->getToken()->getUser()
我希望在移動應用程序將能夠發佈到登陸動作就像一個傳統的Web表單。如果證書被檢出,那麼Symfony2就是這樣做的,並設置了一個cookie(甚至可以在移動應用訪問api的環境中工作?)。然後,該手機的後續API請求(希望)將與本地symfony2 security.context服務容器一起工作。
會這樣嗎?在將API提供給移動開發人員之前,我需要弄清楚這個授權過程。如果可能的話,我顯然希望能夠使用本地security.context服務,而不是爲使用xAuth或類似API的api構建新的認證系統。
謝謝
嗯有趣。我不太確定我是否在這裏遵循一切。你能通過一個完整的例子嗎?即用戶foo將他們的用戶名/密碼提供給移動應用程序。然後,該應用程序隨每個對API的請求都包含該用戶名和密碼?在明文?這是安全的嗎?對不起,如果我在這裏誤解了一些東西! – Marc
由於dondlero說你必須禁用cookies,這就是爲什麼我添加無狀態參數爲true。 Personnaly我不喜歡摘要認證,因爲它很難實現。 Http基本方法很簡單,工作正常。用戶名和密碼在每個請求中都可見。你必須使用SSL證書。 – julesbou
奇怪的是,即使設置了'stateless:true',我仍然收到'Set-Cookie'頭文件。任何想法爲什麼會發生? –