3

假设我有一个包含以下列的数据网格;

DataTable dataTable66 = new DataTable();

        DataColumn colDescription = new DataColumn("userID");
        dataTable66.Columns.Add(colDescription);
        DataColumn colActive = new DataColumn("Username");
        dataTable66.Columns.Add(colActive);
        DataColumn colPass = new DataColumn("Password");
        dataTable66.Columns.Add(colPass);
        DataColumn colRole = new DataColumn("Role");
        dataTable66.Columns.Add(colRole);

我创建了一个数据网格,为了便于使用,我选择为密码和用户 ID 设置一列,但知道因为我想对最终用户隐藏这些详细信息,并且仅在我的程序中使用它们作为参考(例如更新到数据库),我选择通过隐藏这些列;

   datagrid.Columns[0].Visible = false;
   datagrid.Columns[2].Visible = false;

就开发人员/数据库而言,这是否会产生任何安全风险?显然,密码本身只是密码的哈希值,使用我选择的任何加密方式,但用户能否找到一种方法来获取现在存储在 DataTable / DataGrid 中的这些详细信息?

4

1 回答 1

5

如果用户在您的应用程序中附加了诸如 WinDbg 之类的工具,或者如果他们转储了该进程,则可以轻松浏览 DataTable(或任何其他数据结构)。这是否代表您的应用程序存在风险?我想你是评估这一点的最佳人选。用户可以用这些信息做什么?

于 2012-07-30T12:01:49.167 回答