MS Access - 记录级安全性

时间:2015-02-06 23:49:25

标签: ms-access

我有一个MS Access数据库,其中所有用户都在同一个组中,除了少数几个。我不需要限制用户的某些对象。相反,我需要将当前用户的写入功能仅提供给他的记录及其相关记录,并将只读功能提供给所有其他记录。这可能吗?

1 个答案:

答案 0 :(得分:2)

不幸的是,无论是Access,SQL服务器还是Oracle,都没有内置对单个用户的行限制。这意味着您必须构建某种类型的接口,您可以在其中获取/使用用户登录ID(他们的网络PC ID,或说出用户+密码的提示)。然后,当您加载表单时,您必须将记录限制为给定用户。有很多方法可以做到这一点,它们都是过滤或限制数据的标准方法。但是,“你”必须在表单中构建和编写这样的代码。您可以将表单基于具有表达式(VBA或宏TempVars)的查询,该表达式限制返回给定用户的记录。

因此,您必须为大多数数据库“烹饪”和“编码”此功能。因此,您还需要编码以“保存”创建记录的用户名。当考虑将数据限制为单行并且这些特征通常不构建在数据库系统中时,大多数系统都需要如此所述的编码要求。您还可能需要限制和阻止用户打开数据库并查看表视图。