2. Nouvelles fonctionnalités, améliorations et aperçus tehnologiques


2.1. Nouvelles fonctionnalités

Les nouvelles fonctionnalités et améliorations suivantes ont été rajoutées dans JBoss EAP 6.4.
Serveur Apache et Connecteurs
mod_snmp et mod_rt sont maintenant disponibles via ppc64

À partir de JBoss EAP 6.4, mod_snmp et mod_rt sont disponibles sur les systémes Red Hat Enterprise Linux ppc64.

API
Activer la configuration du temps d'expiration de session globale du conteneur web par l'API de gestion

Le temps d'expiration de la session HHTP globale peut dorénavant être configurée par l'intermédiaire des API de gestion.

Exposer l'API publique pour les cas d'utilisation de Websockets.

Toutes les classes des packages javax.websocket et javax.websocket.server de l'API de Websockets API sont maintenant exposées publiquement.

Gestionnaire d'authentification
Une méthode logout() a été ajoutée à l'interface org.jboss.security.AuthenticationManager

Une méthode de logout à été ajoutée dans l'interface org.jboss.security.AuthenticationManager. Soyez en conscients si vous avez implémenté un org.jboss.security.ServerAuthenticationManager, comme dans l'exemple suivant.

<valve>
 <class-name>org.jboss.as.web.security.jaspi.WebJASPIAuthenticator</class-name>
 <param>
  <param-name>serverAuthenticationManagerClass</param-name>
  <param-value>com.acme.ServerAuthenticationManager</param-value>
 </param>
</valve>
Clustering
fail_on_status for mod_cluster

Un support pour fail_on_status a été ajouté au mod_cluster. fail_on_status peut être utilisé pour spécifier un ou plusieurs codes de statut HTTP, de façon à ce que si un noeud de worker d'un cluster renvoie un des codes de statut spécifiés, le worker échouera. L'équilibreur des charges enverra ensuite les futures requêtes vers un autre noeud de worker du cluster.

Gestion des domaines
Support des expressions imbriquées

Les expressions peuvent être imbriquées, ce qui permet une utilisation plus avancée des expressions au lieu de valeurs fixes. Les expressions imbriquées sont autorisées partout où elles sont autorisées, à l'exception des commandes CLI de gestion. En ce qui concerne les expressions normales, les sources prises en charge pour résoudre les expressions imbriquées sont : propriétés système, variables d'environnement et de l'archivage sécurisé.

Possibilité de lire les erreurs boot via les API d'admin

Une nouvelle commande de gestion CLI a été créée, qui renvoie les détails de toutes les erreurs qui se sont produites au démarrage. La commande est read-boot-errors et n'a aucun paramètre.

Autorisation Kerberos pour une gestion via HTTP/HTTPS

Il est maintenant possible de configurer l'authentification des opérations de gestion via HTTP/HTTPS en utilisant Kerberos. Cela signifie qu'il est maintenant possible d'authentifier la console de gestion en utilisant Kerberos.

EE
Possibilité de spécifier une référence d'adaptateur de ressource dans jboss-ejb3.xml sans le nom de l'ear

Dans le descripteur de déploiement de jboss-ejb3.xml, vous pouvez spécifier un adaptateur de ressources pour un MDB (message driven bean) à utiliser, sans spécifier le nom de l'EAR, quand le descripteur de déploiement est dans la même EAR que l'adaptateur de ressources.

EJB
Nouvelle implementation de StrictMaxPool

Le conflit au sein de la StrictMaxPool EJB a été éliminé en changeant la structure de données sous-jacente.

Possibilité d'ajouter des stores persistents alternatifs pour les horloges EJB non clusterisées

Les données d'horloges EJB peuvent maintenant être stockées dans une base de données et partagées entre les instances d'un serveur clusterisé. Les avantages de cette méthode incluent la compatibilité à la haute disponibilité.

Activer wilcard (*) pour <ejb-name> dans jboss-ejb3.xml

Support de l'utilisation des wildcards (*) activé pour <ejb-name> dans jboss-ejb3.xml.

Hibernate
Fournit un nouveau dialecte Hibernate Dialect pour MySQL 5.7

Un nouveau dialecte a été ajouté à Hibernate pour supporter MySQL 5,7. Pour éviter des problèmes liés à l'arrondissement des chiffres fractionnaires dans la date et l'heure, le dialecte présente actuellement les limitations suivantes : Hibernate assumera datetime(6) pour les colonnes « date de dernière modification » et time(0) pour les colonnes « heure ».

HornetQ
Possibilité de fermer tous les consommateurs sur une destination donnée et toutes les connexions pour ces consommateurs

La possibilité de fermer tous les consommateurs pour une destination donnée et les connexions pour ces consommateurs à été ajoutée. Cette commande est disponible via l'interface de gestion CLI, l'API de gestion et JMX.

« Abort » (abandon) ralentit les consommateurs de HornetQ

Le taux de consommation des consommateurs de messages peut désormais être surveillé automatiquement et des mesures prises si le taux ne remplit pas les critères spécifiques. Un taux de consommation minimale par seconde est spécifié dans les messages et s'il n'est pas respecté, soit la connexion du consommateur est supprimée ou une notification administrative est déclenchée, traitable par une application. Par défaut, cette fonctionnalité est désactivée.

Possibilité de terminer une connexion par un utilisateur JMS

HornetQ prend maintenant en charge la résiliation de connexions avec l'utilisateur JMS comme critère. Auparavant, il était seulement possible d'arrêter les connexions avec l'adresse IP client.

Hibernate Search
Fournir Hibernate Search en tant que module par défaut

Hibernate Search est maintenant un composant standard de JBoss EAP.

Le programme d'installation
Teste la source de données et les connexions LDAP dans le programme d'installation

Lors de l'installation de JBoss EAP en mode GUI ou console, le programme d'installation offre maintenant la possibilité de vérifier la connectivité LDAP et la source de données pendant le processus d'installation. Cela garantit que les paramètres fournis lors de l'installation sont valides

JBoss Web
Charge taglibs à partir de jars dans un JBoss Module

Les TDL (Tag Library Descriptors) peuvent être séparés de leurs applications respectives, ce qui facilite les additions et les mises à jour. Pour utiliser cette fonctionnalité, créer un moduler JBoss EAP 6 presonnalisé qui contient les JAR TLD, et qui déclare une dépendance sur ce module dans les applications.

Possibilité de configurer les cookies HttpOnly SSO

Un nouvel attribut a été ajouté à la configuraiton SSO d'une serveur virtuel : http-only. Si défini à true, cet attribut ajoute HttpOnly à l'en-tête du cookie, indiquant ainsi que le navigateur doive restreindre l'accès aux API non-HTTP.

Les utilisateurs doivent savoir que l'option de supporter cette restriction est entre les mains du client (le navigateur web).
Cette action may limite le risque de défaillances de sécurité en limitant l'accès aux API non-HTTP (comme JavaScript).
JCA
Support activé pour la propriété système "datasource_class"

Par défaut, quand une JAR de pilote de base de données contient un fichier services/javax.sql.Driver, l'attribut datasource_class de la définition de la source de données est ignoré et la classe du pilote de l'archive JAR est utilisée à la place. Pour supprimer ce comportement par défaut, et utiliser l'attribut datasource_class, définir la propriété à true -Dironjacamar.jdbc.prefer_datasource_class=true.

Détecte et envoie un exception de déploiement pour les adaptateurs de ressources JCA 1.7.

Une exception est envoyée si les déploiements JCA 1.7 sont détectés comme faisant partie d'une plateforme basée EE7.

Ajouter un pool de détecteurs de fuite

IronJacamar dispose désormais d'une implémentation de pool de connexion qui surveille les connexions et fournit une rétroaction si elles ne sont jamais libérées par l'application. Quand le pool est fermé ou vidé, une trace de la pile apparaît dans les journaux système. Pour activer le pool de connexions, définissez la valeur du système ironjacamar.mcp à org.jboss.jca.core.connectionmanager.pool.mcp.LeakDumperManagedConnectionPool. Pour que la trace de la pile apparaisse sur un fichier séparé, définir la valeur de système de ironjacamar.leaklog au nom et au chemin d'accès du fichier voulu.

-Dironjacamar.mcp=org.jboss.jca.core.connectionmanager.pool.mcp.LeakDumperManagedConnectionPool
-Dironjacamar.leaklog=leaks.txt
Opérations JMS
Ajouter l'opération remove-jndi pour les ressources JMS

L'opération remove-jndi est maintenant activée pour les ressources JMS.

JMX
Activer JMX MBean Registration et les notifications de désenregistrement des MBeans de façade de JBoss dans EAP 6.

Les MBeans qui se trouvent dans les domaines jboss.as et jboss.as.expr ne sont pas vraiment des MBeans mais sont des façades. De ce fait, l'enregistrement et le dés-enregistrement d'événements MBean a maintenant été établi pour ces domaines, ce qui permet à ces événements d'être surveillés.

Ouverture de session
Demander un support de suffixe pour la rotation de fichiers de journaux basée sur la taille.

La rotation de fichier journal basée sur la taille a été améliorée avec l'aide d'un suffixe d'horodatage qui est ajouté à chaque fichier journal après sa rotation. Le format de l'horodatage est configurable selon vos besoins. Auparavant, il n'était pas possible d'avoir un suffixe numérique ajouté aux fichiers journaux pivoté, rendant difficile la recherche de fichier journal particulier dans certaines circonstances

Implementer java.util.logging.LogManager.getLoggerNames() dans JBoss Logging

Une méthode getLoggerNames() a été ajoutée à java.util.logging.LogManager qui renvoie les noms de tous les enregistreurs d'événements

Le gestionnaire audit syslog devrait pouvoir se reconnecter automatiquement

Le gestionnaire audit syslog est maintenant amélioré grâce à un nouvel attribut - reconnect-timeout - qui spécifie le délai entre les tentatives de reconnexion au serveur syslog.

Rendez PeriodicSizeRotatingFileHandler configurable directement par la console CLI/web

Le PeriodicSizeRotatingFileHandler peut maintenant être configuré via la console de gestion ou l'interface CLI. Auparavant, un tel gestionnaire n'était capable d'être configuré en utilisant un gestionnaire personnalisé. Les nouvelles méthodes de configuration sont plus faciles et moins sujettes à l'erreur.

Masquer les propriétés système "password"

Toute propriété système qui contient le texte password (quel que soit le cas) est remplacée par le texte redacted quand il sort en journalisation. Cela améliore la sécurité en évitant d'avoir des mots de passe en texte brut dans les fichiers de journalisation.

Interface CLI
L'interface CLI prend en charge la substitution de noms d'éléments et pas uniquement pour les paramètres

La substitution des noms d'éléments a été ajoutée. Auparavant, l'interface CLI ne prenait en charge que la subsitution de propriété des paramètres.

Ajouter la commande echo pour la saisie de script par interface CLI

Une nouvelle commande de gestion CLI - echo - a été créée. Elle renvoie verbatim tout le texte qui suit la commande.

Console de gestion
Affiche les journaux de serveur dans la console graphique

Vous pouvez maintenant afficher des journaux de serveur et d'application dans la console de gestion JBoss EAP pour aider à diagnostiquer des erreurs, des problèmes de performance et d'autres questions. Pour être visible dans la visionneuse du journal de console de gestion d'un journal, elle doit se situer dans le répertoire du serveur jboss.server.log.dir. La visionneuse du journal respecte également les attributions de rôles d'utilisateur RBAC, donc un utilisateur connecté à la console de gestion ne peut voir que des journaux pour lesquels il a l'autorisation d'accès.

Le plugin Access Red Hat

L'accès aux fonctionnalités courantes du portail clients de Red Hat sont maintenant disponibles dans la console de gestion. La barre de navigation supérieure de la console de gestion contient un menu déroulant : Red Hat Access. En cliquant sur ce menu, vous apercevrez trois liens de tâche spécifique au portail client : Search Customer Portal, Open Case et Modify Case.

Expose le délai d'expiration de la session globale du conteneur web dans la console

Le délai d'expiration de la session globale HTTP peut maintenant être configuré par l'intermédiaire de la console de gestion.

Nommage
Utiliser le contexte externe pour la recherche TIBCO ems à distance

Lorsque vous utilisez l'adaptateur de ressources JMS générique pour vous connecter à un serveur de messagerie externe, un contexte externe peut être utilisé au lieu d'écrire un ObjectFactory personnalisé. Ce qui suit est un extrait d'exemple qui utilise <external-context>. Remplacer les propriétés de l'exemple par les propriétés appropriées pour votre fournisseur JMS.

<external-context name="java:global/tibco" module="com.tibco.tibjms" class="javax.naming.InitialContext">
 <environment>
  <property name="java.naming.factory.initial" value="com.tibco.tibjms.naming.TibjmsInitialContextFactory"/>
  <property name="java.naming.provider.url" value="TIBCO_EMS_SERVER_HOST_NAME:PORT"/>
  <property name="java.naming.factory.url.pkgs" value="com.tibco.tibjms.naming"/>
  <property name="org.jboss.as.naming.lookup.by.string" value="true"/>
 </environment>
</external-context>
Correctifs
L'accès aux détails de correctifs a été amélioré

La commande d'interface CLI patch possède deux arguments supplémentaires : inspect et info. Les informations de sortie de l'argument info sur les correctifs installés. Les informations de sortie d'argument inspect sur un correctif téléchargé.

Le panneau Patch Management (Gestion des correctifs) de la console de gestion a été amélioré pour inclure une brève description de chaque correctif et un lien vers un article plus détaillé.
Performance
Backport AbstractPool initLock() élimination de la synchronization de 1.2

Un verrou a été créé lors de l'appel d'enregistrement une transaction après avoir obtenu une connexion du pool. Étant donné que le registre de la transaction a déjà effectué le verrouillage, car il a déjà utilisé une collection simultanée, le verrouillage supplémentaire était donc inutile et a donc été supprimé.

Nouveau pool de connexions gérées

Un nouveau pool de connexions gérées dans le sous-système JCA a été créé, améliorant la performance et éliminant la contention de thread dans le serveur.

PicketLink
Plugin de console pour intégrer les sous-systèmes PicketLink dans la console EAP

Les sous-systèmes de PicketLink sont maintenant configurables par la console de gestion JBoss EAP, ce qui résulte en une meilleure configuration.

Modifier l'IDP PicketLink IDP pour qu'il prenne en charge les réponses SAML 2.0 non sollicitées

L'IDP (PicketLink Identity Provider) a été amélioré pour pouvoir envoyer dès maintenant des réponses SAML 2.0 non sollicitées au fournisseur de services.

PicketLink doit pouvoir être configuré de façon à pouvoir ignorer les appels ajax

Dans le cas où l'utilisateur n'est pas authentifié et envoie une requête à la fois à IDP et à SP en utilisant AJAX, PicketLink répond avec un code d'état HTTP 403 au lieu de présenter la page de connexion. Les requêtes AJAX sont identifiées en vérifiant la présence de l'en-tête X-Requested-With ayant pour valeur XMLHttpRequest.

RESTEasy
La journalisation RESTEasy par JBossLogging

Le fonctionnalité de journalisation RESTEasy est maintenant effectuée par JBossLogging. Les avantages de ce changement, c'est l'internationalisation des messages de journalisation.

Nouveaux paramètres de sécurité

RESTEasy a deux nouveaux paramètres qui doivent améliorer la sécurité lors du traitement des documents org.w3c.dom.Document. Ces deux paramètres sont des paramètres context-param et peuvent être mis dans le web.xml de l'application.

Le paramètre resteasy.document.secure.processing.feature impose des contraintes de sécurité lors du traitement des documents org.w3c.dom.Document et des représentations d'objet JAXB.
Le paramètre resteasy.document.secure.disableDTDs empêche les DTD dans les documents org.w3c.dom.Document et dans les représentations d'objet JABX.
La valeur par défaut de resteasy.document.secure.processing.feature et resteasy.document.secure.disableDTDs est true. Pour désactiver l'un ou l'autre, ou les deux, ajouter ce qui suit au fichier web.xml de l'application.
<context-param>
 <param-name>resteasy.document.secure.processing.feature</param-name>
 <param-value>false</param-value>
</context-param>
<context-param>
 <param-name>resteasy.document.secure.disableDTDs</param-name>
 <param-value>false</param-value>
</context-param>
Installation RPM et mises à jour
Il y a maintenant un choix de canaux de RPM ou de référentiels auxquels s'abonner pour l'installation et les mises à jour de JBoss EAP via RPM. Le canal actuel de JBoss EAP fournit la dernière version, et un canal mineur fournit une version mineure spécifique et tous les correctifs applicables. Cela permet de maintenir la même version mineure de JBoss EAP 6, tout en restant au fait des derniers correctifs de sécurité et les problèmes de haute sévérité. Pour plus de détails sur les canaux disponibles, consultez https://access.redhat.com/solutions/1346093.
Sécurité
SSLValve permet les noms d'en-tête configurables par les utilisateurs

Les noms d'en-têtes HTTP utilisés par SSLValve pour passer des informations SSL/TLS de l'auteur ont été prédéfinis, par exemple : ssl_client_cert, ssl_cipher, ssl_session_id et ssl_cipher_usekeysize. Avec ce changement, les noms des en-têtes sont maintenant personnalisables pour que l'expéditeur puisse utiliser un nom arbitraire de l'en-tête HTTP, avec le nom spécifié dans la configuration de SSLValve.

Authentification basée Kerberos pour les appels à distance

La prise en charge de l'authentification des EJB et des clients EJB est maintenant activée.

Les domaines de sécurité de gestion doivent mettre en cache les données LDAP

Le domaine de sécurité de gestion met les données LDAP en cache actuellement, ce qui aide à réduire le nombre de requêtes LDAP.

Autorisation avec des informations d'identification Kerberos statiques pour la source de données Oracle DB pour une JVM Oracle.

L'autorisation à l'aide d'informations d'identification Kerberos statiques a été ajoutée dans une source de données Oracle DB pour une JVM Oracle. Notez que cette version du pilote Oracle DB 11.2.0.3 ou plus récente est nécessaire, aussi le cache du domaine de sécurité doit être activé.

Autorisation avec des informations d'identification Kerberos statiques pour le serveur SQLServer pour une JVM Oracle.

Autorisation à l'aide des informations d'identification Kerberos statiques dans une source de données de serveur SQL Microsoft a été ajoutée. Notez que cette fonctionnalité est uniquement prise en charge pour les connexions non-XA.

Ajouter un support pour le mot de passe externe du keystore à l'implémentation PicketBoxVault

La fonctionnalité Vault prend maintenant en charge l'option d'avoir un mot de passe de keystore fourni par une commande externe ou une classe personnalisée.

Ajouter l'option "remove vault entry" (supprimer la saisie d'archivage de sécurité) à l'outil Vault

L'outil d'interface CLI Vault a été amélioré en ajoutant la possibilité de supprimer une valeur stockée dans un archivage sécurisé (vault).

Utiliser l'indicateur -secmgr pour la configuration d'un Java Security Manager

L'exécution de JBoss EAP dans le Java Security Manager est désormais activée, soit en ajoutant le paramètre -secmgr au script de startup ou en activant l'option SECMGR="true" dans le fichier de configuration. Activer le Java Security Manager par la propriété Java système -Djava.security.manager n'est plus possible. Suite à ce changement, les gestionnaires de sécurité personnalisés ne peuvent pas être utilisés. Démarrer JBoss EAP avec un gestionnaire de sécurité personnalisé activé résultera en une sortie de JBoss EAP avec un code non-zero exit au démarrage. Voir le Security Guide à propos des changements requis pour activer le Java Security Manager.

Configurations prises en charge
Oracle JDK 8

Oracle Java Platform, Standard Edition 1.8 (JDK 8) a été ajouté à la liste de configurations prises en charge.

IBM JDK 8

IBM JDK 8 a été ajouté à la liste de configurations prises en charge.

DBMS

Le DBMS suivant a été certifié et est maintenant totalement pris en charge :

  • Enterprise DB Postgres Plus Advanced Server 9.3
  • MySQL 5.7
  • IBM DB2 10.5
  • Microsoft SQL Server 2014
  • PostgreSql 9.3

Fournit mod_snmp pour les versions RHEL testées sur PPC

Le module SNMP (Simple Network Management Protocol) mod_snmp est maintenant pris en charge pour l'architecture PowerPC64 exécutant Red Hat Enterprise Linux 6 et Red Hat Enterprise Linux 7.

WebSockets 1.0
Le protocole WebSocket 1.0 fournit la communication dans les deux sens entre les serveurs et les clients web. Les communications entre les clients et le serveur sont basées sur des événements, ce qui permet un traitement plus rapide et une plus petite bandwidth par rapport aux méthodes basées sur des interrogations.
L'application JBoss EAP 6.4 WebSocket fournit un support complet d'injection de dépendance des points de terminaison de serveur; cependant, elle ne fournit pas de services CDI pour les clients de points de terminaison. Le support CDI est limité à celui qui est exigé par la plate-forme EE 6, et de ce fait, les fonctionnalités EE7, telles les intercepteurs sur les points de terminaison, ne sont pas pris en charge.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.