OAuth-Token für Plattformservices verwenden
Der von Identitätsdomains bereitgestellte Tokenservice OAuth 2.0 ist ein Mechanismus, mit dem Sie ein gesichertes Token für den Zugriff auf die REST-Endpunkte von Oracle Cloud Platform Services (PaaS) verwenden können.
-
Um auf einen Cloud-Plattformservice zuzugreifen, der in Identitätsdomains integriert ist, benötigen Sie die Identitätsdomain-URL. Wenn Sie die Identitätsdomain-URL nicht kennen, finden Sie weitere Informationen unter Identitätsdomain-URL suchen.
-
In der Prozedur werden cURL-Beispiele verwendet, um ein Zugriffstoken aus Identitätsdomains abzurufen, und dann mit dem Token auf einen Cloud-Plattformservice-REST-Endpunkt zuzugreifen.
Ein OAuth-Zugriffstoken hat einen Ablaufwert von 86.400 Sekunden (24 Stunden). Um REST-API-Anforderungen 24 Stunden nach dem Abrufen eines Zugriffstokens auszuführen, müssen Sie ein neues Token abrufen.
Voraussetzungen
Rufen Sie die folgenden Informationen aus der Identitätsdomain ab, bevor Sie beginnen.
- Identitätsdomain-URL
- Client-ID
- Client Secret
- Primäre Zielgruppe - URL
- Zulässiger Geltungsbereich
-
Melden Sie sich beim Dashboard Meine Services für Ihre Identitätsdomain an.
Hinweis
Sie benötigen entweder die Rolle des Identitätsdomainadministrators oder die Rolle des PaaS-Administrators, um die Schritte in diesem Verfahren auszuführen. -
Suchen Sie in der Liste der Services den Eintrag für die Identitätsdomain, und wählen Sie Identity Cloud aus.
-
Suchen Sie auf der Registerkarte Überblick den Abschnitt Serviceinstanzen, und kopieren Sie den Wert, der im Feld Serviceinstanz-URL angezeigt wird.
Beispiel:
https://<domainURL>.identity.oraclecloud.com/ui/v1/adminconsole
Dabei ist
<domainURL>
der REST-Serverteil der Identitätsdomain-URL (der Teil der Endpunkt-URL zum Anfordern eines Zugriffstokens ist). -
Wählen Sie Servicekonsole öffnen aus, blenden Sie das Drawer für Navigation ein, und wählen Sie Anwendungen aus.
-
Geben Sie im Suchfeld
PSM
ein, und wählen Sie dann das Suchsymbol aus. Suchen Sie in den Ergebnissen nach dem Eintrag mit dem Titel PSM-App für API-Unterstützung OAuth.Hinweis
Die Platform Service Manager-App (PSMApp) ist für Oracle Cloud-Accounts, die vor 18.1.4 erstellt wurden, nicht verfügbar. -
Wählen Sie den Namen der Anwendung mit dem Titel PSM-App für API-Unterstützung OAuth aus. Der Name hat das Format
PSMApp-cacct-string-of-letters-and-numbers.
.Beispiel:
PSMApp-cacct-9z8x7c6v5b4n3m
Dies ist die vertrauenswürdige PSM-Clientanwendung der Identitätsdomain, die automatisch für Oracle Cloud-Accounts (nach 18.1.4) erstellt und mit Oracle Cloud Platform Service verknüpft wird.
-
Wählen Sie Konfiguration. Kopieren Sie unter Allgemeine Informationen den im Feld Client-ID angezeigten Wert.
Dies ist die Client-ID PSMApp. Beispiel:
PSMApp-cacct-9z8x7c6v5b4n3m_APPID
-
Wählen Sie Secret anzeigen aus, und kopieren Sie den Wert.
Dies ist das Client Secret PSMApp. Beispiel:
c53b437-1768-4cb6-911e-1e6eg2g3543
-
Blenden Sie Ressourcen ein. Kopieren Sie den Wert, der im Feld Primäre Zielgruppe angezeigt wird.
Dies ist die URL der primären Zielgruppe PSMApp. Beispiel:
https://psm-cacct-9z8x7c6v5b4n3m.console.oraclecloud.com
-
Kopieren Sie im Abschnitt Zulässige Geltungsbereiche den Wert Geltungsbereich für die 1PaaS-Berechtigung.
urn:opc:resource:consumer::all
Zugriffstoken OAuth abrufen
Verwenden Sie mit den gesammelten Informationen den REST-API-Endpunkt /oauth2/v1/token
der Identitätsdomains, um ein Token abzurufen.
curl -k
-X POST -u "client-id:client-secret"
-d "grant_type=password&username=yourusername&password=yourpassword&scope=https://primary-audience-and-scope" "https://identity-cloud-service-instance-url/oauth2/v1/token"
Dabei gilt Folgendes:
-
client-id
ist die PSMApp-Client-ID. -
client-secret
ist das PSMApp-Client Secret. -
yourusername
ist der Benutzername für den Cloud-Plattformservice mit einer Administratorrolle. -
yourpassword
ist das Kennwort für den Benutzernamen. -
primary-audience-and-scope
ist eine Verkettung der primären Zielgruppen-URL PSMApp und des 1PaaS-Berechtigungsbereichs. -
identity-cloud-service-instance-url
ist der REST-Serverteil der Identitätsdomain-URL
Beispiel:
curl -k
-X POST -u "PSMApp-cacct-9z8x7c6v5b4n3m_APPID:c53b437-1768-4cb6-911e-1e6eg2g3543"
-d "grant_type=password&username=yourusername&password=yourpassword&scope=https://psm-cacct-9z8x7c6v5b4n3m.console.oraclecloud.comurn:opc:resource:consumer::all" "https://<domainURL>.identity.oraclecloud.com/oauth2/v1/token"
Im Folgenden finden Sie ein Beispiel für die zurückgegebene Antwort.
{
"access_token": "eyJ7NXQ...fMf46Q0yKopDxQ",
"token_type": "Bearer",
"expires_in": 86400
}
Die Tokenzeichenfolge wird in der Beispielantwort abgeschnitten. Kopieren Sie die gesamte Tokenzeichenfolge (innerhalb der Anführungszeichen), wie in der Antwort gezeigt.
Zugriffstoken OAuth in REST-API-Anforderungen für Cloud Platform Service verwenden
Nachdem Sie ein OAuth 2.0-Zugriffstoken abgerufen haben, geben Sie das Token in einem Bearer-Token-Header der REST-Anforderung des Cloud-Plattformservice an.
curl -i
-X GET
-H "Authorization: Bearer token-string" "https://primary-audience/rest-endpoint-path"
Dabei gilt Folgendes:
-
token-string
ist das Zugriffstoken OAuth, das Sie abgerufen haben. -
primary-audience
ist die URL der primären PSMApp-Zielgruppe. -
rest-endpoint-path
ist der relative Pfad, der die REST-Ressource für den Cloud-Plattformservice definiert. Beachten Sie, dass die Identitätsdomain-ID im Pfad verwendet werden kann.
curl -i -X GET
-H "Authorization: Bearer eyJ7NXQ...fMf46Q0yKopDxQ" "https://psm-cacct-9z8x7c6v5b4n3m.console.oraclecloud.com/paas/api/v1.1/instancemgmt/idcs-9a888b7e6ebb44b4b65/services/jaas/instances"