好的,基於自定義策略的ASP.NET核心授權。我有點理解這個新的身份框架的想法,但仍然不能100%清楚你可以用這個來實現什麼。假設我們在HomeController中有一個名爲List的Action。此操作將查詢並顯示數據庫中的產品列表。必須訪問此列表的用戶必須是Marketing部門的一部分。因此,在我們的政策中,我們會檢查用戶是否擁有稱爲「分區」的聲明,並且其價值是「營銷」如果是,那麼他將被允許看到清單,否則不會。我們可以這樣裝飾我們的動作:基於ASP.NET核心自定義策略的授權 - 不清楚
[Authorize(Policy = "ProductsAccess")]
public IActionResult List()
{
//do query and return the products view model
return View();
}
所有這一切都很好。它會完美地工作。
場景1:如果我想在產品級別添加策略,並且根據策略,用戶將只能看到他的部門的產品,該怎麼辦?所以營銷人員會看到他的產品,R & D會看到他的等等。我怎樣才能做到這一點?這可以通過政策來完成嗎?如果是的話如何?
情景2:在現場級訪問情況如何?比方說,也許我想隱藏某些領域?例如:所有產品都將具有必須可供管理員查看的某些列,並隱藏給其他用戶?這可以使用自定義策略完成嗎?如果是的話如何?