VMware Cloud Services-Konsole verwendet OAuth 2.0, damit Sie Ihren Anwendungen sicheren, delegierten Zugriff auf die geschützten Ressourcen in Ihrer Organisation ermöglichen können. VMware Cloud Services unterstützt den Zugriff auf Anwendungen über das Web, wobei Benutzer Ihrer App den Zugriff autorisieren, sowie Server-zu-Server-Interaktionen, bei denen Zugriffstoken direkt an Ihre App ausgegeben werden.
Was ist OAuth 2.0
OAuth 2.0 ist ein Autorisierungsprotokoll, mit dem Sie Ihren Apps einen sicheren Zugriff auf Ihre Ressourcen gewähren können. Ihr Client ist über ein Zugriffstoken autorisiert. Das Zugriffstoken hat einen Geltungsbereich, der definiert, auf welche Ressourcen das Token zugreifen kann. Informationen zu OAuth 2.0 finden Sie in der OAuth-Spezifikation unter https://tools.ietf.org/html/rfc6749#page-8 oder im Blog mit dem Namen OAuth 2.0 Simplified unter https://aaronparecki.com/oauth-2-simplified/.
Wie funktioniert OAuth 2.0 mit VMware Cloud Services
VMware Cloud services deckt verschiedene Anwendungsfälle für App-Autorisierungen ab, die verschiedene Gewährungstypen nutzen, wie etwa client credentials, authorization code und public client mit authorization code. Abhängig von Ihren Zielen wählen Sie eine von drei OAuth-App-Typen aus, die jedem der Gewährungstypen entsprechen: Server-zu-Server-App, Web-App und Native/Mobile App.
Nehmen wir an, Sie sind ein Organisationsbesitzer mit Zugriff auf VMware Cloud on AWS. Sie haben eine App entwickelt, die Sie beim Aktienhandel unterstützt. Sie rufen die App Trading 1.0 auf. Sie möchten die App auf virtuellen Maschinen ausführen, die von einem vCenter Server verwaltet werden, aber zuerst müssen Sie Ihre App mit den VMware Cloud on AWS-APIs autorisieren.
- Sie erstellen eine OAuth 2.0-App in der Cloud Services-Konsole. Betrachten Sie dies als eine Methode für die Registrierung Ihrer Trading 1.0-App. Sie initiieren die App-Erstellung, indem Sie im Menü Organisation > OAuth-Apps auf App erstellen klicken und eine Reihe von Schritten ausführen. Am Ende des Vorgangs stellen wir Clientanmeldedaten in Form einer App-ID und eines geheimen App-Schlüssels aus, die dazu dienen, Ihren Client mit den APIs zu identifizieren. Sie fügen diese Anmeldedaten in Ihr Skript ein.
- Ihre App wurde in der Organisation erstellt, hat aber noch keinen Zugriff auf die Organisation erhalten. Sie gewähren Zugriff, indem Sie ihn der Organisation hinzufügen. Auf diese Weise kann die App auf die Dienste und Ressourcen in der Organisation zugreifen, die Sie beim Erstellen der App definiert haben. Dieser Schritt ist nur für Apps erforderlich, die den Typ „Server-zu-Server-App“ aufweisen. Er gilt nicht für Web-Apps und native/mobile Apps.
- Wenn Sie Ihre Trading 1.0-Client-App ausführen, fordert diese ein Zugriffstoken vom Autorisierungsserver an. Wenn autorisiert, sendet der Autorisierungsserver ein Zugriffstoken an die APIs, und Ihrem Client wird der Zugriff gewährt.
Wer kann OAuth-Apps erstellen und verwalten?
Als Benutzer mit der Rolle Organisationsbesitzer oder Organisationsmitglied und der Rolle Entwickler erstellen und verwalten Sie Ihre OAuth-Apps.
Sie können auch die OAuth-Apps verwalten, die von anderen Organisationsbesitzern in Ihrer Organisation erstellt oder hinzugefügt wurden.
Kann ich einen geheimen App-Schlüssel generieren?
Ja, als Organisationsbesitzer können Sie den geheimen App-Schlüssel einer OAuth-App in Ihrer Organisation neu erzeugen. Dies ist nützlich, wenn der Organisationsbesitzer, der die OAuth-App erstellt hat, nicht mehr in Ihrem Unternehmen tätig ist und Sie die App weiterhin ausführen möchten.
Kann ich anstelle einer OAuth-App eine API-Token-Authentifizierung verwenden?
Ja, wenn eine API vorschreibt, dass ein Benutzer die authentifizierte Einheit im Autorisierungsvorgang ist, müssen Sie stattdessen ein API-Token verwenden. Informationen dazu, wann OAuth-Apps oder API-Token verwendet werden müssen, finden Sie unter Worin besteht der Unterschied zwischen OAuth-Apps und API-Token?