2.3. Exécuter JBoss EAP 6 dans le Java Security Manager

Pour spécifier une stratégie Java Security Manager, vous devez modifier les options Java transmises à l'instance de serveur ou de domaine lors du processus d'amorçage. Pour cette raison, vous ne pouvez passer les paramètres en option aux scripts domain.sh ou standalone.sh. La procédure suivante va vous guider à travers les étapes de configuration de votre instance pour exécuter au sein d'une stratégie Java Security Manager.

Pré-requis

  • Avant de suivre cette procédure, vous devrez rédiger une stratégie de sécurité, en utilisant la commande policytool comprise dans votre Java Development Kit (JDK). Cette procédure assume que votre stratégie se trouve dans EAP_HOME/bin/server.policy. Sinon, vous pouvez écrire la stratégie de sécurité à l'aide 'un éditeur de texte et la sauvegarder comme EAP_HOME/bin/server.policy.
  • Le domaine ou le serveur autonome doivent être tout à fait arrêtés avant d'éditer un fichier de configuration quelconque.
Procéder à la procédure suivante pour chaque hôte physique ou pour chaque instance de votre domaine, si vous avez des membres de domaine éparpillés dans des systèmes multiples.

Procédure 2.1. Configurer le gestionnaire de sécurité dans JBoss EAP 6

  1. Ouvrir le fichier de configuration.

    Ouvrir le fichier de configuration pour le modifier. Ce fichier se trouve dans un de ces emplacements, suivant que vous utilisiez un domaine géré ou un serveur autonome. Il ne s'agit pas du fichier exécutable utilisé pour démarrer le serveur ou le domaine.
    • Domaine géré

      • Dans Linux: EAP_HOME/bin/domain.conf
      • Dans Windows: EAP_HOME\bin\domain.conf.bat
    • Serveur autonome

      • Dans Linux: EAP_HOME/bin/standalone.conf
      • Dans Windows: EAP_HOME\bin\standalone.conf.bat
  2. Ajouter les options Java au fichier.

    Pour s'assurer que les options Java soient bien utilisées, ajouter les au blic de code qui commence par :
    if [ "x$JAVA_OPTS" = "x" ]; then
    
    Vous pouvez modifier la valeur de -Djava.security.policy pour indiquer l'emplacement exact de votre police de sécurité. Cela ne doit prendre qu'une seule ligne, sans saut de ligne. Utiliser == quand vous définissez la propriété -Djava.security.policy indique que le gestionnaire de sécurité utilisera uniquement le fichier de police spécifié. Utiliser = indique que le gestionnaire de sécurité utilisera la police spécifiée en combinaison à la police définie dans la section policy.url de JAVA_HOME/lib/security/java.security.

    Important

    Les versions de JBoss Enterprise Application Platform à partir de 6.2.2 requièrent que la propriété système jboss.modules.policy-permissions soit sur true.

    Exemple 2.1. domain.conf

    JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djava.security.policy==$PWD/server.policy -Djboss.home.dir=/path/to/EAP_HOME -Djboss.modules.policy-permissions=true"

    Exemple 2.2. domain.conf.bat

    set "JAVA_OPTS=%JAVA_OPTS% -Djava.security.manager -Djava.security.policy==\path\to\server.policy -Djboss.home.dir=\path\to\EAP_HOME -Djboss.modules.policy-permissions=true"

    Exemple 2.3. standalone.conf

    JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djava.security.policy==$PWD/server.policy -Djboss.home.dir=$JBOSS_HOME -Djboss.modules.policy-permissions=true"

    Exemple 2.4. standalone.conf.bat

    set "JAVA_OPTS=%JAVA_OPTS% -Djava.security.manager -Djava.security.policy==\path\to\server.policy -Djboss.home.dir=%JBOSS_HOME% -Djboss.modules.policy-permissions=true"
  3. Démarrer le domaine ou le serveur.

    Démarrer le domaine ou le serveur en tant que normal.