Cloud licensing comes in many shapes and sizes. What they all have in common is that the licenses are created and managed through the cloud. What happens next can differ: The scenarios can range from full and permanent online use to a choice of offline options.
Offline vs. Online
“Offline” means that the licenses are managed via the cloud, but kept offline on the end user’s device. Depending on the specific implementation, updates can be rolled out by synchronizing the end user’s device and the license creation server whenever an online connection is established. Time limits can be set to the license to force users to connect to the Internet regularly and enforce license synchronization.
In purely online scenarios, the licenses are managed, stored, and used in the cloud. The end user or end device needs a permanent Internet connection for this to work, but this setup has two great advantages: The licenses are always up to date, and it is no problem at all to move from device to device, e.g. office in the morning and home office in the afternoon.
CodeMeter working Offline
For offline use, CodeMeter License Central can offer license management through the cloud in the form of a backend for creating and managing licenses and, optionally, CodeMeter License Portal as its frontend. This is usually used when no ERP or CRM system is involved and a simple-to-use option is needed to manage licenses and client data.
CmActLicenses represent the simple solution for handling offline licenses. These containers are bound to a fingerprint of the end user’s device and can be used completely offline once the licenses have been activated.
That activation can be done either through CodeMeter License Portal, WebDepot, or a Software Activation Wizard (SAW), which can also be used to keep CodeMeter License Central and the local licenses in sync by communicating with CodeMeter License Central through dedicated gateways and updating the licenses as needed.
CodeMeter working Online
In online scenarios, CodeMeter License Central again works as the backend for creating and managing licenses. The great advantage in this case is that offline and online licenses can be used together with CodeMeter License Central. ERP and CRM systems can be integrated with no changes to the processes: Everything is integrated once, and the licenses can be created as needed for each use case in play. CodeMeter License Portal can, naturally, be included in the mix as well.
With CmCloudContainers hosted on the servers run by Wibu-Systems, one has a secure environment for licenses in the cloud. CmCloudContainers are again compatible with local CmActLicenses, which keeps everything true to the motto: Integrate once and then configure the licenses to your liking or to match the needs in the field.
Licenses in CmCloudContainers can similarly be activated through CodeMeter License Portal, WebDepot, or a SAW. The only difference to offline licenses is that they can be activated by an admin of your client or even by you as the vendor.
Licenses can be updated either through the SAW or, for a transparent and even sleeker option, through an auto update trigger in the background.
Personal vs. Concurrent
Licenses can be given to a single user or single device, or shared by multiple users and devices. The former is called a single user license or personal license, the latter a floating network server or concurrent license. Whichever option you need, CodeMeter can handle both in online and offline scenarios.
A Personal CmCloudContainer is a container assigned to a single person. Users need to connect the device they are using the licensed software on directly to the Internet. Distributed applications or software suites that have parts running on a local PC and parts on a mobile device are also possible, as the Personal CmCloudContainer can be active on up to three devices at the same time. As the software developer or vendor, you can decide on how many of these active devices your software can be run concurrently by configuring the license quantity setting accordingly.
On CodeMeter License Portal, each Personal CmCloudContainer is assigned to a specific user who can access it and activate licenses from up to three active devices. If the user belongs to a group, e.g. a company, the group’s admins can manage the CmCloudContainer and its licenses.
Enterprise CmCloudContainers are meant for use by multiple users, making them the containers built for concurrent licenses. On CodeMeter License Portal, Enterprise CmCloudContainers are assigned to groups whose members can access them from their devices. The groups’ admins have the right to manage the CmCloudContainers, including the rights to activate or deactivate licenses, add or remove users, or reset the access data needed to connect to a CmCloudContainer.
A SAW can be used to automatically restore the link between a device and the CmCloudContainer when the access credentials have been reset. This usually becomes relevant when a user is removed from a group and has to be restricted from continuing to use the licenses.
Options for a Floating Network Server
CodeMeter offers three ways for clients to run a floating network server:
A local license server with a CmActLicense
A local license server as proxy for a CmCloudContainer
Direct access to a CmCloudServer
All three options have specific advantages and drawbacks that will help you decide which fits your scenario best. As licenses are all managed in a similar fashion in CodeMeter License Central, the choice does not have to be final: You can decide on a case-by-case basis and change your choice at any time. You can even allow your clients to do so themselves.
Local License Servers
In this case, CmActLicenses are activated on a license server and bound to that server. This removes the need to capture a fingerprint of every end user’s system.
CodeMeter Runtime is configured as a license server on the local server. Clients on the same subnetwork can access the licenses immediately, whereas clients on other subnetworks need the name or IP address of the license server to use the licenses. The necessary settings can be configured via CodeMeter.
Access to the licenses on the license server can be managed by an admin, e.g., by allocating licenses to specific systems, IP addresses, Active Directory (AD) users, or AD groups. Local license usage tracking is also available to keep track of how licenses are used.
Local License Server as Proxy
This option resembles the CmActLicense configured as a local license. In this case, an Enterprise CmCloudContainer is imported onto the license server. License configuration, access, and usage tracking are managed in exactly the same manner as in the purely offline scenario. The only difference is that the proxy license server needs a connection with the CmCloudServer.
When users are removed, they will lose access to the internal proxy. Nothing else has to be reconfigured in that case. Conversely, when new users are added, they can access the licenses for their AD groups immediately.
Alongside offline usage tracking, you can also capture usage data through the cloud.
The third and final option needs the users to have direct access to the Enterprise CmCloudContainer. This removes all the features provided by the local license server, including AD integration, offline use, and offline usage tracking. However, as in the case of a proxy server, you can use online usage tracking and enforce license updates with an auto update trigger. The advantage of this option is that no VPN connection is needed, as it was in the other two cases, should mobile access to licenses be needed.
CodeMeter offers a variety of ways to achieve top security against reverse engineering and piracy. These include the ability to take particularly sensitive code and have it executed inside a CmDongle (CodeMoving). Everything critical happens inside the dongle and only the output is returned into the wild, so that no attacker could analyze the code in that brief moment it is executed. The use cases outlined for CmActLicenses can also be realized with CmDongles. For performance reasons, CodeMoving is only available for single user licenses with CmDongles; with CmCloudContainers, it is an option if Personal CmCloudContainers are used or, in the case of Enterprise CmCloudContainers, if direct access to the CmCloudContainer is available as in the third case above.