C#加载项与VBA宏的Excel功能

时间:2013-05-15 09:37:30

标签: c# excel vba add-in

我们希望为我们系统的用户提供将数据库中的一些数据拖到Excel中的机会。 (只读数据,没有机会将任何数据写回数据库)。用户无法直接访问数据库,因此我们将对其进行一些身份验证。 (首先连接到数据库,然后再使用我们系统的安全设置,这样只允许用户1查看某些表。)

我被指示开始为此编写C#插件,但有同事被指示编写VBA宏。

我正在考虑使用实体框架来访问数据,但我之前没有使用它。我不知道他们将在宏中使用什么,但是宏管理器认为我将通过大量数据传输来杀死网络。他也不喜欢用户必须在他们的计算机上安装加载项的想法。但是,我对宏观以及它们不是很安全的概念有一种模糊的不安。宏的安全性如何?它们是否具有调整安全性,或者知识渊博的用户是否可以更改代码?

我想知道,每种方法的专业和概念是什么,与我相比,拥有更多经验和知识的人的总体感受是什么?

特别关注以下事项:

  • 信息安全(某些表不应访问。)
  • 网络流量
  • 易于维护和未来的修改
  • 我错过的任何其他相关问题

亲切的问候,

1 个答案:

答案 0 :(得分:0)

在这种情况下我会做的是: - 在数据库上创建视图并将其分配给模式。不要限制数据,只需指定希望他们看到的列,让他们过滤Excel中的数据(假设返回了大量数据) - 创建一个Active Directory组,并为其成员提供对该架构的读取权限 - 使用Excel - >数据 - >连接(在Excel 2010中,不确定2008年)将工作表连接到该视图

他们可以搞砸excel中的数据,但无法将其写回数据库。您可以限制他们可以看到的表/列,并在View中为查找表执行连接,这样他们就看不到数据库ID。