2012-09-12 1 views
0

J'utilise JBosss AS 7 en mode domaine. Lorsque j'ai appliqué les modifications à host.xml, j'ai reçu les erreurs suivantes.Sécurisation de la console d'administration JBoss avec SSL ne fonctionnant pas

[Host Controller] Message: JBAS014789: Élément inattendu '{urn: jboss: domain: 1.2} socket contraignant' a rencontré

J'ai suivi ce guide de référence.

https://community.jboss.org/wiki/SecuringAdministrationConsoleWithHttps

host.xml

<management> 
     <security-realms> 
      <security-realm name="ManagementRealm"> 
       <authentication> 
        <properties path="mgmt-users.properties" relative-to="jboss.domain.config.dir"/> 
       </authentication> 
<server-identities> 
<ssl> 
<keystore path=".keystore" relative-to="jboss.home.dir" password="changeit"/> 
</ssl> 
</server-identities> 
      </security-realm> 
      <security-realm name="ApplicationRealm"> 
       <authentication> 
        <properties path="application-users.properties" relative-to="jboss.domain.config.dir" /> 
       </authentication> 
      </security-realm> 
     </security-realms> 
     <management-interfaces> 
      <native-interface security-realm="ManagementRealm"> 
       <socket interface="management" port="${jboss.management.native.port:9999}"/> 
      </native-interface> 
      <http-interface security-realm="ManagementRealm"> 
       <socket interface="management" port="${jboss.management.http.port:9990}"/> 
       <socket-binding https="management-https"/> 
      </http-interface> 
     </management-interfaces> 
    </management> 

Merci!

+0

Est-ce que quelqu'un a configuré SSL avec la console? Tous les commentaires sont les bienvenus. Merci. –

+0

Il semble que JBoss n'autorise pas la balise . Est-il possible d'activer le protocole SSL sur la console dans l'onglet ou l'onglet ? Merci beaucoup. –

Répondre

0

Apporter des modifications correctes dans le fichier de configuration sur ligne particulière et de la colonne comme indiqué dans la pile trace ParseError à [row,col]:[x,y]

0

J'ai eu affaire à la même question, et il est difficile pour un certain nombre de raisons. J'ai énuméré les changements à standalone.xml qui m'a incité à aller. Il va sans dire que vous devez construire un fichier de clés pour référencer.

La partie la plus problématique de cette configuration est que l'élément <ssl> dans management.security-realms.security-domaine utilise une syntaxe différente que lors de la configuration de l'élément <ssl><subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host"> dans. J'ai énuméré les deux éléments ici pour montrer le contraste. Vous n'avez pas besoin de configurer SSL pour les services Web pour sécuriser votre console. J'ai ajouté les détails supplémentaires pour montrer comment ils diffèrent.


<management> 
    <security-realms> 
     <security-realm name="ManagementRealm"> 
      <server-identities> 
       <ssl protocol="TLS"> 
        <keystore path="/my/path/to/certs/my_cert.jks" keystore-password="mypass"/> 
       </ssl> 
      </server-identities> 
      <authentication> 
       <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> 
      </authentication> 
     </security-realm> 
    </security-realms> 
    <management-interfaces> 
     <native-interface security-realm="ManagementRealm"> 
      <socket-binding native="management-native"/> 
     </native-interface> 
     <http-interface security-realm="ManagementRealm"> 
      <socket-binding http="management-console-https"/> 
     </http-interface> 
    </management-interfaces> 
</management> 
. 
. 
. 
<profile> 
. 
. 
. 
<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host"> 
    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> 
    <connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" enable-lookups="false" secure="true"> 
     <ssl password="mypass" certificate-key-file="/my/path/to/certs/my_cert.jks" protocol="TLSv1" verify-client="false" certificate-file="/my/path/to/certs/my_cert.jks"/> 
    </connector> 
    <virtual-server name="default-host" enable-welcome-root="true"> 
     <alias name="localhost"/> 
     <alias name="example.com"/> 
    </virtual-server> 
</subsystem> 
. 
. 
. 
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}"> 
    <socket-binding name="http" port="8080"/> 
    <socket-binding name="https" port="8443"/> 
. 
. 
. 
    <socket-binding name="management-native" interface="management" port="${jboss.management.native.port:9999}"/> 
    <socket-binding name="management-console-https" interface="management" port="${jboss.management.console.https.port:9991}"/> 


De plus, puisque vous ne l'utilisez pas, retirez l'ancien socket contraignant:


<socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/> 



J'espère que cela aide.

Questions connexes