【发布时间】:2017-10-17 00:02:03
【问题描述】:
我对 .NETCore 2.0 比较陌生,想知道确保一个人只能查看/编辑他们创建的记录并且是该记录的“所有者”的最佳方法。
我知道如何在从控制器保存之前将当前用户添加到 Create 对象,但我不确定检查编辑/读取访问权限的最佳方法。我应该将此逻辑保留在控制器中吗?或者在模型/存储库上强制执行此操作?
我有一个存储库功能来编辑“交易”对象。
public void EditTrade(Trade trade, string currentUserId)
{
if(trade.Owner != currentUserId)
throw new Exception("Not the correct user");
context.Trade.Add(trade);
}
我觉得在我的整个应用程序中需要进行大量编码,并且不确定是否有更内置的方法来检查 Entity Framework 或 .NET 的 Identity 包。
如果有帮助,我不担心管理员会看到所有内容。每个用户只能看到自己的记录。
【问题讨论】:
标签: .net asp.net-mvc entity-framework asp.net-core