我想知道我是否可以设置权限以允许程序(我正在编写)访问文件(共享网络驱动器上的 .mdb 文件),但运行该程序的用户没有权限修改该文件?
这是在 Windows Server 2012 RT 上
答案1
不。
Windows 安全模型将权限应用于用户,而不是代码。代码始终会继承执行它的用户的权限。
听起来你正在开发一个 Access 数据库。应该注意以下几点:
- 无法删除正在使用的 Access 数据库。Access 会在数据库文件打开时将其锁定,因此 Windows 不会删除它。这减少了用户删除数据库的机会。
- 根据 Access 数据库的版本,您可以使用以下方式限制内部更改用户级别安全性如果数据库使用较新的 .accd* 文件格式之一,则此功能不可用。
或者,将数据库放入 SQL Server 之类的程序中,然后为其构建一个 Access 前端。SQL Server 中的用户身份验证非常细化,用户只能访问管理员授予其权限的部分,而不是授予其对整个数据库的访问权限。