Persönliche API-Schlüssel für Werkzeuge
Diese Seite richtet sich an App-Entwickler, die Zugangsdaten für ihre eigene Arbeit rund um eine App brauchen: einen Entwicklungs-Build, einen automatisierten Test, ein Backend, einen Inhaltsimport, einen Kiosk. Ein persönlicher API-Schlüssel ist dafür die einfachste Form von Zugangsdaten, die Exponential bietet. Die vollständige Anleitung ist Persönliche API-Schlüssel.
Inhalt
- Was ein Schlüssel ist
- Einen Schlüssel erhalten
- Geltungsbereiche
- Grenzen
- Austauschen und widerrufen
- Wo Schlüssel hingehören
Was ein Schlüssel ist
Ein Schlüssel ist eine Zeichenkette expk_<12 characters>_<40 characters>, die ein Benutzer für ein eigenes Programm
erzeugt. Eine Anfrage mit Authorization: Bearer expk_... läuft als Inhaber des Schlüssels, beschränkt auf die
Geltungsbereiche des Schlüssels und nie über die eigenen Richtlinien des Inhabers hinaus. Gespeichert wird nur ein
gesalzener HMAC des Geheimnisses, sodass niemand, nicht einmal ein Administrator, einen Schlüssel erneut anzeigen kann
(Kurz gesagt). Schlüssel werden von der REST-API angenommen, nicht von den
Remote-Diensten, die eigene Tokens haben (expservices-Tokens in Apps).
Einen Schlüssel erhalten
- Sie brauchen ein Konto mit der Richtlinie
apikey/create; in einer neuen Installation hat keine Rolle sie, also vergibt sie ein Administrator (Schlüssel für Ihre Benutzer einschalten). - Melden Sie sich an der Website an und öffnen Sie Mein Konto > API-Zugang (
/apikey/list). - Benennen Sie den Schlüssel nach dem Ort, an dem er verwendet wird („Android-CI-Tests“), kreuzen Sie die Geltungsbereiche an und wählen Sie eine Laufzeit (standardmäßig 7, 30, 90 oder 365 Tage).
- Kopieren Sie den Schlüssel von der nächsten Seite. Er wird einmal angezeigt, mit
Cache-Control: no-store.
Geltungsbereiche
| Geltungsbereich | Steht für | Erlaubt dem Schlüssel den Aufruf von |
|---|---|---|
read | content/read | jeder GET- und HEAD-Route |
publish | content/create | POST /api/ezp/v2/content/node/create |
edit | content/edit | POST oder PUT /api/ezp/v2/content/node/<id> (aktualisieren) |
remove | content/remove | DELETE /api/ezp/v2/content/node/delete/<id> |
Die Zuordnung steht in rest.ini [ApiKeySettings] Scopes[] und RouteScopes[]. Ein Test, der nur liest, bekommt nur
read.
Grenzen
| Einstellung | Standard | Wirkung für Ihr Werkzeug |
|---|---|---|
RateLimitPerMinute | 120 | mehr Anfragen je Schlüssel und Minute antworten mit 429 rate_limited und Retry-After; gezählt in APCu je PHP-FPM-Pool oder Velocity-Server |
MaxExpiryDays | 365 | die längste Laufzeit |
MaxKeysPerUser | 10 | noch gültige Schlüssel je Benutzer |
LastUsedInterval | 60 | wie oft „zuletzt benutzt“ geschrieben wird, in Sekunden |
Ein Lasttest oder ein Massenimport muss unter dem Ratenlimit bleiben oder mit Zustimmung des Administrators die Schlüssel mehrerer Benutzer verwenden (Prüfprotokoll und Grenzen).
Austauschen und widerrufen
Erzeugen Sie zuerst den neuen Schlüssel, stellen Sie das Werkzeug darauf um, prüfen Sie, dass sein Feld
Zuletzt benutzt gefüllt wird, und widerrufen Sie dann den alten. Widerrufen Sie sofort, wenn jemand anderes einen
Schlüssel gesehen haben könnte, wenn das Werkzeug stillgelegt wird oder wenn die Maschine, auf der er lag, verloren
geht. Der Widerruf wirkt bei der nächsten Anfrage auf jedem Server. Administratoren sehen jeden Schlüssel unter
Setup > oAuth-Verwaltung > API-Schlüssel (/oauthadmin/keys), und jedes Erzeugen, Widerrufen, jede erste Nutzung
und jede Ablehnung wird im Prüfprotokoll als access.apikey.* festgehalten.
Wo Schlüssel hingehören
| Ort | Schlüssel? |
|---|---|
| Die Shell eines Entwicklers, als Umgebungsvariable | ja |
| Ein Geheimnisspeicher der CI | ja |
| Der Geheimnisspeicher eines Backends | ja |
| Ein verwaltetes Kiosk-Gerät mit einem eigenen Schlüssel nur zum Lesen | ja, nach Entscheidung des Website-Inhabers |
| Eine veröffentlichte App, in Code, Ressourcen oder Konfiguration | nein: Jeder kann ihn herauslösen, und er handelt als eine Person |
| Eine URL | nein: Ein Schlüssel im Query-String wird abgelehnt, selbst wenn er gültig ist |
Verwandte Seiten
- Zugangsdaten auswählen
- Geheimnisse auf Geräten speichern
- Persönliche API-Schlüssel: Fehlerbehebung
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.