2015-07-28 24 views
1

我對Oauth2相當陌生,看起來我被卡住了。Laravel Oauth2多筆贈款

爲了保護我們的API,我們使用OAuth2。我們有很多包含基於帳戶的信息的電話,如果我們在OAuth中使用password授權。

但是,我也必須保護我的註冊調用,所以只有註冊的具有有效的client_id和client_secret的應用程序才能使用該調用。因此,在閱讀了一段時間後,似乎我需要爲這些調用使用client_credentials授權。

但是現在,我完全不知道如何定義女巫電話應該使用的client_credentials

我是否在思考錯誤,是不是可以爲特定的調用使用特定的授權,或者如何定義何時使用哪些授權?

FYI:我使用Laravel5.1和Luca Degasperi's Laravel OAuth2 server

謝謝!

+0

哪些客戶端類型將訪問api? – dschniepp

+0

Android應用程序和iOs應用程序... –

回答

1

通常情況下,您不會將呼叫或路由限制爲特定授予類型,對於several reasons,幾乎不可能通過oauth授予來限制客戶端應用程序訪問。

所以作爲一個經驗法則,你應該只暴露用戶被允許訪問的端點,不管用哪個客戶端。

進一步我寧願客戶端憑證所有者憑證批,它在易用性和安全性的事實更好(更改密碼,刪除特定應用的接入,...)更多關於不同grants

+0

我如何知道應用程序中哪個用戶正在請求他的個人資料數據(例如)?使用請求的user_id添加一個參數對我來說似乎並不安全...... –

+0

令牌與user_id關聯,因此您可以通過Auth :: user()訪問用戶數據。 – dschniepp