Scripter une configuration
Sur cette page
Les exemples utilisent le script bin/ssoadm.sh de la distribution QuickStart, déjà authentifié (voir Démarrer avec ssoadm). Avec l’outil seul, ajoutez -u amadmin -f <fichier de mot de passe> à chaque commande.
Créer un royaume et ses utilisateurs#
./ssoadm.sh create-realm --realm /clients
./ssoadm.sh create-identity --realm /clients --idtype User --idname alice.martin \
--attributevalues "givenName=Alice" "sn=Martin" "mail=alice.martin@example.com" "userPassword=<mot de passe>"
./ssoadm.sh create-identity --realm /clients --idtype Group --idname support
./ssoadm.sh add-member --realm /clients --idtype Group --idname support \
--memberidtype User --memberidname alice.martinlist-identities vérifie le résultat : ./ssoadm.sh list-identities --realm /clients --idtype User --filter "*".
Créer un graphe d’authentification#
create-auth-graph lit la définition du graphe dans un fichier JSON (startNodeId et steps, voir Format JSON d’un graphe) :
./ssoadm.sh create-auth-graph --realm /clients --name connexion --datafile "$PWD/connexion.json"
./ssoadm.sh show-auth-graph --realm /clients --name connexionPour le modifier, éditez le fichier puis relancez update-auth-graph avec les mêmes options. Passez un chemin absolu à --datafile : le script de la QuickStart s’exécute depuis son propre répertoire. Le graphe se rend ensuite accessible comme décrit dans Exposer un graphe comme point d’entrée.
Assigner et régler un service#
add-svc-realm assigne un service au royaume avec ses premières valeurs ; set-realm-svc-attrs modifie ensuite ces valeurs :
./ssoadm.sh add-svc-realm --realm /clients --servicename selfService \
--attributevalues selfServiceDashboardUrl=account
./ssoadm.sh set-realm-svc-attrs --realm /clients --servicename selfService \
--attributevalues selfServiceDashboardUrl=https://portail.example.com/comptePour une valeur longue (un script, un certificat), suffixez le nom de l’attribut par -file et donnez le chemin du fichier comme valeur.
Enchaîner les commandes avec do-batch#
do-batch exécute un fichier de commandes en une seule authentification, plus vite qu’une série d’appels. Chaque ligne contient une commande et ses options, sans ssoadm ni authentification ; les lignes vides et celles qui commencent par # sont ignorées.
# configuration.txt
create-realm --realm /clients
create-identity --realm /clients --idtype User --idname alice.martin --attributevalues givenName=Alice sn=Martin
create-identity --realm /clients --idtype User --idname bruno.leroy --attributevalues givenName=Bruno sn=Leroy
create-auth-graph --realm /clients --name connexion --datafile /opt/config/connexion.json./ssoadm.sh do-batch --batchfile "$PWD/configuration.txt" --batchstatus "$PWD/statut.txt" --continue--batchstatus écrit le résultat de chaque ligne dans un fichier ; --continue poursuit après une ligne en erreur au lieu de s’arrêter.
Exporter et importer une configuration#
Pour reproduire une configuration d’un environnement à l’autre :
- graphes :
show-auth-graphaffiche la définition JSON d’un graphe, réutilisable telle quelle aveccreate-auth-graph --datafile; - politiques :
policy-exportetpolicy-import(modèle de politiques du royaume, en JSON), oulist-xacmletcreate-xacmlau format XACML ; - fédération :
export-entityetimport-entitypour les métadonnées SAML 2.0 ; - serveur :
export-serveretimport-serverpour la configuration d’une instance.
Les options de chaque commande sont dans la référence des commandes.
Mis à jour le