Création des clients et des rôles

Il est pertinent de s’assurer au démarrage de l’application que les clients et les rôles sont présents et de les créer si nécessaire.

La librairie sso-utils permet de rendre cette tâche très simple à mettre en oeuvre:

Configuration du pom.xml

...
<dependency>
<groupId>fr.sedoo</groupId>
	<artifactId>sedoo-sso-utils</artifactId>
	<version>0.0.1-SNAPSHOT</version>
</dependency>
...
<repositories>
	<repository>
		<id>sso-snapshots</id>
		<url>https://sourcesup.renater.fr/nexus/repository/sdossoutils-snapshots</url>
		<snapshots><enabled>true</enabled></snapshots>
	</repository>
</repositories>
...

Exemple de code

L’exemple suivant, crée un client utilisable par un backend et y associe plusieurs rôles. Typiquement, il peut être mis dans la méthode @PostConstruct d’un @Component.

String token = TokenProvider.getToken(config.getSsoLogin(), config.getSsoPassword());
		ClientProvider.createBackendClient(config.getSsoBackendClientName(), token);
		List<String> catalogueAdminRoles = config.getCatalogueAdminRoles();
		
		for (String role : catalogueAdminRoles) {
			RoleProvider.createRole(role, config.getSsoBackendClientName(), token);
		}

Rechercher