2015-09-26 37 views
0

什麼是檢查用戶授權和身份驗證的最佳位置。業務層或應用層?更正層級以檢查用戶授權和身份驗證

我認爲這是應用程序層。它不能讓用戶進行用戶沒有足夠權限的操作。

業務只應關注業務服務並將這些服務暴露給可信級別。使用密碼來防止未經授權的訪問。

但也許我在這裏得到錯誤。

+1

你回答了你自己的問題,有很好的推理。爲什麼你不會只用它,然後工作,如果它適合**你的**風格的應用程序開發? –

+0

謝謝,事實是,在我的理解授權是某種程度上也是商業邏輯的一部分,爲什麼我們使用應用程序層來執行它? – GionJh

回答

1

這取決於你如何構建你的應用程序。如果應用程序層和業務層是同一進程的一部分,那麼僅在應用程序層進行身份驗證和授權檢查就可以了。

在應用程序層中執行它們確實允許您禁用用戶不允許使用的功能。但是,如果您將業務層設計爲單獨的服務,則需要知道誰在呼叫他們以及這些用戶可以執行什麼操作。您還需要在這些安全邊界處使用authN和authZ。

受信任的子系統只有在確定沒有不受信任方可以調用該代碼時纔有效。