Informationen zur Instanz-ID und Struktur für in Inlineframes gerenderte Komponenten

Die Komponenteninstanz-ID ist die eindeutige ID für eine Komponente, die in einem Inlineframe auf einer Site gerendert wird.

Wenn Benutzer eine in einem Inlineframe gerenderte Komponente per Drag-and-Drop aus dem Komponentenkatalog auf eine Siteseite verschieben, wird ein Provisioning-Aufruf an Oracle Sites Cloud Service gesendet, um eine neue eindeutige Komponenteninstanz-ID zu generieren. Diese ID ist garantiert eindeutig, und alle derartigen Komponenteninstanzen, die auf diesem Service bereitgestellt werden, erhalten dieselbe Instanz-ID.

Eine Komponenteninstanz-ID enthält zusätzliche Informationen, mit denen Sie die Einstellungen und die Verwendung einer in einem Inlineframe gerenderten Komponente sichern können. So wird sichergestellt, dass die Einstellungsaktualisierung von einer vertrauenswürdigen Stelle stammt.

Mit dem Instanz-ID-Parameter können Entwickler die Site identifizieren und die aufrufende Partei authentifizieren. Um den Aufrufer zu authentifizieren, wird eine digitale Signatur verifiziert, die mit dem Secret Key der Komponente generiert wird. Der Secret Key wird bei der Registrierung der Komponente generiert.

Die Komponenteninstanz besteht aus zwei Teilen, die durch einen Punkt (.) als Trennzeichen getrennt sind: Daten und Struktur.

Komponenteninstanz: Daten

Der Datenteil der Instanz für eine Komponente, die in einem Inlineframe gerendert wird, ist eine mit Base64 codierte JSON-Zeichenfolge. Struktur der JSON-Zeichenfolge:

{
  "instanceid": "BBDC7614F693B75110D811E6C0B77C935FAEC5112E5E",
  "permissions": "",
  "entitlements": "",
  "signdate": "1435426735293",
  "sitedomain": "service1-tenant4.localhost"
}
Feldname Beschreibung

instanceid

Eindeutige ID einer in einem Inlineframe gerenderten Komponente für einen Oracle Content Management-Mandanten.

signdate

Datum der Signaturgenerierung.

sitedomain

Domainname der Oracle Content Management-Instanz.

permissions

Berechtigungsset des Sitemitglieds. Im Bearbeitungsmodus hat dies den Wert "SITE_OWNER". Andernfalls enthält das Feld keinen Wert.

entitlements

Liste der vom Siteeigentümer gekauften Premiumfeatures.

Komponenteninstanz: Signatur

Der Datenteil der Komponenteninstanz wird serialisiert, bevor er mit einem APP_SECRET_KEY signiert wird. Dieser Secret Key muss beim Registrieren der Komponente generiert und dem Entwickler vorgelegt werden. Die Signatur wird berechnet, indem ein Hash des Datenteils der Komponenteninstanz (eine serialisierte JSON-Struktur) mit dem Secret Key generiert wird, wie hier dargestellt:

$signature = HMAC (serialized JSON structure, APP_SECRET_KEY)

SHA256 wird als Hash-Algorithmus beim Generieren der Signatur verwendet. Das Token ist dann die Verkettung der serialisierten JSON-Struktur und der generierten Signaturkomponente, wie hier gezeigt:

$instance = {base64encoded serialized JSON structure}.{base64encoded $signature}

Beispiel:

//base64 encoded serialized object           //signature
eyJpbnN0YW5jZWlkIjoiQTRGOTE3REY5OTZEN0Q3ODBCMjUzODZFOTFEMDA3ODJGMjVBRjY2Rjc3OTIiLCJzaWduZGF0ZSI6IjE0NDU2MzcwNTk5MTciLCJzaXRlZG9tYWluIjoic2VydmljZTEtdGVuYW50MS51cy5vcmFjbGUuY29tIiwicGVybWlzc2lvbnMiOiJTSVRFX09XTkVSIiwiZW50aXRsZW1lbnRzIjoiIn0=.5p3of7t11OwuysF3zpm+YgICSHH8C/BHczdbVZx2VH8=