我的老板给了我一些工作,以了解如何保护在.NET中开发的基于Web的应用程序。根据协议,我们公司开发的产品是公司的资产,甚至非开发人员也可以访问代码。但我的老板仍然想知道如果开发人员窃取代码并试图从他的家中发布代码,他如何保护产品?
请指导如何控制它。
答案 0 :(得分:12)
如果开发者有:
你可以做很多事情 - 像编译器甚至代码保护之类的事情只有在编译器看到代码之后才会启动。假设您要允许开发人员在他们的机器上编译完整的端到端代码,那么禁用通常用来防止客户窃取代码的任何内容并不困难。
话虽如此,在基于网络的应用程序的情况下,你不会使用像混淆作为第一道防线机制的东西 - 只是作为(锡箔帽子)防御深度缓解威胁之后某人已经破坏了您的网站并获得了程序集的副本。
最终,这就是为什么像这样的东西的保护是用法律术语而不是计算机语言编写的。
(顺便说一句,这是一个duplicate of this question which has some great answers - 我很遗憾只是在重新发现之后发现了这一点)
答案 1 :(得分:5)
如果开发人员逐个记忆代码并在日复一日地在家中重新填写,该怎么办?问你的老板,他会怎么做?像'黑衣人'一样重置开发人员的记忆?大声笑。收缩确实对你老板的态度有一个医学术语。
我的建议是:告诉老板让它去或雇用他可以信任的其他开发人员。
答案 2 :(得分:4)
刚刚脱离我的脑袋......撕掉他们所有的USB端口,光盘驱动器,并禁用他们的互联网。
答案 3 :(得分:3)
您无法保护源代码。
任何值得他盐的开发者都知道如何重现他写的任何内容。他就是那个人,所以他可以再做一次。
您唯一能做的就是通过专利和版权合法保护您的产品。
答案 4 :(得分:3)
告诉你的老板相信他/她的开发者。并告诉他/她给开发人员好工资。代码由开发人员编写,因此他们可以重写自己的代码。
答案 5 :(得分:1)
Legalize,这就是你所能做的一切。
答案 6 :(得分:0)
通常这不是技术问题。您可以通过聘请律师来控制开发人员代码盗窃。
很难“保护”可再发行的.NET代码,但我认为(几乎)不可能保护代码免受您自己的开发人员的攻击。</ p>
<强>更新强> 为了迎接挑战,这也是一个建设性的建议。组织像间谍网络这样的开发人员 - 让他们在不同地理位置根据商定的规范处理单个模块,并充当信息中心。自己或在一个可信任的人的帮助下集成模块。通过这种方式,没有一个开发人员拥有使应用程序“在家”工作的所有部分。
答案 7 :(得分:0)
正确使用源代码管理软件(Visual Studio Team System内置了此功能)。然后你应该知道谁有代码。
这不会阻止任何人运行代码并分发代码,但会使最后检查代码的人对其行踪负责。