生成/验证C#服务器控件的许可证密钥
我发现有几篇帖子建议使用专有的解决方案来满足我的需求。我希望有人有一个他们可以传递的教程。。无论如何,我需要的是: 我有一个为Sitefinity构建的服务器控件。它被编译成一个DLL。当有人购买该控件时,我希望生成一个许可证文件(.txt/.lic),其中包含一个特定于其站点URL/主机名的密钥。许可证文件应该支持多个URL/主机名,以防他们需要它在开发和生产站点上工作 当有人试图在没有适当许可文件的情况下加载控件时,它只会弹出一条“未授权”消息生成/验证C#服务器控件的许可证密钥,c#,.net,licensing,sitefinity,C#,.net,Licensing,Sitefinity,我发现有几篇帖子建议使用专有的解决方案来满足我的需求。我希望有人有一个他们可以传递的教程。。无论如何,我需要的是: 我有一个为Sitefinity构建的服务器控件。它被编译成一个DLL。当有人购买该控件时,我希望生成一个许可证文件(.txt/.lic),其中包含一个特定于其站点URL/主机名的密钥。许可证文件应该支持多个URL/主机名,以防他们需要它在开发和生产站点上工作 当有人试图在没有适当许可文件的情况下加载控件时,它只会弹出一条“未授权”消息 有什么想法吗?我看了微软关于服务器控制授权的页
有什么想法吗?我看了微软关于服务器控制授权的页面,这让我感到非常困惑。它也由机器授权。我想通过URL/主机名获得许可。基于现有框架,我无法向您提供答案。这是我的解决办法
希望有帮助!您可以使用现有的开放源码解决方案之一生成和验证许可证文件:
var license = License.New()
//... other options
.WithProductFeatures(new Dictionary<string, string>
{
{"example.com", "yes"},
{"domain.tld", "yes"}
})
// ... other options
.CreateAndSignWithPrivateKey(privateKey, passPhrase);
免责声明:我是开源项目的作者问题到底是什么?如何生成密钥?如何验证它?如何确保库在没有正确密钥的情况下不会运行?好吧,如果你有关于上述所有内容的教程或文档,那么我就接受它。一旦我有了一个开始,我就非常擅长运行一些东西我想我最关心的是创建许可证文件。托马斯-我感谢你的回答。你说有“足够的教程可用”。你能给我提供一些代码或教程吗?
if (license.ProductFeatures.Contains("domain.tld"))
// ...