Skip to content

Authentifizierung

AstroAPI unterstützt mehrere Authentifizierungsmethoden, je nach Ihrem Anwendungsfall.

API-Schlüssel-Authentifizierung

API-Schlüssel sind die empfohlene Methode für die Server-zu-Server-Kommunikation.

Einen API-Schlüssel erhalten

  1. Melden Sie sich im AstroAPI Dashboard an
  2. Navigieren Sie zu Einstellungen > API-Schlüssel
  3. Klicken Sie auf API-Schlüssel erstellen
  4. Konfigurieren Sie Berechtigungen und Ratenbegrenzungen
  5. Kopieren Sie den generierten Schlüssel (er wird nicht erneut angezeigt)

API-Schlüssel verwenden

Fügen Sie Ihren API-Schlüssel im X-Api-Key-Header ein:

bash
curl -X GET "https://api.astroapi.cloud/api/calc/natal" \
  -H "X-Api-Key: ak_live_xxxxxxxxxxxx"

API-Schlüssel-Berechtigungen

API-Schlüssel können auf bestimmte Berechtigungen beschränkt werden:

BerechtigungBeschreibung
calc:readZugriff auf Berechnungsendpunkte
content:readZugriff auf Inhalts-/Interpretationsendpunkte
chart:readZugriff auf Horoskop-Darstellungsendpunkte
modules:readZugriff auf gekaufte Module

Rollen

AstroAPI verwendet rollenbasierte Zugriffskontrolle innerhalb von Organisationen:

RolleBeschreibung
ownerVollständiger Zugriff auf alle Organisationsfunktionen
managerKann Benutzer, Abrechnung und Inhalte verwalten
memberGrundlegender Zugriff auf Berechnungen und Inhalte

Rollenberechtigungen

BerechtigungownermanagermemberBeschreibung
org:createOrganisation erstellen
org:readOrganisation lesen
org:updateOrganisation aktualisieren
org:users:readBenutzer lesen
org:users:createBenutzer einladen
org:users:updateBenutzer aktualisieren
org:users:deleteBenutzer entfernen
billing:readAbrechnung anzeigen
billing:manageAbrechnung verwalten
content:readInhalte lesen
content:createInhalte erstellen
content:updateInhalte aktualisieren
content:deleteInhalte löschen
content:custom-copyBenutzerdefinierte Kopien erstellen
content:restoreInhalte wiederherstellen
calc:useBerechnungsendpunkte nutzen
chart:useHoroskop-Endpunkte nutzen
modules:readModulinformationen lesen
admin:accessAdministratorzugriff

Organisationskontext

Für Mehrbenutzeranwendungen sind API-Schlüssel auf Organisationen beschränkt. Der Organisationskontext wird automatisch anhand des verwendeten API-Schlüssels angewendet.

Domain-Beschränkungen

API-Schlüssel können mit Domain-Beschränkungen konfiguriert werden, um festzulegen, welche Websites sie verwenden dürfen:

  • example.com – Exakte Domain-Übereinstimmung
  • *.example.com – Alle Subdomains
  • * – Alle Domains zulassen (nicht empfohlen)

Konfigurieren Sie Domain-Beschränkungen im Dashboard beim Erstellen oder Bearbeiten eines API-Schlüssels.

Wichtige Einschränkung

Domain-Beschränkungen schützen nur vor browserbasiertem Missbrauch. Sie basieren auf den Origin- und Referer-Headern, die Browser durchsetzen, außerhalb des Browsers (z. B. curl, Skripte, serverseitiger Code) jedoch leicht umgangen werden können.

Client-seitige vs. serverseitige Nutzung

Server-zu-Server (Empfohlen)

Verwenden Sie für Produktionsanwendungen API-Schlüssel stets auf Ihrem Backend-Server:

┌─────────────┐      ┌─────────────────┐      ┌─────────────┐
│   Browser   │ ───► │  Ihr Backend    │ ───► │  AstroAPI   │
│ (kein Key)  │      │ (API-Key hier)  │      │             │
└─────────────┘      └─────────────────┘      └─────────────┘

Dieser Ansatz:

  • Hält Ihren API-Schlüssel sicher und verborgen
  • Ermöglicht Ihnen, eine eigene Authentifizierungsschicht hinzuzufügen
  • Verhindert, dass Endbenutzer den API-Schlüssel extrahieren
  • Ermöglicht Request-Signierung und zusätzliche Sicherheitsmaßnahmen

Client-seitige / Browser-Nutzung

Wenn Sie API-Schlüssel direkt im Browser verwenden müssen (z. B. eingebettete Widgets auf statischen Websites), beachten Sie die folgenden Einschränkungen:

  • API-Schlüssel sind sichtbar im JavaScript-Quellcode und in Netzwerkanfragen
  • Jeder kann den Schlüssel von Ihrer Website extrahieren
  • Domain-Beschränkungen verhindern nur, dass andere Websites Ihren Schlüssel über JavaScript verwenden – sie verhindern nicht, dass jemand den Schlüssel kopiert und anderweitig verwendet

Für die client-seitige Nutzung empfehlen wir:

  • Domain-Beschränkungen aktivieren
  • Strenge Ratenbegrenzungen festlegen
  • Kurze Ablaufzeiten verwenden
  • Nutzung auf Anomalien überwachen

Verantwortung des Kunden

Wichtig

Sie sind für die Sicherheit und Nutzung Ihrer API-Schlüssel verantwortlich.

Alle API-Anfragen, die mit Ihrem API-Schlüssel gestellt werden, werden auf Ihr Kontingent angerechnet und Ihrem Konto in Rechnung gestellt – unabhängig davon, ob die Anfragen von Ihnen oder von jemandem gestellt wurden, der Ihren Schlüssel erhalten hat.

Wenn Sie einen API-Schlüssel in client-seitigem Code offenlegen und dieser missbraucht wird, sind Sie für die daraus resultierende Nutzung und die Kosten verantwortlich. AstroAPI kann nicht zwischen legitimen Anfragen und unbefugten Anfragen mit einem gültigen API-Schlüssel unterscheiden.

Um das Risiko zu minimieren:

  1. Verwenden Sie Server-zu-Server-Kommunikation, wann immer möglich
  2. Committen Sie niemals API-Schlüssel in die Versionsverwaltung
  3. Tauschen Sie Schlüssel sofort aus, wenn Sie vermuten, dass sie kompromittiert wurden
  4. Richten Sie Nutzungswarnungen ein, um unerwartete Spitzen zu erkennen

Sicherheitsbest Practices

  • Verwenden Sie Server-zu-Server-Kommunikation für Produktionsanwendungen
  • Legen Sie API-Schlüssel niemals in client-seitigem Code offen, sofern nicht unbedingt erforderlich
  • Tauschen Sie API-Schlüssel regelmäßig aus
  • Verwenden Sie die minimal erforderlichen Berechtigungen
  • Aktivieren Sie Domain-Beschränkungen für client-seitige Schlüssel
  • Setzen Sie angemessene Ratenbegrenzungen
  • Überwachen Sie die API-Schlüssel-Nutzung im Dashboard

AstroAPI Documentation