FoxIDs Control

FoxIDs est configuré au moyen de FoxIDs Control, qui comprend Control Client et Control API. Control Client et Control API sont sécurisés par FoxIDs, et Control Client utilise Control API.

Control API contient toutes les fonctionnalités de configuration. Il est donc possible d'automatiser la configuration grâce à l'intégration avec Control API.

FoxIDs Control Client

Le Control Client est une application Blazor WebAssembly (WASM).

Ouvrez votre Control Client sur FoxIDs.com.

Tenant et environnement master

Si vous utilisez FoxIDs.com, votre tenant est créé lors de l’inscription.

Si vous déployez FoxIDs (auto-hébergé), vous avez accès au tenant master. Créez d’abord un tenant pour contenir votre configuration de sécurité. La plupart des installations n’en ont besoin que d’un, mais vous pouvez configurer un nombre illimité de tenants.

Configure tenants

Un tenant contient un environnement master, à partir duquel l’ensemble du tenant est configuré. L’environnement master contient un référentiel d’utilisateurs et, lors de la création, un seul utilisateur administrateur.

Normalement, vous ne devez pas modifier la configuration de l’environnement master ni ajouter de nouvelles méthodes d’authentification ou enregistrements d’applications, mais c’est possible. Vous pouvez par exemple ajouter une méthode d’authentification pour obtenir le single sign-on (SSO) vers l’environnement master.

Créer des utilisateurs administrateurs

Il est possible de créer d’autres utilisateurs administrateurs dans l’environnement master. Un utilisateur devient administrateur en ajoutant le rôle administrateur foxids:tenant.admin, comme indiqué ci-dessous.

Créer un utilisateur :

  1. Ouvrez l’environnement master
  2. Sélectionnez l’onglet Users
  3. Cliquez sur Create User
  4. Ajoutez les informations utilisateur et cliquez sur Create.

Configure administrator user

Accorder l’accès à un utilisateur

L’accès est accordé via des rôles. Les scopes ne sont nécessaires que lorsqu’un client demande un jeton pour l’API Control ; le Control Client demande déjà le scope requis sur foxids_control_api, vous attribuez donc généralement uniquement des rôles à l’utilisateur dans l’environnement master.

Pour permettre à une personne de se connecter au Control Client et de voir les données de configuration :

  1. Créez ou ouvrez l’utilisateur dans l’environnement master (onglet Users).
  2. Ajoutez le rôle de base foxids:tenant:basic.read (nécessaire pour que le Control Client charge le profil et les outils d’assistance).
  3. Décidez de ce que l’utilisateur est autorisé à voir :
    • Pour limiter la visibilité à un environnement, ajoutez foxids:tenant:track[vh2csjt4].read (remplacez vh2csjt4 par le nom technique de l’environnement).
    • Pour autoriser tous les environnements, ajoutez foxids:tenant.read.
  4. Ajoutez les rôles d’opération nécessaires à l’utilisateur dans chaque environnement. Exemples : foxids:tenant:track[vh2csjt4]:user pour gérer les utilisateurs, foxids:tenant:track[vh2csjt4]:party pour gérer les applications et les méthodes d’authentification.

Control Client vs API uniquement :

  • Le Control Client (UI interactive) lit les données de profil et les listes d’environnements en plus de l’API spécifique que vous souhaitez gérer. Il a donc besoin de foxids:tenant:basic.read plus un rôle de lecture d’environnement (foxids:tenant:track[main].read ou foxids:tenant.read) en plus de vos rôles d’action.
  • Les appels API uniquement peuvent être plus limités. Si un service backend appelle uniquement l’API des utilisateurs pour l’environnement vh2csjt4, le rôle foxids:tenant:track[vh2csjt4]:user (et la demande du scope correspondant lors de l’utilisation des identifiants client) suffit ; les rôles de lecture supplémentaires ne sont pas nécessaires car aucune donnée UI ne doit être chargée.

Environnements

Un environnement est une instIdentity Providere indépendante disposant de son propre répertoire d'utilisateurs, de son propre certificat, de ses propres méthodes d'authentification, de ses propres enregistrements d'applications et de ses propres paramètres. Utilisez des environnements distincts pour isoler les différentes phases telles que le développement, les tests et la production.

Consultez la section Environnements pour en savoir plus sur la séparation, le contenu, la création et la configuration des environnements.

FoxIDs Control API

Control API expose la configuration et l'administration de FoxIDs sous forme de REST API sécurisée. Control Client utilise la même API, ce qui permet aussi d'automatiser les tâches de configuration avec vos propres services et outils de deployment.

Commencez par le guide Control API pour configurer l'authentification, construire les URL d'endpoint, choisir les scopes et rôles et trouver les guides propres aux ressources.

Les deployments self-hosted exposent le document OpenAPI sur .../api/swagger/v2/swagger.json et Swagger UI sur .../api/swagger.

Droits d'accès API

Consultez les droits d'accès Control API pour le modèle de scopes et rôles et les tableaux complets des droits.