Aller au contenu principal

Contrôle d’accès au niveau de l’application

Le contrôle d’accès au niveau de l’application vous permet de restreindre qui peut se connecter à une application spécifique. Au lieu de permettre à chaque utilisateur enregistré dans votre tenant Logto d’accéder à chaque application, vous pouvez créer des règles d’autorisation pour chaque application en fonction des utilisateurs, des rôles d’utilisateur, des organisations ou des rôles d’organisation.

Utilisez le contrôle d’accès au niveau de l’application lorsque vous souhaitez :

  • Rendre une application interne disponible uniquement pour les employés ou les administrateurs.
  • Limiter une Application protégée à un groupe sélectionné d’utilisateurs.
  • Autoriser uniquement certains clients ou partenaires à accéder à une application OIDC / OAuth tierce.
  • Déployer une nouvelle application à un groupe pilote avant de l’ouvrir à tous.

Fonctionnement

Lorsque le contrôle d’accès au niveau de l’application est désactivé, tous les utilisateurs enregistrés dans votre tenant Logto peuvent se connecter à l’application.

Lorsqu’il est activé, un utilisateur ne peut accéder à l’application que s’il correspond à au moins une règle configurée. Si l’utilisateur ne correspond à aucune règle, Logto refuse la tentative de connexion et affiche une page d’accès refusé avant que l’application ne reçoive des jetons.

Le contrôle d’accès au niveau de l’application est évalué lors du flux d’autorisation et du renouvellement de jeton. Cela signifie :

  • Les utilisateurs sans accès sont bloqués avant de pouvoir terminer la connexion à l’application.
  • Les autorisations d’application existantes sont vérifiées à nouveau lorsque des jetons de rafraîchissement sont utilisés pour demander de nouveaux jetons.
  • La mise à jour des règles affecte les futures vérifications d’autorisation et de renouvellement de jeton, sans modifier la session globale Logto de l’utilisateur.
remarque:

Le contrôle d’accès au niveau de l’application est distinct du contrôle d’accès basé sur les rôles (RBAC). Le RBAC contrôle ce qu’un utilisateur peut faire après l’authentification en délivrant des permissions (portées) dans les jetons d’accès. Le contrôle d’accès au niveau de l’application contrôle si un utilisateur peut accéder à une application particulière ou non.

Types de règles

Vous pouvez configurer les règles d’autorisation suivantes :

Type de règleCe qu’elle autorise
UtilisateursDes utilisateurs spécifiques peuvent accéder à l’application.
Rôles d’utilisateurLes utilisateurs affectés à des rôles d’utilisateur sélectionnés peuvent accéder à l’application.
OrganisationsTous les membres actuels et futurs des organisations sélectionnées peuvent accéder à l’application.
Rôles d’organisationLes membres ayant des rôles d’organisation sélectionnés dans des organisations sélectionnées peuvent accéder à l’application.

Les règles sont additives. Un utilisateur n’a besoin de correspondre qu’à une seule règle pour accéder à l’application.

Par exemple, si une application possède à la fois une règle de rôle d’utilisateur "Équipe support" et une règle de rôle d’organisation "BigTree - Admin", un utilisateur peut accéder à l’application s’il est affecté au rôle Équipe support, ou s’il est Admin dans l’organisation BigTree.

Configurer le contrôle d’accès au niveau de l’application

  1. Allez dans Console > Applications.
  2. Ouvrez l’application que vous souhaitez restreindre.
  3. Accédez à l’onglet Règles.
  4. Dans Règles d’autorisation personnalisées, cliquez sur Ajouter des règles.
  5. Choisissez un type de règle :
    • Utilisateurs
    • Rôles d’utilisateur
    • Organisations
    • Rôles d’organisation
  6. Sélectionnez les utilisateurs, rôles, organisations ou rôles d’organisation qui doivent être autorisés à accéder à l’application.
  7. Activez Activer le contrôle d’accès.
  8. Cliquez sur Enregistrer les modifications.
important:

Vous devez configurer au moins une règle d’autorisation avant d’activer le contrôle d’accès. Cela évite d’activer accidentellement le contrôle d’accès sans qu’aucun utilisateur ne soit autorisé à accéder à l’application.

Modifier ou supprimer des règles

Vous pouvez mettre à jour la liste d’autorisation depuis l’onglet Règles de l’application.

  • Pour ajouter d’autres règles, cliquez sur Ajouter une autre sous le tableau des règles.
  • Pour supprimer une règle, cliquez sur le bouton de suppression sur la ligne de la règle et confirmez l’action.
  • Après avoir ajouté ou supprimé des règles, cliquez sur Enregistrer les modifications pour appliquer la mise à jour.

Si le contrôle d’accès est activé, Logto exige qu’au moins une règle reste configurée. Pour supprimer toutes les règles, désactivez d’abord Activer le contrôle d’accès, puis enregistrez les modifications.

Impact des modifications de règles sur les utilisateurs

Le contrôle d’accès au niveau de l’application ne termine pas la session globale Logto de l’utilisateur. Un utilisateur peut toujours être connecté à Logto et à d’autres applications.

Pour l’application restreinte :

  • Un utilisateur qui ne correspond plus à aucune règle d’autorisation sera bloqué la prochaine fois qu’il passera par le flux d’autorisation de l’application.
  • Si l’utilisateur dispose déjà d’autorisations liées à l’application, Logto vérifie à nouveau les règles lorsque l’application utilise un jeton de rafraîchissement pour demander de nouveaux jetons. Si l’utilisateur n’a plus accès, Logto refuse la requête de jeton.

Cela permet de lier les décisions d’accès à l’application tout en évitant des perturbations inutiles pour les autres applications.

Relation avec les permissions des applications tierces

Pour les applications tierces, le contrôle d’accès au niveau de l’application et la gestion des permissions résolvent des problèmes différents :

  • Contrôle d’accès au niveau de l’application détermine si un utilisateur est autorisé à se connecter à l’application tierce.
  • Gestion des permissions détermine quels portées de profil utilisateur, portées de ressource API et portées d’organisation l’application tierce peut demander sur l’écran de consentement.

Si les deux sont configurés, l’utilisateur doit passer le contrôle d’accès au niveau de l’application avant de pouvoir autoriser l’application tierce.

Relation avec Application protégée

Pour une Application protégée, le contrôle d’accès au niveau de l’application restreint qui peut passer la couche d’authentification Logto et atteindre le serveur d’origine protégé.

Les règles d’authentification de l’Application protégée déterminent toujours quelles routes nécessitent une authentification. Le contrôle d’accès au niveau de l’application détermine quels utilisateurs Logto authentifiés sont autorisés à accéder à l’application protégée.

Bonnes pratiques

  • Commencez par des règles de rôle d’utilisateur ou de rôle d’organisation lorsque c’est possible. Elles sont plus faciles à maintenir que de longues listes d’utilisateurs individuels.
  • Utilisez des règles d’organisation lorsque tous les membres d’une organisation doivent accéder à l’application.
  • Utilisez des règles de rôle d’organisation lorsque seuls certains membres d’une organisation doivent accéder à l’application.
  • Révisez les règles d’accès lorsque les utilisateurs changent de rôle, rejoignent ou quittent des organisations.
  • Gardez les permissions RBAC et le contrôle d’accès au niveau de l’application séparés dans votre modèle mental : le contrôle d’accès au niveau de l’application répond à "Cet utilisateur peut-il accéder à cette application ?", tandis que le RBAC répond à "Que peut faire cet utilisateur après avoir accédé aux API ou aux fonctionnalités d’organisation ?"