簡體   English   中英

CakePHP-將ACL與REST API結合使用

[英]CakePHP - combine ACL with REST API

我用一些模型創建了一個應用程序,然后,我使用了ACL並創建了一些ACO來保護我的應用程序。

現在,我想向我的應用程序中添加一個RESTful API,所以我用類似的方法編輯了routes.php

Router::mapResources('routes');
Router::parseExtensions();

這也可以正常工作,例如, 如果我已經登錄,則轉到http://localhost/myapp/routes.json會給我路由的json對象

當然,有人在使用我的API時無法使用Web表單登錄,所以我想知道是否可以使用REST Auth Basic(或Digest)通過請求發送常規登錄信息並使用有效的ACL在我的應用中進行身份驗證並顯示結果對象(如果錯誤,則發送正確的標題)

有任何想法嗎?

如果不清楚,請發表評論

我使用了最新的蛋糕PHP版本1.3.3

如果您查看其他基於API的服務,通常它們使用令牌來標識用戶。 例如,如果用戶名matt且他的令牌為123456,則可以授予他訪問URL http://localhost/myapp/123456/routes.json的權限。 然后,在控制器中,您可以使用令牌對用戶進行身份驗證。

當使用javascript處理身份驗證過程時,http摘要身份驗證是可能的,非javascript客戶端默認具有標准彈出窗口。 也許他們不會介意。

可在http://www.peej.co.uk/articles/http-auth-with-html-forms.html找到信息:

人們不使用HTTP身份驗證的主要原因是,他們希望控制登錄表單的外觀,並且大多數瀏覽器都顯示一個看起來很糟糕的對話框。 因此,我們需要一種HTML表單在提交時傳遞HTTP身份驗證數據的方法。 HTML規范提供了HTML表單,作為創建查詢並將URlencoded數據發布到URL的一種方式,但是我們可以顛覆它嗎?

它帶有警告:)

警告:本文概述的解決方案是實驗性的,可能是一個謊言,請注意您的行駛里程可能會/將有所不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM