我希望通过将其绑定到特定环境来保护我的程序集(dll)。假设我有一个dll(BizLogic.dll),我想让我的共同开发者可以在组织内使用它。但我不希望别人在我的组织外使用它。
有没有办法解决这个问题?
先谢谢。
- 穆罕默德。
答案 0 :(得分:5)
您所描述的不是CAS旨在解决的问题。 .NET代码访问安全性系统旨在保护良性用户免受恶意第三方代码的攻击。您正试图做相反的事情 - 保护恶意用户中的良性代码。如果你给某人一大堆代码,他们就可以对代码做任何他们想做的事情 - 反汇编,重写,重新编译,无论如何,你可以用技术来阻止它们。
可能最好的办法是使用其他强制执行机制,例如让他们签署一份合同,说明他们不会对您的代码进行反向工程或重新分发,然后如果他们这样做就起诉他们。或者,首先不要给他们代码。制作Web服务并将代码保留在服务器上,远离您不信任的人。
答案 1 :(得分:2)
你的组织以外的意思是什么?
尽管如此,您是否考虑过签署会议?
答案 2 :(得分:1)
实际上很有效。您可以尝试各种许可证/密钥框架,但确实存在100%不可破解的零。
答案 3 :(得分:0)
创建域用户,为该用户授予对db对象的唯一读取权限。 设置密码永不过期。 物理上保护密码。
dll必须能够访问(通过新用户)db对象才能继续。
模糊您的代码。