Installation
Ce tutoriel décrit comment installer manuellement un serveur TOSIAM directement à partir des assets livrés dans une release (archive .war + outils SSOAdminTools / SSOConfiguratorTools), sans passer par tosiam-project-generator-maven-plugin ni par le QuickStart packagé. C’est la méthode utile pour comprendre ce que ces outils font sous le capot, pour déployer TOSIAM sur un Tomcat déjà en place, ou pour intégrer son installation dans un script de provisioning maison.
Public concerné
- Développeur créant un module ou un graphe d’authentification personnalisé.
- Intégrateur souhaitant simuler une brique IAM au sein d’une application plus large, sans passer par un environnement de production complet.
Prérequis
- JDK 17 ou 21 (la variable d’environnement
JAVA_HOMEdoit être définie). - Apache Tomcat 11.0.14 (nous noterons
<TOMCAT>son répertoire d’installation) — c’est la version de Tomcat utilisée par le QuickStart officiel de TOSIAM 3.36.0.
Étape 1 — Télécharger les assets
Téléchargez TosiAM-3.36.0.zip depuis la page Téléchargement (ou directement depuis les releases GitHub).
Cette archive contient trois fichiers, que vous devez extraire :
TosiAM-3.36.0.war— le serveur TOSIAM lui-même.SSOAdminTools-3.36.0.zip— l’outil en ligne de commandessoadm.SSOConfiguratorTools-3.36.0.zip— l’outil de configuration automatisée.
Étape 2 — Déployer le WAR et démarrer Tomcat
Nous supposons que Tomcat est arrêté.
- Copiez le fichier
TosiAM-3.36.0.wardans le répertoire<TOMCAT>/webapps, et renommez l’archive entosiam.war. - Ouvrez une fenêtre console :
export CATALINA_HOME=<TOMCAT>
export CATALINA_OPTS="-Xmx2g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m \
-Dcom.sun.identity.configuration.directory=<INSTANCE>"
CATALINA_OPTS="${CATALINA_OPTS} --add-exports java.base/sun.misc=ALL-UNNAMED \
--add-exports java.base/sun.security.provider=ALL-UNNAMED \
--add-exports java.base/sun.security.x509=ALL-UNNAMED \
--add-exports java.base/sun.security.util=ALL-UNNAMED \
--add-exports java.base/sun.security.tools.keytool=ALL-UNNAMED \
--add-exports java.xml/com.sun.org.apache.xerces.internal.dom=ALL-UNNAMED"
$CATALINA_HOME/bin/catalina.sh run
@echo off
set CATALINA_HOME=<TOMCAT>
set CATALINA_OPTS=-Xmx2g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Dcom.sun.identity.configuration.directory=<INSTANCE>
set CATALINA_OPTS=%CATALINA_OPTS% --add-exports java.base/sun.misc=ALL-UNNAMED --add-exports java.base/sun.security.provider=ALL-UNNAMED --add-exports java.base/sun.security.x509=ALL-UNNAMED --add-exports java.base/sun.security.util=ALL-UNNAMED --add-exports java.base/sun.security.tools.keytool=ALL-UNNAMED --add-exports java.xml/com.sun.org.apache.xerces.internal.dom=ALL-UNNAMED
call "%CATALINA_HOME%\bin\catalina.bat" run
- Le paramètre
com.sun.identity.configuration.directoryindique le répertoire d’instance de TOSIAM (<INSTANCE>). Ce répertoire, initialement, ne doit pas exister ou tout au moins être vide. - Les options
--add-exportssont nécessaires car TOSIAM s’appuie encore sur des classes internes du JDK (sun.security.*,sun.misc) pour la gestion des certificats et de la sécurité. Sans elles, le serveur ne démarre pas sous JDK 17+.
Après quelques secondes, on obtient les traces suivantes :
05-Dec-2023 11:04:16.655 INFOS [main] org.apache.coyote.AbstractProtocol.start Démarrage du gestionnaire de protocole ["http-nio-8080"]
05-Dec-2023 11:04:16.662 INFOS [main] org.apache.catalina.startup.Catalina.start Le démarrage du serveur a pris [5056] millisecondes
Ouvrez un navigateur, et accédez à http://localhost:8080/tosiam :

Étape 3 — Création/configuration de l’instance, mode manuel
- Dans la fenêtre précédente, cliquez sur « Créer une configuration par défaut ».
- Sélectionnez « I accept the licence agreement » et cliquez sur Continue.

- Renseignez le mot de passe du user
amAdmin. Cet utilisateur est l’administrateur par défaut de TOSIAM.

- Une fois les champs validés, cliquez sur le bouton « Créer une configuration ». Une boîte de dialogue affiche le déroulement de l’installation.
Si tout s’est bien passé, la fin de l’installation s’affiche comme suit :

Les informations affichées dans la boîte de dialogue sont également disponibles dans le fichier <INSTANCE>/install.log.
Vous pouvez maintenant vous connecter à la console TOSIAM (http://localhost:8080/tosiam).
Étape 4 — Création/configuration de l’instance, mode automatique (optionnel)
Nous allons maintenant installer un outil permettant d’automatiser l’étape précédente.
Créez un répertoire que nous noterons <TOOLS>, et dans ce répertoire, créez un répertoire config. Dézippez le contenu du fichier SSOConfiguratorTools-3.36.0.zip récupéré à l’étape 1 dans config.
Dans le répertoire config, créez le fichier de configuration suivant, config.properties :
SERVER_URL=http://localhost:8080
DEPLOYMENT_URI=/tosiam
BASE_DIR=<INSTANCE>
locale=en_US
PLATFORM_LOCALE=en_US
AM_ENC_KEY=mykey
ADMIN_PWD=password
COOKIE_DOMAIN=localhost
ACCEPT_LICENSES=true
DATA_STORE=embedded
DIRECTORY_SSL=SIMPLE
DIRECTORY_SERVER=localhost
DIRECTORY_PORT=50389
DIRECTORY_ADMIN_PORT=4444
DIRECTORY_JMX_PORT=1389
ROOT_SUFFIX=dc=example,dc=com
DS_DIRMGRDN=cn=Directory Manager
DS_DIRMGRPASSWD=secret12
Si vous avez exécuté l’étape 3 (mode manuel), arrêtez le serveur Tomcat et supprimez le répertoire <INSTANCE>.
Relancez le serveur Tomcat comme décrit à l’étape 2.
Dans le répertoire <TOOLS>/config, ouvrez une fenêtre console, et tapez :
${JAVA_HOME}/bin/java -jar <TOOLS>/config/tosiam-configurator-tool-3.36.0.jar -f config.properties
@echo off
"%JAVA_HOME%\bin\java" -jar "%TOOLS%\config\tosiam-configurator-tool-3.36.0.jar" -f "config.properties"
Les informations affichées dans la console sont également disponibles dans le fichier <INSTANCE>/install.log.
Si tout s’est bien passé, vous pouvez maintenant vous connecter à la console TOSIAM (http://localhost:8080/tosiam).
Étape 5 — Installation de ssoadm (optionnel)
ssoadm est l’outil en ligne de commande pour configurer une instance TOSIAM. Il permet en particulier d’automatiser toutes les actions réalisées dans la console TOSIAM — c’est l’outil qu’utilise en interne le goal ssoadm de tosiam-project-generator-maven-plugin (voir Générer un projet avec Maven).
Créez un répertoire que nous noterons <TOOLS>, et dans ce répertoire, créez un répertoire admin. Dézippez le contenu du fichier SSOAdminTools-3.36.0.zip récupéré à l’étape 1 dans admin.
Dans le répertoire admin, créez un fichier .pwd.txt contenant le mot de passe du compte amadmin, et lancez le script d’installation :
echo password > .pwd.txt && chmod 400 .pwd.txt
./setup --acceptLicense -p <INSTANCE>
@echo off
echo password > .pwd.txt
setup --acceptLicense -p <INSTANCE>
ssoadm se trouve dans <TOOLS>/admin/tosiam/bin (tosiam étant le nom de déploiement par défaut, DEPLOYMENT_URI).Si tout s’est bien passé, vous devriez avoir quelque chose comme :
La version de ce tools.zip est : TOSIAM 3.36.0
La version de votre instance de serveur est : 3.36.0