I have a web application running on a Gentoo-based LAMP stack. My customers buy the software as a service and I host everything. However, there is some demand for on-site deployment inside the clients' own networks.
Currently, because I host the system, there is no built-in license management in the app. I bill based on user accounts and data capacity (it's a processing and analysis app for metering data) and I just set up whatever the client pays for and the client can't setup those things himself. Even without on-site installation, that should be changed for better scalability anyway.
I am looking for a license managment framework and/or typical approaches that you have implemented yourselves or have seen to work well elsewhere. My requirements are:
For some of the on-site scenarios, there would be a requirement for some particular OS, typically some version of Windows Server, but various Linux distros are getting more popular as well, especially in the public sector.
From a user's point of view, I am quite satisfied with the license management in FogBugz, it seems Joel Spolsky is satisfied with it from a vendor's point of view, and it is cross-platform, so it would make a great reference of what I'm aiming at.
Determine software usage. Measure how many licenses you need per software usage. Keep updating your license and software inventories. Manage your licenses more efficiently.
SaaS license management is a subset of software asset management (SAM), dedicated to cloud-based applications and services. And as modern business becomes more cloud-centralized, new and established SaaS products demand better tracking and management options. SaaS management provides the solution.
An on premise license is a software license that is installed and used locally. That is, in order to use the software, the user must install it on their own server or computer — and the software can then only be accessed and used through that server or device.
Software publishers own all of the rights to the software; they are selling a license to use their product.
Don't. Every hour that you spend writing a license key system is an hour that you are not spending fixing bugs or adding features. By writing a license management system, you are spending resources in order to reduce the value of your product!
Copyright your code, have a lawyer and be ready to prosecute anyone who violates your copyright, and call it a day.
I've seen one company that deploys their on-site web system using a pre-built linux VM image. Clients run it under VMWare and you don't need to worry about the actual OS on the client systems is. Plus they don't provide logins for the actual linux system running the web server, so the end users can't actually get in and modify anything.
I'm not sure how they handle the licensing limits, but they are in there. It might be a case of providing an updated VM image whenever a client requests more user licenses.
Although this doesn't directly address the need to prevent multiple instances running. I guess you could always do some sort of activation key system based on the system configuration.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With