Cloud Computing
Dans le cloud, la protection et l’octroi de licences prennent plusieurs formes et apparences :
- Les développeurs de logiciel veulent permettre à leurs utilisateurs d’accéder à des logiciels locaux grâce à une licence se trouvant dans le cloud.
- Les développeurs de logiciel fournissent à leurs utilisateurs des solutions SaaS fonctionnant dans le cloud. Les licences requises peuvent être liées à un seul utilisateur ou à un nombre donné d’appareils.
- Les développeurs de logiciel veulent que leurs utilisateurs disposent d’un moyen d’authentification fiable pour utiliser leurs applications SaaS.
- Les utilisateurs peuvent vouloir installer et exécuter des logiciels indépendamment sur leurs propres clouds privés.
Licences du cloud pour les applications locales
Dans ce scénario, votre logiciel est une application de bureau classique que vous vendez à vos utilisateurs, sur un CD traditionnel ou en téléchargement. Votre utilisateur reçoit non seulement le logiciel, mais également un code d’activation sous la forme d’un ticket que vous créez avec CodeMeter License Central. Lors de la création de ce ticket, vous pouvez déterminer le nombre d’appareils sur lesquels le logiciel peut fonctionner en même temps et la durée pendant laquelle il peut être utilisé sans connexion permanente à Internet.
Votre utilisateur installe le logiciel sur un ordinateur personnel. Lorsqu’il est lancé pour la première fois, l’utilisateur est invité à saisir le ticket. Le logiciel contacte CodeMeter License Central et envoie le ticket et une empreinte de l’ordinateur (sous la forme d’un fichier WibuCmRaC) jusqu’au cloud. CodeMeter License Central vérifie si le ticket est valide et, le cas échéant, crée une licence temporaire pour un cache hors ligne. La licence est renvoyée à l’utilisateur (par fichier WibuCmRaU) et importée localement dans CodeMeter Runtime. Le ticket est également enregistré localement, par exemple dans la licence. Votre logiciel se lance ensuite et fonctionne parfaitement sans avoir besoin d’une connexion Internet permanente.
Peu de temps avant l’expiration de la licence temporaire dans le cache hors ligne, l’application communique avec CodeMeter License Central et renouvelle la licence.
Si l’utilisateur installe le logiciel sur un autre appareil, il devra à nouveau saisir le ticket. En fonction de vos choix et de vos paramètres, votre logiciel pourrait réagir de trois façons:
- La licence est déplacée dans un cache local en tant que licence hors ligne temporaire et le logiciel est lancé.
- L’utilisateur sélectionne l’ancienne licence, qui est automatiquement signalée comme désactivée dans CodeMeter License Central. Une licence hors ligne temporaire est alors créée et le logiciel démarre.
- L’utilisateur est informé que le nombre de licences a été dépassé et qu’il devra soit désactiver manuellement l’ancienne licence, soit attendre que la licence temporaire prenne fin.
La deuxième option s’est avérée être la meilleure pratique : elle est suffisamment flexible pour l’utilisateur qui peut continuer à travailler avec le logiciel même après avoir atteint le nombre maximum d’appareils et suffisamment transparente pour que vous, en tant que développeur, découvriez une utilisation frauduleuse et preniez les contre-mesures nécessaires.
Authentification pour les applications SaaS
Vous pouvez proposer à vos utilisateurs une application SaaS ayant des licences illimitées ou temporaires pour différentes fonctionnalités. CodeMeter Cloud Lite vous offre un moyen simple et allégé de concilier les mondes en ligne et hors ligne, surtout lorsque vous utilisez déjà CodeMeter pour les logiciels sur site et que vous avez intégré les processus de création de licences à votre système SAP, Salesforce ou tout autre système d’ERP, CRM ou d’e-commerce.
Les licences des applications SaaS sont créées de la même manière que pour les licences sur site ; la seule différence réside dans le schéma de liaison, en utilisant CodeMeter Cloud Lite au lieu de CodeMeter SmartBind ou des CmDongles. Une licence est créée et attribuée à un utilisateur dans un processus qui ne diffère pas de l’activation d’une licence locale ; vous pouvez même combiner les deux formes. Vous pouvez intégrer vos processus d’administration des utilisateurs à des solutions Single-Sign-On (authentification unique), telles que OAuth2 ou SAML.
CodeMeter Cloud Lite est fourni avec une API simple afin de vérifier les licences actives, qui permettraient d’accéder aux applications SaaS, de vérifier les licences disponibles et de déterminer les fonctions disponibles, ainsi que leur durée.
Authentification pour les applications SaaS
En plus de ses puissantes capacités de protection des logiciels et de licences complètes, CodeMeter est dotée d’une troisième étoile : les clés privées utilisées pour l’authentification peuvent être enregistrées en toute sécurité sur un CmDongle ou un CmActLicense lié à un ordinateur. Ainsi, CodeMeter s’avère être le bon choix pour l’authentification des utilisateurs dans les scénarios SaaS.
La solution peut être intégrée via l’API CodeMeter, notamment lorsque vous fournissez à vos utilisateurs une application locale dédiée qui fonctionne en association avec une application SaaS dans le cloud. Le logiciel SaaS crée un défi auquel l’application locale répond en le signant avec la clé privée conservée dans la licence locale. Dans le cloud, l’application SaaS utilise la clé publique pour vérifier l’identité de l’utilisateur, les identités des utilisateurs étant gérées et enregistrées dans le cloud en fonction de vos besoins spécifiques.
Pour les applications de navigation, les certificats clients se sont imposés comme la solution standard. Un intergiciel est utilisé pour transférer des certificats x.509 standards sur un CmDongle. Deux interfaces standardisées (PKCS#11 et Microsoft CSP) sont disponibles pour des applications telles qu’Internet Explorer, Firefox, Chrome, Safari, Outlook ou les clients VPN afin d’utiliser ces certificats. Certaines applications peuvent n’avoir besoin que d’un certificat valide pour permettre l’accès à l’application SaaS. D’autres peuvent extraire des données plus granulaires, telles que des noms d’utilisateurs, des organisations ou d’autres attributs afin d’identifier des utilisateurs ou des groupes d’utilisateurs nommés. Si vous souhaitez contrôler l’accès à votre application SaaS avec ce niveau de certitude, vous devez créer, gérer et toujours garder une trace des certificats clients nécessaires, qui doivent être connus de l’application SaaS. Inversement, le certificat avec lequel l’application SaaS s’identifie à l’utilisateur doit être un certificat de serveur créé par une autorité de certification fiable (par exemple, VersiSign ou GlobalSign).
Applications standards dans les clouds privés
Un cloud privé serait généralement une ferme à machines virtuelles exploitées dans le propre centre de données de l’entreprise ou chez un fournisseur spécialisé sur un autre matériel connu ni de vous ni de l’utilisateur. Il se peut même qu’il n’ait pas d’interfaces USB pour se connecter. Une fois de plus, CodeMeter a les capacités nécessaires pour gérer ce scénario et protéger vos droits en tant que développeur du logiciel. Vous avez plusieurs options à votre disposition :
- USBoverEthernet: : votre utilisateur reçoit une licence sous la forme d’un CmDongle. Les produits USBoverEthernet courants peuvent désormais être utilisés pour connecter ce CmDongle à la machine virtuelle en question ; de nombreux centres de données utilisent cette technologie comme pratique standard. Vous n’avez pas à apporter de modifications à votre logiciel ou à vos méthodes de distribution établies.
- Network Server: votre utilisateur exploite un serveur de réseau dans le centre de données. CodeMeter connectée à un Rasberry Pi CodeMeter propose un CodeMeter Runtime allégé spécial pour de tels serveurs, conçu pour fonctionner même sur les Raspberry Pi. Le CmDongle est connecté par USB à ce serveur. Votre logiciel doit uniquement prendre en charge le protocole de réseau CodeMeter (CmLAN), ce qui n’implique qu’un léger changement dans les configurations de votre logiciel. Vous fournissez toujours votre logiciel de la manière standard.
- Server in the Cloud: un serveur CmWAN peut être exploité directement par vous ou par vos utilisateurs. Les licences peuvent alors être conservées dans le LAN, le WLAN ou le cloud, en utilisant des CmDongles ou CmActLicenses sur le serveur CmWAN. Comme pour le serveur de réseau, votre logiciel doit prendre en charge les bons protocoles et les processus de distribution restent inchangés.
- SmartBind with VM Move: vous créez une licence SmartBind avec un niveau de tolérance « élevé ». Cela permet de s’assurer que la licence reste intacte lorsque la machine virtuelle sur laquelle elle est conservée est déplacée dans le cloud. Elle serait invalidée lorsque la machine virtuelle est copiée. Par ailleurs, vous pouvez définir le SID de la machine comme propriété de liaison. Vous n’avez pas besoin de changer quoi que ce soit dans la façon dont vous intégrez le système dans votre application ; vous devez simplement créer des licences spéciales pour les utilisateurs qui exécuteront votre logiciel dans leurs clouds privés.
- Licensing with CodeMeter Cloud Lite: vous pouvez laisser l’octroi de licences de votre logiciel à CodeMeter Cloud Lite. Votre application recevrait une Licence de protection uniquement afin d’empêcher la rétro-ingénierie et vérifierait régulièrement le cloud Wibu pour voir si la licence est toujours valide ou si elle est utilisée ailleurs. Ce type d’octroi de licences nécessite d’apporter quelques modifications à votre logiciel et une connexion Internet permanente entre le cloud privé de l’utilisateur et le cloud Wibu. La création de la licence elle-même n’est pas rendue plus difficile : il faut juste ajouter CodeMeter Cloud Lite comme une autre propriété de liaison.