Identifikátor instance komponenty je jedinečný identifikátor pro komponentu generovanou ve vloženém rámci na webu.
Když uživatel přetáhne komponentu vykreslenou ve vloženém rámci z katalogu komponent na stránku webu, proběhne poskytovací volání serveru Oracle Sites Cloud Service za účelem generování nového jedinečného identifikátoru instance komponenty. Je zaručena jedinečnost tohoto identifikátoru a všechny takové instance komponenty poskytnuté pro tuto službu získají stejný identifikátor instance.
Identifikátor instance komponenty obsahuje další informace, které lze použít k zabezpečení nastavení a použití komponenty generované ve vloženém rámci, takže komponenta má jistotu, že aktualizace nastavení pochází z důvěryhodného místa.
Parametr identifikátoru instance umožňuje vývojářům identifikovat web a ověřit volající stranu. Volající je ověřen prostřednictvím ověření digitálního podpisu, který je generován pomocí tajného klíče komponenty. Tajný klíč je generován během procesu registrace komponenty.
Instance komponenty se skládá ze dvou částí oddělených oddělovačem „.“: dat a struktury.
Instance komponenty: Data
Datová část instance komponenty generované ve vloženém rámci je řetězec kódovaný ve formátu Base64 JSON. Zde je uvedena struktura řetězce JSON:
{ "instanceid": "BBDC7614F693B75110D811E6C0B77C935FAEC5112E5E", "permissions": "", "entitlements": "", "signdate": "1435426735293", "sitedomain": "service1-tenant4.localhost" }
Název pole | Popis |
---|---|
|
Jedinečný identifikátor komponenty generované ve vloženém rámci pro zákazníka služby Oracle Content Management. |
|
Datum generování podpisu. |
|
Název domény instance služby Oracle Content Management. |
|
Sada oprávnění člena webu. V režimu úprav bude mít hodnotu |
|
Seznam prémiových funkcí zakoupených vlastníkem webu. |
Instance komponenty: Podpis
Datová část instance komponenty je serializována před podpisem pomocí klíče APP_SECRET_KEY
. Tento tajný klíč musí být generován a zobrazen vývojáři při registraci komponenty. Podpis se vypočítá generováním hodnoty hash datové části instance komponenty (serializovaná struktura JSON) pomocí tajného klíče, jak je uvedeno zde:
$signature = HMAC (serialized JSON structure, APP_SECRET_KEY)
Ke generování podpisu je používán algoritmus hash SHA256. Token je vytvořen zřetězením serializované struktury JSON a generované komponenty podpisu, jak je uvedeno zde:
$instance = {base64encoded serialized JSON structure}.{base64encoded $signature}
Příklad:
//base64 encoded serialized object //signature eyJpbnN0YW5jZWlkIjoiQTRGOTE3REY5OTZEN0Q3ODBCMjUzODZFOTFEMDA3ODJGMjVBRjY2Rjc3OTIiLCJzaWduZGF0ZSI6IjE0NDU2MzcwNTk5MTciLCJzaXRlZG9tYWluIjoic2VydmljZTEtdGVuYW50MS51cy5vcmFjbGUuY29tIiwicGVybWlzc2lvbnMiOiJTSVRFX09XTkVSIiwiZW50aXRsZW1lbnRzIjoiIn0=.5p3of7t11OwuysF3zpm+YgICSHH8C/BHczdbVZx2VH8=