【发布时间】:2012-10-18 21:20:03
【问题描述】:
感谢您的任何想法。此问题涉及 ASP.NET 4.0 Web 应用程序。
DetailsView 然后使用 ObjectDataSource(尽管任何解决方案都应适用于任何 ASP.NET DataSource 控件)进行 CRUD 操作。
用户有权查看所有记录的详细信息,但只能创建或修改与自己部门相关的单个记录。
显然我可以轻松修改列表视图以显示/删除相应的按钮
if (!_canModifySelectedWard)
{
dptDetailView.AutoGenerateEditButton = false;
dptDetailView.AutoGenerateInsertButton = false;
dptDetailView.AutoGenerateDeleteButton = false;
}
但这只是删除按钮。有没有一种巧妙的方法来禁用编辑/插入/删除功能的能力?我认为一旦用户可以访问此页面,恶意请求就不太可能发生,但删除功能似乎更好,而不仅仅是 UI 元素。
我可以将关联的 objectdatasource 的 InsertMethod 等设置为 null,但这似乎是一种 hack。
【问题讨论】:
-
查看 Sql Server 中的应用程序角色和安全性。根本不授予基础表 CUD 权限将是另一回事,通过存储过程进行更新将是另一回事
标签: asp.net datasource