Build Forge exécute normalement ses services en tant qu'application
sur le serveur d'applications Apache Tomcat fourni.
Pourquoi et quand exécuter cette tâche
Les instructions ci-après vous permettent de configurer Build Forge pour utiliser WAS au
lieu de Tomcat. Suivez les instructions figurant dans la section
Utilisation de WebSphere Application Server au lieu d'Apache Tomcat, avec une exception : le fichier
rbf-services.war contient un fichier nommé
web.xml que vous devez extraire
et modifier pour ajouter une contrainte de sécurité. Avant d'installer cette application sous
WAS, le fichier
war doit être régénéré
après avoir été modifié pour utiliser la version protégée.
Pour
ce faire, suivez les instructions ci-dessous :
- Accédez au répertoire contenant votre fichier rbf-services.war
(le répertoire webapps dans votre fichier principal de serveur Tomcat). Copiez ce fichier à un emplacement temporaire, tel que C:\rbf.
- Développez le fichier WAR. A partir de la ligne de commande, exécutez la
commande : %IBM_JAVA_HOME%\jar –xvf rbf-services.war pour
développer le contenu du fichier war.
Remarque : Java doit être disponible
et la variable d'environnement IBM_JAVA_HOME doit avoir été
créée.
- Sauvegardez le fichier rbf-services.war pour le récupérer
ultérieurement :
- Windows : copy rbf-services.war rbf-services.war.bak
- UNIX ou Linux : cp rbf-services.war rbf-services.war.bak
- Recherchez le fichier web.xml dans le répertoire WEB-INF
(à partir des fichiers développés dans le fichier war). Editez-le
pour ajouter un contexte de sécurité. Par exemple, ajoutez les lignes suivantes
à la fin du fichier, juste avant la balise </web-app> :
<security-constraint id="SecurityConstraint_1">
<web-resource-collection id="WebResourceCollection_1">
<web-resource-name>/*</web-resource-name>
<url-pattern>/AuthServlet/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
</web-resource-collection>
<auth-constraint id="AuthConstraint_1">
<description>myconstraint:+:</description>
<role-name>User</role-name>
</auth-constraint>
<user-data-constraint id="UserDataConstraint_1">
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config id="LoginConfig_1">
<auth-method>BASIC</auth-method>
<realm-name>domaine-qualifié-complet</realm-name>
</login-config>
<security-role id="SecurityRole_1">
<role-name>User</role-name>
</security-role>
Remarque : La valeur de <auth-method> peut être toute méthode d'authentification
J2EE prise en charge par WAS. La méthode d'authentification la plus commune est FORM,
qui requiert des paramètres de configuration supplémentaires. Consultez votre documentation
WebSphere pour obtenir des instructions sur la configuration de FORM dans votre
application.
- A partir de la ligne de commande, régénérez le fichier war
(appelé à partir du même répertoire que celui dans lequel il a été extrait) en exécutant
la commande suivante :
%IBM_JAVA_HOME%\jar –cvf rbf-services.war
Vous
devez à présent disposer d'une nouvelle version de rbf-services, qui a
été modifié pour protéger l'AuthServlet avec des contraintes J2EE.
Suivez les instructions d'installation pour l'exécution avec WAS et installez
cette version de rbf-services.war via Applications->Install
New Application (Installation d'une nouvelle application). Assurez-vous que Build Forge n'est pas en cours d'exécution
lors de la configuration de WAS.
Une fois l'installation terminée, accédez à Applications->Enterprise
Applications (Applications d'entreprise). Cliquez sur le nom de l'application pour la configurer. Sous Detail
Properties, cliquez sur le lien Security role to
user/group mapping.
Cochez la case All Authenticated pour
Utilisateur. Après avoir effectué cette modification, assurez-vous de la sauvegarder dans la configuration principale.
La sécurité des applications doit également être activée sous WAS.
Pour ce faire, accédez à Sécurité->Secure
administration, applications, and infrastructure (Administration, applications et infrastructure sécurisées). Veillez à ce que
la case Enable application security soit cochée.
A
ce moment, redémarrez le serveur WAS puis redémarrez le serveur Build
Forge.
Remarque : Les rbf-services devraient à présent démarrer comme
partie du processus de configuration de WAS, qui doit par conséquent être démarré avant Build
Forge.