0

考虑以下场景。创建一个应用程序来管理人事记录,其中每个员工记录都存储在单独的单个文件中。对于不同类型的员工数据,必须独立控制读写访问。该工具必须有权读取和写入某些部分(例如联系信息),只能读取其他部分(例如历史信息),并且不得访问其他敏感部分(例如工资率)。

如何使用 CAS 正确控制访问?在这种情况下,内置的 CAS 功能是否足够?

我的想法如下:

我们可以根据操作的类型分离代码,例如一个用于联系信息,另一个用于历史信息等。然后将它们中的每一个分配到单独的应用程序域中(对域具有适当的安全权限)。我们可以在 C# 中明确指定应用程序域的创建和相关权限吗?

4

1 回答 1

0

我个人会专注于保护数据。

将平面文件放在具有适当权限的目录中(例如,定义哪些组应该有权访问,授予组访问权限,并维护每个组的 ACL 以对应用户)。

当您的应用程序尝试打开其中一个文件时,您必须处理两种情况:

  1. 文件打开。正常处理这种情况并显示 UI。

  2. 由于文件系统权限不足,文件访问被拒绝。您的应用此时应显示适当的错误,然后允许用户返回主菜单或其他任何内容。

不要认为你需要做除此之外的任何事情。代码访问权限用于保护代码逻辑,而不是保护数据。

于 2013-10-07T19:03:22.003 回答