Authentifizierung
In der Frame.io V4-API wird der Adobe Identity Management Service (IMS) genutzt, die OAuth-2.0-Identitätsplattform von Adobe.Es gibt zwei Kategorien der Authentifizierung:
Ermöglicht es technischen oder Dienstkonto-Benutzenden, Aktionen ohne Benutzendeninteraktion durchzuführen.Nur für Frame.io V4-Konten verfügbar, die über die Adobe Admin Console verwaltet werden.
Agiert als der Benutzer bzw. die Benutzerin, dessen bzw. deren Token es ist.Verfügbar für alle Frame.io V4-Konten, die über die Adobe Admin Console verwaltet werden, sowie für Frame-verwaltete Konten, die zur Adobe-Authentifizierung gewechselt haben.
SDK-Authentifizierungsleitfaden
Der gesamte OAuth-Lebenszyklus wird von den Frame.io SDKs übernommen – von Autorisierungs-URLs über Tokenaustausch und automatische Aktualisierung bis hin zum Widerruf. Wählen Sie Ihre Sprache, um zu beginnen:
ServerToServerAuth, WebAppAuth und SPAAuth mit Unterstützung für synchron und asynchron.
Authentifizierung von ServerToServerAuth, WebAppAuth, SPAAuth und NativeApp für Node.js und Browserumgebungen.
Wenn Sie einen Backend-Service oder eine Automatisierungslösung entwickeln, beginnen Sie mit der Server-zu-Server-Kommunikation. Wenn Benutzende sich bei Ihrer App anmelden, wählen Sie Web-App (falls Sie einen Clientschlüssel speichern können) oder SPA (falls dies nicht möglich ist).
Benutzendenauthentifizierung
Authentifizierung für Benutzende werden in der Adobe Developer Console erstellt.In Adobe werden drei Arten von Anmeldedaten unterstützt; wählen Sie die, die zu Ihrer Anwendungsarchitektur passt:
Für serverseitige Anwendungen, in denen ein Clientschlüssel sicher gespeichert werden kann (Flask, Django, FastAPI, Express usw.).
Für browserbasierte Anwendungen, CLIs oder Desktop-Anwendungen, in denen kein Clientschlüssel gespeichert werden kann.Verwendet PKCE.
Für native mobile oder Desktop-Anwendungen, bei denen selbstdefinierte Umleitungen nach dem URI-Schema verwendet werden.
Das Python-SDK in Frame.io enthält keine Native App-Anmeldedatenklasse, da Python keine Standardmethode zur Registrierung selbstdefinierter URI-Schema-Handler hat.Verwenden Sie stattdessen Web App mit einem lokalen Rückrufserver.In TypeScript SDK werden alle drei Arten von Anmeldedaten unterstützt.
Server-zu-Server-Authentifizierung
Mit der Server-zu-Server-Authentifizierung kann Ihre Anwendung als Dienstkonto-User agieren, ohne menschliche Beteiligung.Ihre Anwendung wird mit Client-Anmeldedaten authentifiziert und erhält direkt einen Zugriffstoken.Dienstkontoaktionen sind in Frame.io unter dem Namen des Dienstkontos sichtbar.Der Zugriff auf Dienstkonten wird über die Adobe Admin Console und Developer Console verwaltet.Der Name des Dienstkontos kann derzeit nicht angepasst werden.Details zur Implementierung finden Sie in den SDK-spezifischen Leitfäden weiter oben.
Weitere Informationen zum Einrichten des Dienstkontos finden Sie unter Automatisieren Ihres Setups mit der Server-zu-Server-Unterstützung von Frame.io.
So funktioniert die Adobe IMS-Authentifizierung
Adobe Identity Management Service (IMS) basiert auf Adobe OAuth 2.0 und ist eine Identity Management-Funktion zur Unterstützung der Authentifizierung.Für die Generierung des Zugriffstokens sind zwei Schritte erforderlich:
Benutzendenautorisierung
Zuerst autorisieren Benutzende die Anwendung, bevor ein Token generiert wird.Details dazu finden Sie hier.
Tokenaustausch
Holen Sie sich als Nächstes den Zugriffstoken.Durch den oben genannten Schritt wird im Antwortfließtext ein Code zurückgegeben, der für diesen Schritt benötigt wird.Die genauen Endpunkte für den Zugriff und die zu verwendenden Parameter finden Sie hier.
Die obigen Schritte sind für alle drei Arten von App-Anmeldedaten erforderlich.Es gibt Unterschiede in der Art und Weise, wie auf die IMS-Endpunkte /authorize/v2 und /token/v3 zugegriffen wird, um den Token zu erhalten.Sobald Sie den Zugriffstoken haben, können Sie mit der Frame.io V4-API interagieren.
Bei der Server-zu-Server-Authentifizierung gibt es keinen Benutzendenautorisierungsschritt. Die Client-Anmeldedaten werden direkt verwendet, um über den client_credentials-Grant einen Zugriffstoken zu erhalten.
Verwenden des Zugriffstokens
Sobald Sie einen Zugriffstoken haben, fügen Sie ihn bei jeder API-Anfrage in den Authorization-Header ein:
Dies wird von den Frame.io SDKs übernommen. Geben Sie beim Erstellen des Clients einfach den Token (oder eine aufrufbare Funktion, durch die ein Token bereitgestellt wird) weiter.
Token-TTL
Zugriffstoken sind kurzlebig. In der Regel laufen sie nach einer Stunde ab.Für Benutzendenauthentifizierungsflüsse (Web App, SPA, Native App) gibt es von Adobe IMS auch einen Aktualisierungstoken, mit dem ein neuer Zugriffstoken bezogen werden kann, ohne dass sich Benutzende erneut anmelden müssen.Aktualisierungstoken sind langlebiger, laufen aber ebenfalls irgendwann ab.
Für die Server-zu-Server-Authentifizierung gibt es keine Aktualisierungstoken.Die Client-Anmeldedaten selbst laufen nie ab (außer bei manueller Rotation), sodass über die Anwendung jederzeit ein neuer Zugriffstoken angefordert werden kann.
In den Frame.io SDKs wird die Tokenaktualisierung automatisch verarbeitet. Weitere Informationen dazu finden Sie in den SDK-spezifischen Leitfäden.
Gültigkeitsbereiche
Beim Erstellen von Anmeldedaten in der Adobe Developer Console konfigurieren Sie OAuth-Gültigkeitsbereiche, mit denen bestimmt wird, worauf Ihre Anwendung zugreifen kann.In den Frame.io SDKs werden die folgenden standardmäßigen Gültigkeitsbereiche verwendet:
Für Benutzendenauthentifizierungsflüsse ist der Gültigkeitsbereich offline_access erforderlich, um einen Aktualisierungstoken zu erhalten.Ohne diesen erhalten Sie nur einen Zugriffstoken, und Benutzende müssen sich erneut authentifizieren, wenn er abläuft.
Ältere Entwicklungstoken
Bei V4-migrierten Konten, die noch nicht über die Adobe Admin Console verwaltet werden, können Sie weiterhin ältere Entwicklungstoken verwenden, die auf der Frame.io-Entwickelnden-Website verwaltet werden.Übergeben Sie den Token direkt an das SDK:
Wenn Sie einen älteren Entwicklungstoken mit der V4-API verwenden, müssen Sie zu allen API-Anfragen den Header x-frameio-legacy-token-auth mit dem Wert true hinzufügen.Wenn Sie das SDK verwenden, stellen Sie es über die Anfrageoptionen des Clients ein.
Ältere Entwicklungstoken laufen nicht ab, sind jedoch ein Übergangsmechanismus.Für neue Integrationen und Produktionskapazität empfehlen wir die Verwendung einen der unten stehenden OAuth-2.0-Flüsse.Weitere Details finden Sie im Migrationsleitfaden.
Wenn Sie Enterprise-Kunde bzw. -Kundin sind, der bzw. die von Frame.io Legacy zu V4 migriert, wenden Sie sich an das Customer Success Management, um Hilfe bei der Einrichtung mit dem älteren Entwicklungstoken und V4 zu erhalten.
Details zum Übergang von älteren Token zur Adobe IMS-Authentifizierung finden Sie im Migrationsleitfaden.