Pourquoi une suspension temporaire peut laisser un accès actif
Lorsque vous devez mettre une intégration en pause rapidement, le réflexe est de la suspendre ou de la désinstaller. Cela règle le côté installation. Cela ne règle pas automatiquement le côté autorisation, qui est une autorisation différente avec un propriétaire différent.
Suspendre une GitHub App installée bloque temporairement l’accès aux ressources détenues par ce compte d’installation. Source
Cette distinction est importante car une GitHub App peut détenir deux types d’accès à la fois : l’accès d’installation aux ressources d’un compte, et l’autorisation utilisateur pour agir au nom d’une personne. Mettre l’un en pause ne met pas l’autre en pause.
La suspension ne supprime pas l’autorisation distincte permettant à une application d’agir au nom d’un utilisateur. Source
Accès d’installation et autorisation utilisateur
Utilisez ce tableau pour décider quelle surface vous devez réellement modifier.
| Ce que vous voulez arrêter | Surface à vérifier | Ce que fait la suspension | Ce qu’elle ne fait pas |
|---|---|---|---|
| L’accès de l’application aux ressources détenues par le compte installateur | L’installation sur ce compte | Bloque temporairement l’accès de cette installation | Supprimer l’autorisation utilisateur |
| L’action de l’application au nom d’une personne | Applications GitHub autorisées pour cet utilisateur | Rien en soi | Arrêter l’autorisation au niveau utilisateur |
| Les deux, pour un compte | Les deux surfaces | Couvre uniquement le côté installation | Laisse l’autre autorisation en place |
Une GitHub App n’est pas une session de navigateur active dont vous pouvez simplement vous déconnecter. Suspendre une installation est un contrôle au niveau du compte sur les ressources ; la désautorisation est un contrôle au niveau de l’utilisateur sur l’action déléguée. Ils sont gérés séparément et doivent être vérifiés séparément.
Liste de contrôle pratique pour un arrêt temporaire
- Nommez d’abord l’objectif. Décidez si vous mettez en pause l’accès de l’application aux ressources d’un compte, si vous l’empêchez d’agir au nom d’un utilisateur, ou les deux. La réponse détermine la surface à modifier.
- Gérez l’installation. Suspendez l’installation sur le compte qui détient les ressources à protéger. Considérez cela comme temporaire et réversible.
- Vérifiez le côté utilisateur séparément. Si l’application était autorisée à agir en votre nom et que vous voulez que cela cesse, allez dans Applications GitHub autorisées et désautorisez-la à cet endroit. Ne supposez pas que la suspension a couvert cela.
- Notez ce que vous avez modifié et où. Indiquez l’installation de quel compte vous avez suspendue et quelle autorisation utilisateur, le cas échéant, vous avez supprimée. Cela évite qu’un nettoyage ultérieur n’en oublie une des deux.
- Annulez délibérément. Si la pause était temporaire, réactivez l’installation seulement après avoir confirmé si l’autorisation utilisateur doit aussi être restaurée.
La désinstallation est plus forte que la suspension, mais reste limitée
Si une pause temporaire ne suffit pas et que vous voulez supprimer l’installation, la désinstallation est l’action la plus forte côté installation. Elle n’atteint toujours pas l’autorisation utilisateur par elle-même.
La désinstallation supprime l’accès d’installation de ce compte ; la désautorisation dans Applications GitHub autorisées est une action distincte lorsque le propriétaire veut empêcher l’application d’agir en son nom. Source
Conséquence pratique : après une désinstallation, vérifiez Applications GitHub autorisées si le propriétaire veut aussi que l’application cesse d’agir en son nom. Supprimer une connexion ne prouve pas que l’autre a disparu, et une application qui n’apparaît plus à un endroit peut encore détenir l’autre autorisation.
Erreurs courantes
- Croire que la suspension est une révocation complète. Elle bloque uniquement l’accès aux ressources de l’installation. L’autorisation utilisateur subsiste jusqu’à ce que vous vous en occupiez.
- Confondre désautorisation et désinstallation. La désautorisation empêche l’application d’agir en votre nom, mais l’installation sur un compte peut rester. Décidez laquelle votre arrêt nécessite réellement.
- Nettoyer un compte et oublier l’autre. Les installations appartiennent aux comptes ; les autorisations appartiennent aux utilisateurs. Un plan d’arrêt qui ne nomme qu’une seule surface laissera généralement l’autre intacte.
- Réactiver trop tôt. Si vous avez suspendu plutôt que désinstallé, restaurer l’installation peut rétablir l’accès aux ressources avant que vous n’ayez examiné le côté utilisateur.
Vérifier les deux surfaces avant de conclure
Un arrêt n’est complet que lorsque chaque surface que vous vouliez modifier a été vérifiée selon ses propres termes. Confirmez l’état de l’installation sur le compte propriétaire, puis confirmez l’état de l’autorisation dans Applications GitHub autorisées pour l’utilisateur concerné. N’inférez pas l’un de l’autre, et ne décrivez pas l’application comme déconnectée — ce n’était jamais une session de navigateur.
Si votre prochaine tâche consiste à supprimer une ancienne autorisation OAuth et que vous voulez la garder distincte des sessions de connexion, le guide associé sur révoquer une ancienne application OAuth GitHub sans la confondre avec une session de connexion couvre cette étape de nettoyage différente.