Obtenez les étendues et le niveau utilisateur d'une clé d'API via l'API

J’allais poster ceci comme une demande de fonctionnalité, mais j’ai pensé que je devrais confirmer que cela n’existe pas déjà avant de le faire.

Discourse fournit-il une route qui peut être utilisée pour obtenir les scopes et le niveau utilisateur d’une clé API donnée ? L’objectif ici est de confirmer qu’une clé API fournie à une application externe a des permissions suffisantes mais pas des permissions trop larges.

Edit : après quelques recherches, ce que je demande ici est un « endpoint d’informations sur la clé ». Cet endpoint permet généralement aux clients d’interroger les détails de la clé API qu’ils utilisent. Cela peut inclure :

  • scopes
  • niveau utilisateur
  • validité
  • statistiques d’utilisation

En termes d’API Discourse, les informations sur les scopes et le niveau utilisateur seraient utiles. Les clés API Discourse n’ont pas de date d’expiration, donc si la clé peut être utilisée pour accéder à l’endpoint d’informations sur la clé, on peut supposer qu’elle est valide.

Je soupçonne que ce sujet devrait être réécrit comme une demande de fonctionnalité. Je ne suis au courant d’aucun « endpoint d’informations sur la clé » pour l’API Discourse. Un cas d’utilisation général serait pour un service qui crée des applications qui se connectent à l’API Discourse. Un exemple spécifique où cela pourrait être utile maintenant serait si l’intégration Zapier de Discourse était étendue pour ajouter des hooks d’action supplémentaires. Les types d’actions qui pourraient être effectuées dépendraient des scopes de la clé API qui aurait été fournie à Zapier. Pour contourner cela maintenant, il serait tentant de demander aux utilisateurs de fournir une clé API globale. Cela irait à l’encontre du principe du moindre privilège.

5 « J'aime »