【发布时间】:2023-03-11 10:26:01
【问题描述】:
我们有一个开发人员调试工具来帮助操作我们产品所依赖的数据库的安全部分。该工具的目的是将状态注入数据库以减少创建测试场景的时间。该数据库不是可以使用 sql 操作的典型数据库。相反,它是一个只有我们的工具才能操作的二进制文件。这是一个 C# 应用程序。
如果此工具超出我们公司的范围(例如有人通过电子邮件将其发送给在公共场所共享该工具的客户),则可能会引发很多安全问题。 我们喜欢在这个工具中构建智能,以便它可以在公司内部或与我们共享该工具的合作伙伴网络中使用。我们不了解合作伙伴的网络。
我想知道建议的实施方式是什么?
喜欢:
Ping 公司活动目录服务器或交换服务器。如果您可以访问其中一台服务器,则允许使用该工具。
使用自构建日期起一个月到期的工具打包证书。在允许使用该工具之前,请务必检查证书是否过期。
- (2) 的修改。让每个用户在特定日期后请求解锁工具的密钥。
在我们实施解决方案之前,我想知道是否已经有一个库可以做到这一点。
谢谢
【问题讨论】:
-
如果该工具所做的只是操作数据库,那么没有什么可以阻止您的任何保护措施被击败。真正的问题是:为什么你的数据库可以被这种操作访问?
-
这不是典型的数据库,您可以使用 sql 访问。更好的描述是它是一个只有我们的工具知道如何读写的二进制文件。
-
听起来您需要身份验证...对于此工具以及正常使用。
-
...直到有人掌握了该工具并对其进行逆向工程,从而禁用您在此处提出的任何弱保护。
标签: c# dll restrict license-key