Scopes und Benutzerlevel eines API-Schlüssels über die API abrufen

Ich wollte das als Feature-Anfrage posten, dachte mir aber, ich sollte erst einmal bestätigen, dass es das nicht bereits gibt, bevor ich das tue.

Bietet Discourse eine Route, die verwendet werden kann, um die Scopes und das Benutzerlevel eines bestimmten API-Schlüssels abzurufen? Ziel ist es, zu bestätigen, dass ein einem externen Dienst bereitgestellter API-Schlüssel über ausreichende Berechtigungen verfügt, aber keine übermäßig breiten Berechtigungen hat.

Bearbeitung: Nach einiger Recherche ist das, wonach ich hier frage, ein „Key-Info-Endpunkt“. Dieser Endpunkt ermöglicht es Clients normalerweise, Details zu dem API-Schlüssel abzufragen, den sie verwenden. Dies kann umfassen:

  • Scopes
  • Benutzerlevel
  • Gültigkeit
  • Nutzungsstatistiken

Im Hinblick auf die Discourse-API wären Informationen über Scopes und Benutzerlevel nützlich. Discourse-API-Schlüssel haben kein Ablaufdatum. Wenn der Schlüssel also verwendet werden kann, um auf den Key-Info-Endpunkt zuzugreifen, kann davon ausgegangen werden, dass er gültig ist.

Ich vermute, dieses Thema sollte als Feature-Anfrage umgeschrieben werden. Mir ist nichts dergleichen wie ein „Key-Info-Endpunkt“ für die Discourse-API bekannt. Ein allgemeiner Anwendungsfall wäre für einen Dienst, der Apps erstellt, die sich mit der Discourse-API verbinden. Ein spezifisches Beispiel, wo es jetzt nützlich sein könnte, wäre, wenn die Discourse Zapier-Integration um einige weitere Action-Hooks erweitert würde. Die Art der durchführbaren Aktionen würde von den Scopes des an Zapier bereitgestellten API-Schlüssels abhängen. Um dies jetzt zu umgehen, wäre es verlockend, Benutzer aufzufordern, einen globalen API-Schlüssel bereitzustellen. Dies würde gegen das Prinzip der geringsten Privilegien verstoßen.

5 „Gefällt mir“