2012-11-12 99 views
3

林不知道的拍攝帶有REST API即時通訊目前使用CakePHP開發哪種方式,我還沒有實現身份驗證和到現在爲止,即時通訊幾乎與它我讀它做,API CakePHP的休息認證

但我不知道該怎麼辦,這個API會暴露,以便網頁和移動應用程序可以使用它,但我不認爲基本身份驗證或摘要身份驗證(作爲CakePHP中的默認選項)是選項,

我只知道我需要它來檢查數據庫的用戶名和密碼,並根據已經設置的ACL授予權限,我正在閱讀關於HMAC的一些內容,但是完全不瞭解它,我應該如何製作一個認證陽離子方法,我自己做一些像檢查令牌?這篇文章是否正確? :http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/

如果是這樣,我如何將這些原則實現到CakePHP auth方法?有使用HMAC的這個認證方法的插件嗎?

我應該使用OAuth 2.0嗎?使用OAuth 2.0獲取用戶名&密碼登錄是否合理?我是否也輸了?如果我沒有那麼丟失,你能否描述如何在cakephp中使用用戶名和密碼實現OAuth?

有人請,任何人在這個interweb論壇上衝浪,幫助我。如果你能提供例子或工作流程,任何事情,一切都將不勝感激。

+0

你能澄清你想達到什麼嗎? – domsom

+0

用戶名和密碼爲我的休息api認證,只授予權限根據他們所屬的組,但它沒有關係,我讀了多少我只是沒有得到什麼最好的辦法做到這一點 – ixchel

回答

0

你需要多少安全性?由於API通常是從具有密鑰的客戶端應用程序訪問的,因此通常可以將憑證與每個(https)請求一起發送(作爲POST參數,因此它們將被加密)。至少,這是迄今爲止最簡單的解決方案:您只需檢查每個請求的憑證,而無需任何會話,令牌等。如果證書有效,則檢查現在通過身份驗證的「用戶」是否有權訪問所請求的資源。

請記住,更高級的認證/授權方法在開發和管理中很快變得複雜。如果您在實現這些系統方面沒有任何經驗,那麼您很可能已經放棄了實現錯誤/問題帶來的安全可能性。