Realms


Un realm est un espace de gestion isolé dans TOSIAM. Chaque realm possède ses propres utilisateurs, groupes, rôles, politiques, modules d’authentification et configuration de services — sans interférence avec les autres realms.

Pourquoi des realms ?

Les realms permettent le multi-tenancy : une seule instance TOSIAM peut servir plusieurs organisations, départements ou applications tout en maintenant une séparation stricte des données et des politiques.

Cas d’usage typiques :

  • Séparer les utilisateurs internes (employés) des utilisateurs externes (clients)
  • Héberger plusieurs clients sur la même infrastructure
  • Créer des environnements de test isolés du realm de production

Hiérarchie

Les realms forment une arborescence. Le realm racine (/) existe toujours. Les sub-realms s’y greffent :

/ (root realm)
├── /clients
│   ├── /clients/acme
│   └── /clients/contoso
└── /employees

Un sub-realm hérite de la configuration du realm parent, mais peut la surcharger localement.

Ce qu’un realm contient

RessourceDescription
Utilisateurs & groupesIdentités stockées dans le datastore du realm
RôlesRôles statiques et filtrés
Modules d’authentificationInstances de modules configurées dans ce realm
Chaînes / graphes d’authFlux d’authentification disponibles
ServicesOAuth2, SAML2, self-service, audit…
PolitiquesRègles d’autorisation (entitlements)
AgentsAgents J2EE, Web et OAuth2
DatastoresSources d’identité (LDAP, AD, JDBC…)

Gestion via l’API REST

GET  /realms                    → lister tous les realms
POST /realms                    → créer un realm
GET  /realms/{realm}            → lire un realm
PUT  /realms/{realm}            → mettre à jour
DELETE /realms/{realm}          → supprimer

Gestion via ssoadm

# Créer un realm
ssoadm create-realm --realm /clients/acme

# Lister les realms
ssoadm list-realms --realm /

# Ajouter un service à un realm
ssoadm add-svc-realm --realm /clients/acme --servicename iPlanetAMAuthService

# Lire les attributs d'un realm
ssoadm get-realm --realm /clients/acme

Realms et URL

L’URL de chaque realm suit le pattern :

https://hostname/tosiam/json/realms/root/realms/{realm-name}/...

Pour les endpoints d’authentification :

https://hostname/tosiam/realms/{realm}/authenticate

Le realm root correspond au realm racine /.

Modifier cette page sur GitHub