2013-07-27 36 views
5

如果一個網站有一個面向公衆的前臺使用API​​,並且對於具有更強大角色並且使用API​​的用戶也有一個後端,則該網站的兩個部分都應使用相同的API或不同的API(例如:/ api/v1/resourceName vs/api/admin/resourceName)?公共和私人終端應該有獨立的API嗎?

+0

你的經歷如何,我現在有兩個相同的兩難選擇,請分享你的經驗。 – user2727195

回答

5

這真的取決於你的情況。如果您的私人終端必須保持私密性,那麼獨立的API是唯一絕對的解決方案。一般來說,這似乎是矯枉過正。對於大多數情況下,我會建議維護一個API,並從頭開始考慮安全性設計您的私有端點。

單獨的API的

  • 你必須保持兩個代碼庫,或您的私有API的至少端口部分公共系統。
  • 您必須維護兩個生產API系統。
  • 更好的安全性:即使用戶的密鑰/密碼等被違反,或者您的公共API處理安全性的方式出現錯誤,公共客戶端也無法訪問API上的私有內部資源。

相同的API

  • 一個代碼庫和一個服務器。
  • 安全性將更加重要。您必須確保公共客戶端無法訪問內部資源。安全違規或對私人終端上的安全性進行監督可能會導致嚴重問題。
+0

@布賴恩,你是親自接近它還是你最喜歡的方法,或者你的經驗與兩種方法 – user2727195