在Azure上授权软件产品

在Azure上授权软件产品,azure,Azure,我们目前有一些产品的许可取决于计算机名,客户输入计算机名以创建许可证密钥,并使用该许可证密钥在该计算机上许可产品 对于Azure角色,服务器的计算机名不会保持不变,因此上述生成许可证密钥的方法不起作用。我正在研究为每个Azure实例生成许可证密钥的替代方法。除了使用计算机名,Azure实例是否还有其他环境变量可用于生成许可证密钥 也许我可以使用RoleEnvironment.CurrentRoleInstance属性。如果结构控制器重新映像或重新创建实例,此属性是否会保持不变?有什么想法吗?Ro

我们目前有一些产品的许可取决于计算机名,客户输入计算机名以创建许可证密钥,并使用该许可证密钥在该计算机上许可产品

对于Azure角色,服务器的计算机名不会保持不变,因此上述生成许可证密钥的方法不起作用。我正在研究为每个Azure实例生成许可证密钥的替代方法。除了使用计算机名,Azure实例是否还有其他环境变量可用于生成许可证密钥


也许我可以使用RoleEnvironment.CurrentRoleInstance属性。如果结构控制器重新映像或重新创建实例,此属性是否会保持不变?有什么想法吗?

RoleEnvironment.CurrentRoleInstance可能是您最好的选择,但是,Windows Azure没有承诺或保证使用正确的命名模式和正确的顺序来启动命名的机器。 因此,它可能在本月或下个月起作用,但在一年后,当他们更改命名约定或排序逻辑时,您和您的客户将需要在“热门”生产环境中进行重新部署,因为Azure中的更改每月都会推出,而不会提前发布重大公告


一般来说,如果您坚持将许可证与Azure中任何特定于机器的东西相结合,这将是一个棘手的问题。你找不到其他方法来强制执行版权吗?

伊戈雷克说的很完美,Azure对命名约定/模式没有任何保证。您的许可要求的基础是,您至少需要1个参数,以确保它是相同的机器/订阅进行许可,我想您可以根据需要提供服务并解决您的目的。

到目前为止,我在azure中还没有找到任何可靠的参数来使许可证密钥机器或实例特定。我们可能必须开始寻找其他方法来强制Azure实例上的许可。谢谢你的反馈,伊戈雷克!