Verwendung eines Refresh-Tokens

Der Refresh-Token-Ablauf ist eine sicherere Methode zur Autorisierung von API-Anfragen. Anstatt langlebige Zugangsdaten direkt zu verwenden, tauschen Sie ein Refresh-Token gegen ein kurzlebiges Access-Token aus. Sobald dieses Access-Token abläuft, wiederholen Sie den Austausch.

Beachten Sie, dass das Refresh-Token nicht allein zur Autorisierung von API-Anfragen verwendet werden kann; es muss immer zuerst gegen ein Refresh-Token ausgetauscht werden.

Um diesen Ablauf zu verwenden, wählen Sie beim Erstellen eines Tokens in Admin → Developer die Option refresh token. Bei der Erstellung erhalten Sie drei Werte:

  • Client ID – identifiziert Ihre Integration

  • Client secret – authentifiziert die Austauschanfrage

  • Refresh token – wird zum Abrufen von Access-Tokens verwendet

These credentials are shown once. Kopieren Sie alle drei Werte und bewahren Sie sie sicher auf – Altium speichert sie nicht und kann sie nach dem Verlassen der Erstellungsseite nicht erneut anzeigen. Behandeln Sie das Refresh-Token und das Client-Secret wie Passwörter.

Austauschen eines Refresh-Tokens gegen ein Access-Token

Senden Sie eine POST-Anfrage an den Token-Endpunkt von Altium Identity.

Token Endpoint

Realm

URL

Altium 365

https://auth.altium.com/connect/token

Altium 365 Gov Cloud

https://auth.365-gov.altium.com/connect/token

Request Body (application/x-www-form-urlencoded)

grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}

Response

{
  "access_token": "...",
  "expires_in": 14400,
  "token_type": "Bearer",
  "refresh_token": "...",
  "scope": "..."
}

Verwenden Sie das access_token aus der Antwort, um API-Anfragen zu autorisieren. expires_in wird in Sekunden angegeben und gibt an, wie lange das Access-Token gültig ist.

curl Example:

curl -X POST https://auth.altium.com/connect/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=refresh_token" \
  --data-urlencode "refresh_token={refresh-token}" \
  --data-urlencode "client_id={client-id}" \
  --data-urlencode "client_secret={client-secret}"

Integration in Ihre Anwendung

Ein typisches Vorgehen für dauerhaft laufende Integrationen:

  1. Speichern Sie das Refresh-Token, die Client-ID und das Client-Secret sicher (z. B. in Umgebungsvariablen oder einem Secrets-Manager).

  2. Rufen Sie beim Start den Token-Endpunkt auf, um ein neues Access-Token abzurufen.

  3. Verwenden Sie das Access-Token für API-Anfragen. Speichern Sie es bis zu seinem Ablauf im Cache.

  4. Wenn es abläuft (HTTP-Status 401 Unauthorized oder 200 OK mit dem Fehlercode AuthExpiredToken in der GraphQL-Antwort), tauschen Sie das Refresh-Token erneut aus, um ein neues Access-Token zu erhalten.

Refresh-Tokens laufen nach der bei der Erstellung konfigurierten Gültigkeitsdauer ab (bis zu 1 Jahr). Sobald ein Refresh-Token abgelaufen ist, müssen Sie unter Admin → Developer ein neues erstellen.

Siehe auch

 

AI-LocalizedKI-lokalisiert
Wenn Sie ein Problem feststellen, wählen Sie den Text/das Bild aus und drücken SieCtrl + Enter, um uns Ihr Feedback zu senden.
Contents
Contents