What you need to know about licensing on a cloud server
Cloud servers are widely used today, and they can significantly affect your ability to control how customers and prospects run your licensed applications. If your software is deployed to run on your customer's IT infrastructure, you have likely encountered a customer who wants to deploy your software on a cloud server. A cloud server is a logical server that is built, hosted, and delivered through a cloud computing platform over the Internet. It may also be called a virtual server or a virtual private server.
Within a few minutes of accessing a cloud hosting provider, an IT administrator can deploy a brand new cloud server that is ready to install your software. This article explains the licensing challenges cloud servers create and the approaches you can use to manage them.
Why cloud servers create licensing challenges
Cloud servers are powered by virtual machine technology. Virtual environments are both a blessing and a curse. They make life easier for IT administrators through features that improve the availability of operating systems and applications, but those same features make it difficult to fingerprint a virtual machine and to detect or prevent cloning.
Because a virtual machine can be copied, issuing a single license for one computer could result in many virtualized computers using your software with that single license.
How to handle the challenges of licensing on cloud servers
There are several approaches you can take to minimize the risk of allowing your software to run on cloud servers. You can use any of these on their own or combine them based on your business needs.
- Detect and prevent virtual environments by default. The best course of action is often to detect when your software is running in a virtual environment and prevent it. For customers who genuinely require running your software on a cloud server, you can create a special build that allows it at a higher price point to help offset the risk of customers cloning the virtual machines.
- Use network floating licensing for concurrency control. When a virtual environment is detected, use network floating licensing features to track the number of concurrent users of an activated software license. This requires each virtual machine to communicate with a central licensing server so that the software is not run at the same time on separate computers beyond what the license allows.
- Require periodic license validation. In addition to automating online software activation, require periodic license validation with a central license server. This allows you to support license transfer and revocation, so a license that has been moved or abused can be reclaimed.
Conclusion
These approaches limit practical abuse of your software license to a meaningful extent. Although the nature of cloud servers and virtualization presents challenges to enforcing license compliance, you can address the potential risks by selecting a licensing solution that includes the functionality you need, such as virtual machine detection, network floating licensing, and online activation with periodic validation.