mar 21, 2019

Changement de donne : comment gérer vos licences Oracle Java

Nouvelle année, nouvelles règles. Comme vous le savez, depuis le 1er janvier 2019, Oracle a changé de politique.

Une analyse de ses précédents changements est disponible sur :

How to Manage Your Oracle Java Licensing

Aperçu du licensing Oracle Java :

Depuis qu'Oracle a acheté Sun Microsystems, il a étendu sa liste de prix pour inclure les produits Java SE dans un modèle de licence perpétuelle. Certains d'entre vous les ont peut-être déjà achetées. Elles existent en plusieurs éditions :

  • Java SE: Le produit gratuit qui comprend JDK and JRE
  • Java SE Advanced Desktop: une licence est requise et n'est disponible que dans la métrique Named User Plus, avec un minimum de 2000 NUP par entreprise. Il inclut Java SE et d'autres fonctionnalités commerciales spécifiques.
  • Java SE Advanced: Nécessite une licence et est identique à la précédente, mais conçu pour les serveurs, il est donc disponible en NUP et CPU.
  • Java SE Suite: Nécessite une licence, est disponible en NUP et CPU et inclut Java SE Advanced avec une fonctionnalité commerciale spécifique : JRockit Real Time Deterministic GC.

En 2018, Oracle a décidé de changer la manière dont elle concède ses licences Java SE et a proposé deux produits d'abonnement Java SE pour conserver le support et les corrections de sécurité sur JDK.

  • Java SE Desktop Subscription: Un abonnement mensuel à la métrique NUP uniquement. Les règles de calcul sont très simples : 1 desktop = 1 NUP. Aucun minimum NUP n'est jusqu'à présent indiqué.
  • Java SE Subscription: Un abonnement mensuel pour les serveurs en CPU uniquement. Les règles de calcul sont les mêmes que pour Oracle Database avec la même politique de partitionnement concernant les règles de virtualisation :

Nombre total de cores * Core Factor

Changement de donne : Oracle met à jour les règles Java (bis repetita)

Le 17 janvier 2019, Oracle a publié une nouvelle « Technology Price List » annonçant que tous les produits historiques Java SE ne seront plus disponibles. En d’autres termes il n'y a plus de licences perpétuelles pour les produits Java SE tels que Java SE Advanced ou Suite. Vous n'avez accès qu'aux abonnements Java.

Alors, avez-vous le choix pour le support de votre JDK ?

Non, pas vraiment.

Si vous avez déjà acheté des licences Java SE Advanced Desktop, Oracle vous suggère de contacter votre représentant commercial pour discuter de ce que vous pouvez faire.

Mais avant d'ouvrir des négociations avec Oracle, je vous suggère de rédiger une analyse de rentabilité rapide sur le coût de votre maintenance actuelle par rapport aux coûts d'abonnement Java SE. Faites appel à un expert en licences Oracle pour vous assister dans les complexités de ce sujet contractuel.

Oracle Java est-il gratuit ou pas ?

Les souscriptions pour le support du JDK ne sont pas le seul changement en 2019. Depuis le début, beaucoup ont dit que vous devriez payer pour Java. Même si ce n'est pas tout à fait vrai... ce n'est pas totalement faux non plus. Je vous explique pourquoi.

JDK 8, 9 et 10 sont disponible sous le BCLA (Binary Code License Agreement) qui stipule:

"2. LICENSE TO USE. Subject to the terms and conditions of this Agreement including, but not limited to, the Java Technology Restrictions of the Supplemental License Terms, Oracle grants you a non-exclusive, non-transferable, limited license without license fees to reproduce and use internally the Software complete and unmodified for the sole purpose of running Programs. THE LICENSE SET FORTH IN THIS SECTION 2 DOES NOT EXTEND TO THE COMMERCIAL FEATURES. YOUR RIGHTS AND OBLIGATIONS RELATED TO THE COMMERCIAL FEATURES ARE AS SET FORTH IN THE SUPPLEMENTAL TERMS ALONG WITH ADDITIONAL LICENSES FOR DEVELOPERS AND PUBLISHERS.”

Le point essentiel du BCLA repose sur la référence aux ‘Commercial features’. Oracle fournit gratuitement le produit Java SE si vous n'utilisez aucune fonctionnalité commerciale supplémentaire.

Donc, si vous utilisez JDK 8, 9, ou 10 sans avoir recours aux fonctionnalités commerciales, et que vous ne voulez pas de support, vous pouvez continuer sans contrat mais vous ne pourrez pas télécharger les derniers correctifs et mises à jour de sécurité.

Concernant le JDK 11, celui-ci est maintenant distribué sous Oracle Technology Network License Agreement :

“License Rights and Restrictions Oracle grants You a nonexclusive, nontransferable, limited license to internally use the Programs, subject to the restrictions stated in this Agreement and Program Documentation, only for the purpose of developing, testing, prototyping and demonstrating Your Application and not for any other purpose. […]”

Cela signifie que si vous téléchargez Java SE 11 sans aucun support contractuel, vous ne pouvez utiliser le JDK que dans un environnement de test.

Pour l'utiliser dans un environnement de production, vous devez souscrire un abonnement Java SE Desktop pour JDK déployé sur le desktop, ou un abonnement Java SE pour JDK déployé sur les serveurs. Une fois de plus, pas de licences perpétuelles, juste l'abonnement mensuel.

Donc, bien sûr, Java est toujours gratuit... seulement si vous :

a) Utilisez le JDK 11 dans un environnement hors production, ou,

b) Utilisez une version plus ancienne, comme JDK 8, 9, ou 10, et ne voulez pas le support ou les mises à jour (sans usage des ‘Commercial features’).

c) N’utilisez aucune version JDK publiée après les annonces de ‘End of Public Updates’ (à moins que vous n’ayez un contrat vous autorisant à le faire)

Pour mémoire, voici les dernières versions publiées par Oracle pour l'ancien JDK :

  • JDK 5 : ‘End of Public Updates’ en 2009 - dernière version disponible sans contrat de support : JDK 5.0u22
  • JDK 6 : ‘End of Public Updates’ en 2013 - dernière version disponible sans contrat de support : JDK 6u45
  • JDK 7 : ‘End of Public Updates’ en 2015 - dernière version disponible sans contrat de support : JDK 7u80
  • JDK 8 : ‘End of Public Updates’ en 2019 - dernière version disponible sans contrat de support : JDK 8u202

Avantages du modèle d'abonnement Oracle Java

La seule bonne nouvelle pour les clients est que, les ‘Commercial features’ pour Java SE 8, 9 et 10 sont maintenant incluses dans les produits d'abonnement Java SE. Ainsi, vous n'avez pas besoin de mettre à jour et pouvez maintenir vos anciennes versions de Java SE.

Je vous entends déjà : "Maintenant, je n'ai plus de problèmes avec mes fonctions commerciales !?" Et encore une fois, ce n'est pas tout à fait vrai.

Disons que vous avez une licence WebLogic Server Standard qui couvre l'utilisation du produit Java SE. Mais êtes-vous absolument certain de ne pas utiliser une ‘Commercial feature’ ?

Méfiez-vous d'Oracle Java dans vos programmes tiers

Pour chaque produit Oracle avec un produit Java SE embarqué (ou Embedded), vous devez vérifier l'utilisation réelle de votre Java en ce qui concerne les droits restreints. Vous devez appliquer la même stratégie pour les fournisseurs tiers qui intègrent ou ont besoin d'un produit Java SE pour fonctionner.

Par exemple, SAP et Adobe exécutent tous deux JDK, mais il se peut que ces contrats contiennent une information importante, comme une clause d'un contrat SAP qui autorise votre utilisation de Java.

Évaluez votre risque Java Oracle

Rien d’inquiétant mais vous devrez analyser le déploiement d'Oracle Java sur les postes de travail et les serveurs, ainsi que tous vos contrats. Ceci vous permettra de savoir exactement ce que vous devez acheter. Cette connaissance s’avère indispensable lorsque vous négociez avec Oracle car une partie de votre utilisation pourrait déjà être couverte.

Besoin d'aide ? Utilisez cet outil pour accéder à une évaluation des risques Java en ligne qui fournit une analyse rapide de votre risque de conformité directement dans votre boîte de réception.



Les sujets: Oracle