Anwendungen in Oracle Identity Cloud Service konfigurieren

Für eine ordnungsgemäße Authentifizierung müssen Sie dieselbe Oracle Identity Cloud Service-Instanz verwenden, die Ihre Oracle Fusion Applications Cloud Service - und Oracle PaaS ( Oracle Visual Builder ) - oder benutzerdefinierte HTML5-App sichert. Innerhalb von Oracle Identity Cloud Service müssen Sie eine Anwendung erstellen, die für die Clientauthentifizierung verwendet werden soll.

In diesem Szenario trennen wir die Matter von Oracle Functions plus Oracle API Gateway von der Interaktion zwischen Oracle Functions - und Oracle Fusion Applications Cloud Service-Entitys, indem sie beide mit Oracle Identity Cloud Service als separate Entitys schützen und nicht dieselbe Oracle Identity Cloud Service-Anwendung für beide verwenden.

Normalerweise führen Oracle SaaS-Erweiterungsanwendungen, die von Oracle-Kunden geschrieben werden, eine komplexe Logik durch. Beispiel: Ein gängiges Szenario ist das Abrufen von Daten aus Oracle Fusion Applications Cloud Service, das Verarbeiten dieser Daten in irgendeiner Weise und das Pushen von Daten an Oracle Fusion Applications Cloud Service an ein anderes Ziel, wie eine Datenbank.

Daher wird hier eine Architektur mit zwei Oracle Identity Cloud Service-Anwendungen dargestellt:

  • Eine Anwendung, die Ihre Oracle Functions als Ressource und als vertrauenswürdiger Client von Oracle Fusion Applications Cloud Service schützt.
  • Eine Anwendung, die Ihre Oracle Fusion Applications Cloud Service-Instanz als Ressource schützt.

Die Anweisungen in diesem Artikel führen Sie durch die Erstellung und Konfiguration der ersten Anwendung, um Oracle Functions zu schützen. Die zweite dieser beiden Anwendungen sollte bereits vorhanden sein: Sie waren erforderlich, um eine Federation zwischen Oracle Fusion Applications Cloud Service und Oracle PaaS zu erstellen und zu konfigurieren.

Mit diesem Setup können Sie verschiedene Regeln oder Policys konfigurieren, um auf Funktionen zuzugreifen, als die Regeln oder Policys, mit denen ein vertrauenswürdiger Client Oracle Fusion Applications Cloud Service erreichen kann. In dieser Konfiguration erfordert das eingehende Zugriffstoken für das API-Gateway nur einen autorisierten Zugriff auf Oracle Functions, um die Funktionsfunktion aufzurufen. Es muss jedoch nicht unbedingt dieselbe Berechtigung haben wie für den Zugriff auf die Oracle Fusion Applications Cloud Service-Instanz erforderlich. Die Oracle Visual Builder-Anwendung erfordert eine zugehörige Oracle Identity Cloud Service-Anwendung, die das Zugriffstoken generiert, um API-Gateway zu erreichen. Diese Oracle Identity Cloud Service-Anwendung ist der Client der Funktionen/API-Gateway-Ressource.

Der im Architekturdiagramm angezeigte Austausch von Token bietet eine zusätzliche Schutzebene, mit der die Identität für den Fall einer Funktion als Client einer Oracle Fusion Applications Cloud Service-Ressource propagiert wird. Dies ähnelt dem Oracle WebLogic OAuth-Assertion-Prozess mit Oracle Identity Cloud Service, das in älteren unterstützten SaaS-Erweiterungen verwendet wird, wie solche mit Oracle Java Cloud Service.

Das kann bedeuten, dass die zum Generieren des Tokens für Oracle Functions verwendete Oracle Identity Cloud Service-Anwendung in bestimmten Anwendungsfällen nur Ressourcen-Geltungsbereiche für Funktionen, aber nicht für Oracle Fusion Applications Cloud Service haben konnte. In diesem Fall kann Oracle Functions das Token nicht wiederverwenden, um Oracle Fusion Applications Cloud Service aufzurufen. Es ist jedoch gültig, um Oracle Functions zu erreichen. Sie können daher logische Abläufe implementieren, auf die einige Benutzer oder Funktionsweiterleitungen keinen Zugriff haben, während andere auf der Geschäftslogik, den Benutzerrollen und den Berechtigungen oder anderen Kriterien basieren.

In anderen Anwendungsfällen kann Oracle Functions Code aufnehmen, um ein Zugriffstoken für Oracle Fusion Applications Cloud Service mit den Zertifikaten und Benutzern anzufordern, die in der Anforderung vom API-Gateway übergeben werden.

Anwendung für Oracle Functions in Oracle Identity Cloud Service erstellen

Innerhalb von Oracle Identity Cloud Service müssen Sie eine vertrauliche Anwendung für die Oracle Functions-Clientauthentifizierung erstellen.

Erstellen Sie innerhalb derselben Oracle Identity Cloud Service-Instanz, die Sie mit Ihrer Oracle Fusion Applications Cloud Service-Instanz verbunden haben, eine vertrauliche Anwendung, und stellen Sie sicher, dass die Clientkonfiguration so eingerichtet ist, dass die Berechtigungen "Clientzugangsdaten", "JWT-Assertion" und "Ressourceneigentümer" aktiviert werden.

  1. Melden Sie sich bei Oracle Cloud My Services an, klicken Sie auf Benutzer, und klicken Sie dann auf Identity-Konsole.
  2. Wählen Sie die Registerkarte Anwendungen aus, und klicken Sie auf Hinzufügen. Klicken Sie dann auf Vertrauliche Anwendung.
  3. Geben Sie auf der Seite "Details " des Assistenten "Vertrauliche Anwendung hinzufügen " der neuen Anwendung einen Namen. Gegebenenfalls können Sie andere Werte festlegen, wie Beschreibung, Symbol, Anzeigeeinstellungen und Tags. Klicken Sie auf Weiter.
  4. Wählen Sie auf der Seite Client die Option Diese Anwendung jetzt als Client konfigurieren.
    Auf der Seite werden zusätzliche Optionen angezeigt. Legen Sie sie wie folgt fest:
    • Zulässige Berechtigungstypen: Wählen Sie Ressourceneigentümer, Clientzugangsdaten und JWT-Assertion.
    • Nicht-HTTPS-URLs zulassen aktivieren.
    • Sie benötigen keine Umleitungs-URL für diesen Anwendungsfall.
    • Clienttyp: Lassen Sie die Option "Vertraulich " aktiviert.
  5. Wählen Sie im Abschnitt Ressourcen die Option Ressourcen registrieren. Setzen Sie den Wert für die primäre Zielgruppe auf den Hostnamen der API-Gatewayinstanz, der in der Oracle Cloud Infrastructure-Konsole generiert wird, wenn Sie Ihre API-Gatway-Instanz erstellt haben.
    In Oracle Cloud Infrastructure können Sie Ihr Gateway auswählen, die Registerkarte Gateway-Informationen wählen und der Instanzhostname in der Registerkarte angezeigt wird.
  6. Klicken Sie unter "Geltungsbereiche " auf, um einen Geltungsbereich hinzuzufügen, und fügen Sie einen Wert für die Basis-URL für Ihr Deployment hinzu, das die API-Gateway-JWT-Autorisierungs-Policy verwendet. Beispiel: /saasextension.
    Mit diesem Geltungsbereich ermöglichen Sie die Anwendung den Zugriff auf Oracle Functions-Ressourcen. Bei Bedarf können Sie weitere Geltungsbereiche für zusätzliche Ressourcen hinzufügen.
  7. Sie müssen keinen Zugriff auf Admin-APIs erteilen.
  8. Klicken Sie auf Weiter, um zu der Seite Ressourcen zu gehen, und klicken Sie dann erneut auf Weiter, um zu der Seite Autorisierung zu gehen.
  9. Klicken Sie auf der Seite Autorisierung auf Fertigstellen.
    Die Benachrichtigung "Anwendung hinzugefügt " wird mit Ihrer Client-ID und Ihrem Client Secret angezeigt. Beachten Sie diese Hinweise zur späteren Verwendung. Wenn Sie die Benachrichtigung verwerfen, wird die Anwendung angezeigt.
  10. Klicken Sie rechts neben dem Anwendungsnamen auf die Schaltfläche Aktivieren.

Oracle Identity Cloud Service-Anwendung vorbereiten und testen

Konfigurieren Sie die Oracle Identity Cloud Service Confidential Application für die Verbindung mit der Anwendung, die Ihrer Oracle Fusion Applications Cloud Service-Instanz entspricht, und testen Sie dann die Anwendung.

Bei dieser Prozedur konfigurieren Sie die Ressourcen Ihrer neu erstellten Oracle Identity Cloud Service-Anwendung, um einen Geltungsbereich für Ihre Oracle Fusion Applications Cloud Service-Anwendung hinzuzufügen. Danach prüfen Sie, ob ein autorisierter Benutzeraccount aus Ihrem Oracle PaaS-System ein Token für Ihre Oracle Fusion Applications Cloud Service-Instanz erhalten kann.
  1. Melden Sie sich bei Oracle Cloud My Services an, klicken Sie auf Benutzer, und klicken Sie dann auf Identity-Konsole.
  2. Wählen Sie die Registerkarte Anwendungen aus, und suchen Sie die Anwendung, die Sie gerade für Oracle Functions erstellt haben, und wählen Sie sie aus.
  3. Bearbeiten Sie die Tokenausgabe-Policy. Autorisierte Ressourcen auf "Alle" setzen.
  4. Fügen Sie eine Ressource für Oracle Applications Cloud (Fusion) mit dem Geltungsbereich der Fusion-Anwendung hinzu (sie muss nicht geschützt sein).
  5. Stellen Sie sicher, dass Sie einen Benutzeraccount haben, der sowohl in Oracle PaaS als auch in Oracle Fusion Applications Cloud Service vorhanden ist, mit ausreichenden Berechtigungen für den Zugriff auf die Daten, die Sie mit einem REST-API-Aufruf abfragen. Beispiel: Die Rolle "Vertriebsadministrator" ist ausreichend.
  6. Testen Sie die Anwendung, indem Sie ein Zugriffstoken mit diesen Benutzerzugangsdaten generieren. Sie können das Zugriffstoken mit der Funktion "Postman Request Token" generieren, indem Sie als Geltungsbereich den Oracle Identity Cloud Service Oracle Fusion Applications Cloud Service Application OAuth-protected Resource Primary Audience-Wert angeben. Verwenden Sie für diesen einfachen Test Kennwort-Zugangsdaten als Berechtigungstyp, um den Benutzernamen als Subject in dem generierten Token zu verwenden. (In einer Production-Umgebung würden Sie Clientzugangsdaten verwenden, bei denen der Client die Benutzerinformationen bereitstellt.) Die Zugriffstoken-URL wird durch Aufrufen der Oracle Identity Cloud Service-Host-URL und Anhängen von /oauth2/v1/token gebildet. Beispiel: https://<Ihre Identity Cloud hostname.identity.oraclecloud.com>/oauth2/v1/token.
Wenn alles ordnungsgemäß funktioniert, erhalten Sie ein JWT-Token als Antwort, das Sie dann in einem Aufruf des Oracle Fusion Applications Cloud Service - REST-API-Endpunkts verwenden und dieselbe Ausgabe erhalten können. Beispiel:
curl --location --request GET 'https://<your fusion instance>.<domain>.com/fscmRestApi/resources/11.13.18.05/expenses' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <JWT_TOKEN>'
Diese Kul-Abfrage muss Aufwandsdaten zurückgeben.

Oracle Functions Oracle Identity Cloud Service-Anwendung als vertrauenswürdiger Client konfigurieren

Sie benötigen ein Zertifikat, das von der Oracle Identity Cloud Service-Anwendung als vertrauenswürdiger Client verwendet werden muss, um OAuth-Anforderungen an Oracle Functions zu stellen. Sie können ein selbstsigniertes Zertifikat zur Verwendung während der Entwicklung generieren, wenn noch kein Zertifikat verfügbar ist.

Das angegebene Skript genSelfSignedKeypair.sh kann zur Generierung eines Schlüssels verwendet werden, wenn noch kein Schlüssel vorhanden ist. Führen Sie das Skript aus, indem Sie die Mandanten- und Schlüsselaliaswerte angeben. In diesem Beispiel wurde mytenant als Mandantenname und fnassertionkey als Schlüsselalias angegeben.

  1. Verwenden Sie bei Bedarf das mit den Codebeispielen für dieses Lösungswiedergabebuch bereitgestellte Skript, um ein Zertifikat zu generieren:
    $ ./genSelfSignedKeypair.sh --tenant mytenant  --keyalias fnassertionkey
    ==============================================
    Generating Self Signed Certificates in Kesytore
     
     
    General Properties:
    -------------------------------
    ==> Workdir: ./genCertsDir
    ==> Tenant Name: mytenant
    ==> Key Alias: fnassertionkey
     
    Keystore Properties:
    -------------------------------
    ==> Store Type: PKCS12
    ==> Key Algorithm: RSA
    ==> Key Size: 2048
    ==> Validity time(days): 1825
    ==> Sign Algorithm: SHA256withRSA
    ==> dname: CN=mytenant FN Assertion, O=mycompany, L=mylocation, ST=mystate, C=mycountry
     
    Passwords:
    [*] Keystore Password:
    [*] PrivateKey Password:
     
    Generate keypair in keystore ./genCertsDir/mytenant-keystore.p12 ...
    Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 1,825 days
        for: CN=mytenant FN Assertion, O=mycompany, L=mylocation, ST=mystate, C=mycountry
    [Storing ./genCertsDir/mytenant-keystore.p12]
    Export public certificate with alias fnassertionkey from generated keystore (openssl) ...
    Certificate stored in file <./genCertsDir/mytenant-fnassertionkey-cert.pem>
    Extract Private Key in PKCS8 format from generated keystore (openssl) ...
    Self Signed certificate generated successfully
    ==============================================
    Files generated:
    ==> ./genCertsDir/mytenant-keystore.p12
    ==> ./genCertsDir/mytenant-fnassertionkey-cert.pem [Stored in Keystore]
    ==> ./genCertsDir/mytenant-fnassertionkey-pkcs8-key.pem [Stored in Keystore]
    ==============================================

    Die generierten Dateien werden in Ihrem Funktionscode und in der Konfiguration der Oracle Identity Cloud Service-Anwendung verwendet:

    • mytenant-keystore.p12: Generierter Keystore für den Code zur Extrahierung der für den Assertion-Prozess verwendeten Zertifizierungen.
    • mytenant-fnassertionkey-cert.pem: Öffentliches Zertifikat zur Verwendung in der Oracle Identity Cloud Service-Anwendungskonfiguration.

    Die dritte U-Datei wird nicht sofort benötigt, eine ähnliche Version wird jedoch aus dem Keystore mytenant-keystore.p12 in Ihrem Code extrahiert und zur Referenz exportiert:

    • mytenant-fnassertionkey-pkcs8-key. pem: Ein Private Key im PKCS8-Format
  2. Konfigurieren Sie Ihre Oracle Functions Oracle Identity Cloud Service-Anwendung mit dem Trusted Client-Typ, und fügen Sie ein Zertifikat mit dem Schlüsselalias des Zertifikats hinzu. Melden Sie sich bei Oracle Cloud My Services an, klicken Sie auf Benutzer, und klicken Sie dann auf Identity-Konsole.
  3. Wählen Sie die Registerkarte Anwendungen aus, und wählen Sie die Oracle Identity Cloud Service-Anwendung aus, die Sie zuvor für den Zugriff auf Oracle Functions erstellt haben.
  4. Suchen Sie im Abschnitt "Clientkonfiguration " das Feld Zertifikat, geben Sie den Alias ein, den Sie für Ihr Zertifikat verwendet haben (in dem Beispiel oberhalb fnassertionkey), und klicken Sie auf die Schaltfläche Importieren, um die Datei mytenant-fnassertionkey-cert.pem zu importieren.

Keystore-Informationen in Oracle Cloud Infrastructure Vault importieren

Der Assertion-Prozess mit Oracle Functions erfordert die Verwendung des importierten Keystores und der importierten Kennwörter. Um die bestmögliche Sicherheit zu gewährleisten und zu vermeiden, dass hartcodierte Kennwörter und Secrets verwendet werden, können Sie Oracle Cloud Infrastructure Vault nutzen.

Mit dem Oracle Cloud Infrastructure Vault Service können Sie vertrauliche Daten sicher verschlüsseln und speichern. Sie können die Keystore-Kennwörter und Public Key-Kennwörter in einem Vault speichern und sie dann mit dem Oracle Cloud Infrastructure-SDK in Ihrem Oracle Functions Backend referenzieren, um die Zuweisung auszuführen. Sie können die JKS-Datei auch sicher verschlüsseln und speichern.

Im Abschnitt "Vor Ihnen beginnen" dieses Lösungsabspielbuchs mussten Sie Ihre Oracle Functions-Umgebung einrichten, beispielsweise mit den Schnellstartleitfäden. Das Setup der Kurzanleitung fordert Sie auf, eine Policy für Funktionen auf der Stamm-Compart-Ebene zu erstellen. Im folgenden Beispiel hat die Policy den Namen FnTenancyPolicy. Sie müssen zusätzliche Anweisungen zur Policy hinzufügen, damit Oracle Functions auf Vaults zugreifen kann, die mit dieser Policy verknüpft sind. Der Name der Gruppe für Oracle Functions, die verwendet werden soll, muss der Name sein, den Sie beim Konfigurieren des Mandanten im Schnellstarthandbuch erstellt haben. In diesem Beispiel ist fnGroup1 die Gruppe von Benutzern, die Oracle Functions verwenden können.

  1. Gehen Sie in der Oracle Cloud Infrastructure-Konsole unter Governance und Administration zu Identity, und klicken Sie auf Policys.
    Eine Liste der Policys in dem Compartment, das Sie anzeigen, wird angezeigt.
  2. Wählen Sie das Root-Compartment aus der Liste auf der linken Seite.
  3. Wählen Sie den Namen der Oracle Functions Policy, wie z. B. FnTenancyPolicy, und klicken Sie auf Policy-Anweisungen bearbeiten. Fügen Sie die folgenden Anweisungen hinzu:
    allow group fnGroup1 to manage secret-family in tenancy
    allow group fnGroup1 to manage vaults in tenancy
    allow group fnGroup1 to manage keys in tenancy
  4. Wählen Sie Änderungen speichern.
  5. Erstellen Sie eine Vault-Instanz in Ihrem Compartment.
    1. Gehen Sie unter der Gruppe Governance und Administration zu Sicherheit, und wählen Sie Vault.
    2. Wählen Sie unter Listengeltungsbereich in der Liste Compartment den Namen des Compartments aus, in dem Sie den Vault erstellen möchten, und klicken Sie auf Vault erstellen.
    3. Klicken Sie im Dialogfeld Vault erstellen auf Name, und geben Sie einen Anzeigenamen für den Vault ein. Vermeiden Sie die Eingabe von vertraulichen Informationen in dieses Feld.
    4. Aktivieren Sie optional das Kontrollkästchen Vault zu virtuellem privaten Vault machen, indem Sie es zu einem virtuellen privaten Vault machen aktivieren.
    5. Wählen Sie Erstellen aus.
  6. Erstellen Sie eine mit den Secrets verknüpfte Schlüsselinstanz.
    1. Wählen Sie unter Listengeltungsbereich in der Liste Compartment den Namen des Compartments aus, in dem Sie den Schlüssel erstellen möchten, und klicken Sie dann auf den Namen des zu erstellenden Vaults.
    2. Wählen Sie Schlüssel, Schlüssel erstellen aus.
    3. Im Dialogfeld "Schlüssel erstellen" wählen Sie ein Compartment aus der Liste "In Compartment erstellen ". (Schlüssel können außerhalb des Compartments vorhanden sein, in dem der Vault enthalten ist.)
    4. Wählen Sie Name aus, und geben Sie dann einen Namen zur Identifizierung des Schlüssels ein. Vermeiden Sie die Eingabe von vertraulichen Informationen in dieses Feld.
    5. Geben Sie die Schlüssellänge in Bit an, indem Sie eine Länge aus der Liste Schlüsselform: Länge wählen.
    6. Klicken Sie abschließend auf Schlüssel erstellen.
  7. Erstellen Sie die erforderlichen Secrets für Ihren Assertion-Fall:
    1. Keystore-Kennwort
    2. PK-Kennwort
    3. Keystore-Datei
    Sie müssen eine Base64-codierte Darstellung des Inhalts der Keystore-Datei hinzufügen. Sie könnten ihn mit dem Befehl openssl generieren:
    openssl base64 -in <YourKeystoreName>.p12 -out ksBase64Encoded.txt | cat ksBase64Encoded.txt

    Kopieren Sie den Inhalt in den Wert des Schlüssels im Secret. So erstellen Sie ein neues Secret:

    1. Wählen Sie unter Listengeltungsbereich in der Liste Compartment den Namen des Compartments, in dem Sie ein Secret erstellen möchten.
    2. Wählen Sie aus der Liste der Vaults im Compartment den Namen des soeben erstellten Vaults.
    3. Wählen Sie Secrets, Secret erstellen aus.
    4. Wählen Sie im Dialogfeld "Secret erstellen" aus der Liste "In Compartment erstellen" ein Compartment. (Secrets kann außerhalb des Compartments vorhanden sein, in dem der Vault enthalten ist.)
    5. Wählen Sie Name aus, und geben Sie dann einen Namen ein, um das Secret zu identifizieren. Vermeiden Sie die Eingabe von vertraulichen Informationen in dieses Feld.
    6. Wählen Sie Beschreibung aus, und geben Sie eine kurze Beschreibung des Secret ein, um die Beschreibung zu identifizieren. Vermeiden Sie die Eingabe von vertraulichen Informationen in dieses Feld.
    7. Wählen Sie den Master-Verschlüsselungsschlüssel, mit dem Sie den Secret Content verschlüsseln möchten, während sie in den Vault importiert werden. (Der Schlüssel muss zum selben Vault gehören.)
    8. Geben Sie das Format des Secret Contents an, den Sie angeben, indem Sie einen Vorlagentyp aus der Liste "Secret Type-Vorlage" wählen. (Sie können in der Konsole Secret Content in Klartext angeben, wenn Sie eine Secret oder Secret Version mit der Konsole erstellen, aber Geheime Inhalte müssen base64-codiert sein, bevor sie an den Service gesendet werden. Wenn Sie dieses Format wählen, codiert die Konsole automatisch Nur-Text-Secret-Inhalte für Sie.
    9. Wählen Sie Geheimer Inhalt aus, und geben Sie dann den Secret-Inhalt ein. (Die maximal zulässige Größe für ein Secret Bundle beträgt 25 KB.)
    10. Optional können Sie eine Regel anwenden, um zu verwalten, wie Secrets verwendet werden. Sie können entweder eine Regel zur Wiederverwendung von Secret-Inhalten in den Versionen eines Secret erstellen oder können eine Regel erstellen, die angibt, wann der Secret-Inhalt abläuft.
    11. Wenn Sie fertig sind, wählen Sie Secret erstellen.
    12. Wiederholen Sie diese Schritte für jedes zu erstellende Secret.
  8. Dynamische Gruppe erstellen:
    1. Wählen Sie in der Konsole Identity, Dynamische Gruppen aus.
      Eine Liste der dynamischen Gruppen in Ihrem Mandanten wird angezeigt.
    2. Wählen Sie Dynamische Gruppe erstellen aus.
    3. Geben Sie einen Namen für die dynamische Gruppe ein. Erfassen Sie den Namen für die zukünftige Verwendung. Der Name muss in allen Gruppen in Ihrem Mandanten eindeutig sein. Sie können diesen Namen später nicht mehr ändern.
    4. Geben Sie eine Beschreibung ein. Sie können die Beschreibung später nicht mit der Konsole ändern. Sie können sie jedoch mit der API ändern.
    5. Geben Sie im Abschnitt "Vergleichsregeln " die folgende Regel ein (verwenden Sie die OCID Ihres Compartments):
      ALL { resource.type = 'fnfunc', resource.compartment.id = 'ocid1.compartment.oc1..xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'}
    6. Wählen Sie Dynamische Gruppe erstellen aus.
      Die Abgleichsregelsyntax wird verifiziert, aber die OCIDs sind nicht. Stellen Sie sicher, dass die von Ihnen eingegebenen OCIDs korrekt sind.
  9. Fügen Sie der Policy, die Sie für Oracle Functions auf der Root Compartment-Ebene als Teil des Oracle Functions Quick Start Guides erstellt haben, eine Anweisung hinzu, damit Sie die dynamische Gruppe, die Sie gerade erstellt haben, auf Ihre Secrets zugreifen können.
    1. Gehen Sie unter Governance und Administration zu Identity, und klicken Sie auf Policys.
      Eine Liste der Policys in dem Compartment, das Sie anzeigen, wird angezeigt.
    2. Wählen Sie das Root-Compartment aus der Liste.
    3. Wählen Sie den Namen der Oracle Functions Policy, wie z. B. FnTenancyPolicy, und klicken Sie auf Policy-Anweisungen bearbeiten. Fügen Sie die folgende Anweisung hinzu:
      allow dynamic-group your_fn_group to read secret-family in tenancy
Wenn Vault Secrets konfiguriert sind, können Sie mit den OCIDs für jedes Secret mit dem Oracle Cloud Infrastructure SDK auf sie zugreifen. Die Eigenschaften V_KEYSTORE, V_KS_PASS und V_PK_PASS werden in den Beispielfunktionen verwendet, die später in dieser Lösung beschrieben werden.

Oracle Visual Builder-Anwendung in Oracle Identity Cloud Service konfigurieren

Mit Oracle Visual Builder-Anwendungen ist eine Oracle Identity Cloud Service-Anwendung verknüpft, die automatisch als vertrauenswürdiger Client konfiguriert wird. Sie müssen diese Anwendung so konfigurieren, dass sie als Client der Oracle Functions-Ressource verwendet werden kann.

Im Rahmen der in der vorgeschlagenen Architektur dargestellten Interaktion muss eine mit einer Oracle Identity Cloud Service-Instanz verknüpfte Oracle Visual Builder-Anwendung, die mit Oracle Fusion Applications Cloud Service verbunden und mit Oracle Functions verbunden ist, ein Zugriffstoken generieren können, das API-Gateway und Oracle Functions-Ressourcen erreichen kann (wie durch Scope festgelegt). Sie müssen Ihre Oracle Visual Builder-Anwendung in Oracle Identity Cloud Service konfigurieren, um sie als Client der Ressource festzulegen, die die SaaS-Funktionalität erweitert, indem Sie den Geltungsbereich der neu erstellten Oracle Functions-Anwendung hinzufügen.

Wenn Sie eine neue Anwendung in Oracle Visual Builder erstellen, wird automatisch eine Oracle Identity Cloud Service-Anwendung erstellt. Beispiel: Wenn Sie eine Anwendung mit dem Namen TestSaaSExtensionFN erstellen, können Sie zur Oracle Identity Cloud Service-Konsole navigieren und Anwendungen auflisten. Außerdem müssen Sie die Anwendung mit dem Namen TestSaaSExtensionFN suchen.

  1. Erstellen Sie eine Oracle Visual Builder-Anwendung.
  2. Navigieren Sie in Oracle Identity Cloud Service zu der Anwendung, die Ihrer neuen Oracle Visual Builder-Anwendung entspricht.
  3. Legen Sie im Abschnitt "Tokenausgabe-Policy" die Schaltfläche Autorisierte Ressourcen auf Spezifisch fest, und fügen Sie mit der Schaltfläche Geltungsbereich hinzufügen eine Ressource mit dem Geltungsbereich Ihrer Oracle Functions API Gateway-Instanz hinzu.
    Wenn die Umleitungs-URL in der VBCS-IDCS-Anwendung als obligatorisch markiert ist, ist dies auf die Clientkonfiguration zurückzuführen, das Kontrollkästchen "Implizit " in Zulässige Berechtigungstypen ist aktiviert. In diesem Fall müssen Sie in dieser Eingabe eine URL für die Oracle Visual Builder-Webanwendung angeben. Sie können diese Werte je nach Bedarf später aktualisieren.
Wiederholen Sie diesen Prozess, um den Geltungsbereich für jede zusätzliche Oracle Visual Builder-Anwendung in Oracle Identity Cloud Service hinzuzufügen, die die API Gateway Oracle Functions-Anwendung erreichen soll.