J'ai la configuration suivante - le service Spring SAAS REST, qui permet à différentes entreprises de gérer différents événements. Et il y a aussi un client de repos (une application mobile), expédié séparément pour chaque entreprise. Je veux utiliser keycloak pour les questions de sécurité, et j'ai une question de savoir comment séparer une entreprise d'une autre.Séparer l'accès dans une application avec keycloak
J'ai besoin de companyA pour ne pas pouvoir accéder à l'événement companyB, et aussi avoir besoin de différents rôles au sein de l'entreprise - certains peuvent créer des événements, d'autres ne peuvent que les lire.
D'abord je pensais que chaque entreprise aura propre domaine créé en keycloak, mais j'appris que domaine effectivement spécifié dans les paramètres de service de démarrage du printemps REST comme
keycloak.realm = demo-royaume
Ce qui signifie qu'il ne s'agit que d'un domaine par application REST. Et je ne veux pas configurer l'instance de service REST par client. Je veux seulement qu'un REST les règle tous. Est-ce que j'essaie d'utiliser quelque chose qui ne correspond pas vraiment à mon cas d'utilisation?
Sera-t-il judicieux de configurer un groupe Keycloack pour chaque entreprise et de faire en sorte que les utilisateurs d'un groupe n'aient pas accès à ce qui est créé par un autre groupe. Mais alors cela semble vraiment mal, puisque je comprends groupe sont censés être utilisés d'une manière différente - d'avoir un groupe d'administration et un groupe d'utilisateurs, etc, la ségrégation des utilisateurs "verticalement" par "privilèges", et non "horizontalement".
Pouvez-vous suggérer une bonne approche pour ce problème?