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.

Hinweis

  • 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
  1. 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.
  2. Suchen Sie in der Liste der Services den Eintrag für die Identitätsdomain, und wählen Sie Identity Cloud aus.

  3. 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).

  4. Wählen Sie Servicekonsole öffnen aus, blenden Sie das Drawer für Navigation ein, und wählen Sie Anwendungen aus.

  5. 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.
  6. 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.

  7. 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

  8. Wählen Sie Secret anzeigen aus, und kopieren Sie den Wert.

    Dies ist das Client Secret PSMApp. Beispiel:

    c53b437-1768-4cb6-911e-1e6eg2g3543

  9. 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

  10. 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
}
Hinweis

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.

Beispiel: Der folgende cURL-Befehl ruft alle Oracle Java Cloud Service-Instanzen ab.
   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"