我正在開發一個Grails REST應用程序。我有三個用戶角色:BusinessOwner,用戶,管理員,公共(未驗證)什麼是REST API和用戶角色設計最佳實踐?
我已經喜歡api/business/1
端點。
當BusinessOwner角色的用戶調用,它返回一個企業的所有細節,但如果與公衆(未驗證)用戶角色調用,它返回的細節的一個子集。 所以,問題是如何實現端點:
1有一個端點像api/business/1
並檢查用戶的角色是什麼,回到正確的價值觀(幾個if/else語句,....)
OR
2-具有單獨的API領域,如下列其中每個都有它自己特定的安全,並返回特定子集:
api/admin/business/1
api/businessOwner/business/1
api/public/business/1
哪一個更好?和
設計REST API和應用用戶角色的最佳做法是什麼?
選項1.這將允許在可用角色的變化容易vs選項2。 – bassmartin