Scopri come estendere le applicazioni SaaS mediante un approccio cloud nativo
Al momento che le aziende adottano un maggior numero di SaaS, la possibilità di estendere per soddisfare i requisiti aziendali in costante cambiamento diventa più importante. Prima che il cloud nativo, i team IT potevano affrontare con la realtà di selezionare un set di soluzioni di integrazione offerte da fornitori, fornire casi d'uso semplificati oppure impostare stack di grandi dimensioni per supportare i propri casi d'uso più complessi. I clienti che utilizzano Oracle Java Cloud Service - SaaS Extension spesso eseguono l'hosting delle estensioni dell'interfaccia utente di SaaS, che in genere vengono create utilizzando Oracle ADF Framework oppure utilizzano il servizio per ospitare codice (un punto di accesso di REST) chiamato da Oracle Fusion Applications Cloud Service o da un'altra applicazione. Oracle Java Cloud Service - SaaS Extension è un servizio cloud preesistente che non offre le funzioni delle offerte Oracle Cloud native moderne.
Cloud Native introduce funzionalità come contenitori e funzioni serverless. Attraverso queste offerte, il tuo team di sviluppo può concentrarsi sul completamento dei casi d'uso durante la riduzione della complessità dell'infrastruttura verso il tuo provider cloud. Oracle Cloud Native Services offre le funzionalità necessarie al team di sviluppo per estendere le applicazioni SaaS in modo semplice da implementare e gestire.
Architettura
Questa architettura mostra un progetto di alto livello per un'estensione di un'applicazione SaaS, creata mediante un approccio cloud nativo. È possibile utilizzare Oracle Functions come implementazione backend di un'interfaccia API REST, protetta da Oracle Identity Cloud Service.
L'implementazione viene eseguita rendendo l'uso del gateway API Oracle Cloud Infrastructure. Questo playbook di soluzioni presenta un caso d'uso per estendere Oracle Fusion Applications Cloud Service, ma le stesse tecniche possono essere utilizzate con o senza SaaS nell'immagine.
Viene illustrato il flusso seguente:
- Oracle Visual Builder si connette al gateway API tramite un'applicazione Identity Cloud Application Authentication (Function Resource Client) all'interno di Oracle Identity Cloud Service. Viene incluso un token di autenticazione con intestazione "Authorization: Bearer; <Token1>".
- Il gateway API si connette a Oracle Identity Cloud Service, effettuando la connessione al componente Identity Cloud /admin/v1/SigningCert/jwk per convalidare il token.
- Il gateway API si connette alla libreria di asserzioni OAuth di Identity Cloud integrata con la funzione Oracle, con il token originale con la stessa intestazione del token per il passo 1.
- La libreria di asserzioni OAuth di Identity Cloud integrata con la funzione Oracle si connette a Oracle Cloud Infrastructure Vault per cercare le credenziali memorizzate e sicure per il passo successivo.
- La funzione si connette di nuovo a Oracle Identity Cloud Service per recuperare un nuovo token dall'applicazione Identity Cloud (proprietario delle risorse funzione) (client delle risorse Fusion Applications). Questo token è valido per un utente esistente sia in Oracle Cloud PaaS che in Oracle Fusion Applications.
- Il componente Business Logic all'interno della funzione client Oracle Fusion Applications Cloud si connette a un'istanza di Fusion Applications Cloud utilizzando un nuovo token di autenticazione (token dall'asserzione) con l'intestazione "Authorization: Bearer; <Token2>"
Il gateway API può eseguire l'autenticazione diretta con Oracle Identity Cloud Service oppure, facoltativamente, eseguire una funzione di autenticazione personalizzata (non visualizzata nel diagramma).
Operazioni preliminari
Per eseguire chiamate API REST protette da Oracle PaaS a Oracle Fusion Applications Cloud Service, è necessario configurare un'integrazione utilizzando Oracle Identity Cloud Service. Fare riferimento a questi manuali di soluzioni con istruzioni complete per la configurazione di questa integrazione:
- Integrare un'applicazione Oracle SaaS con Oracle PaaS
- Accesso ai dati di PaaS da un'applicazione cloud mediante i servizi Web
Per utilizzare Oracle Functions con Oracle Cloud Infrastructure, è necessario impostare l'ambiente in uso:
- Rivedere le Guide di avvio rapido di Oracle Functions per impostare rapidamente un ambiente di sviluppo.
- La configurazione completa dell'ambiente client è disponibile nella sezione Preparazione per Oracle Functions della documentazione di Oracle Cloud Infrastructure.
Informazioni sui requisiti di progettazione
Al momento che le aziende adottano software più basato su cloud (Software as a Service, or SaaS), la possibilità di estendersi per soddisfare i requisiti aziendali in costante evoluzione è più importante. Prima che il cloud nativo, i team IT potevano affrontare con la realtà di selezionare un set di soluzioni di integrazione offerte dai fornitori, che forniscono casi d'uso semplistici oppure impostare stack complessi e imprevedibili delle infrastrutture per supportare i casi d'uso più complessi.
La soluzione cloud nativa introduce nuove capacità, ad esempio contenitori e funzioni serverless. Grazie a queste offerte, i team di sviluppo possono concentrarsi sul completamento dei casi d'uso durante la riduzione della complessità dell'infrastruttura verso il provider del cloud. Oracle Cloud Native Services offre le capacità richieste dai team di sviluppo per estendere le applicazioni SaaS in modo più semplice da implementare e gestire.
Oracle Functions è una funzione as-a-service (FaaS) che offre da Oracle, che consente agli sviluppatori di eseguire codice nel cloud e solo di pagare per la potenza di elaborazione utilizzata, evitando così di dover eseguire il servizio 24x7. Il vantaggio aggiuntivo consiste nel fatto che l'infrastruttura necessaria per eseguire il codice è completamente gestita da Oracle e non richiede al cliente e allo sviluppatore di gestire l'ambiente di runtime.
Quando si utilizza il nuovo servizio Oracle Cloud Infrastructure API Gateway con Oracle Functions, i team di sviluppo possono creare interfacce API serverless che sbloccano la potenza di funzioni serverless ad applicazioni quali Oracle Fusion Applications Cloud Service che si integrano facilmente con le API RESTful.
Se si esegue il confronto con un'istanza di Oracle Java Cloud Service o WebLogic Server Cloud, responsabile della gestione e della gestione del software, del sistema operativo associato che ospita WebLogic Server e spesso un database, questo “approccio completamente gestito da Oracle” è estremamente interessante.
È possibile che sia già in uso Oracle Java Cloud Service - SaaS Extension. Ad esempio, è possibile utilizzare il servizio per ospitare le estensioni dell'interfaccia utente di SaaS, che in genere vengono create utilizzando Oracle ADF Framework. Un altro caso d'uso comune consiste nell'ospitare un codice (un punto di accesso di REST) chiamato da Oracle Fusion Applications Cloud Service o da un'altra applicazione. Se si desidera spostare la piattaforma, Oracle spesso consiglia di eseguire la migrazione in Oracle Visual Builder.
Considerare i requisiti di progettazione riportati di seguito, che potrebbero essere simili a quelli di cui si è proprietari. Un'applicazione del cliente è distribuita in Oracle Java Cloud Service - SaaS Extension e sta utilizzando il framework Oracle ADF Faces. Il cliente desidera eseguire la migrazione a una piattaforma più moderna e la piattaforma deve essere gestita da Oracle, dopo che tutti si tratta di un cliente SaaS e che vengono utilizzati per gestire tali dati. E di un corso, è sempre necessario che l'implementazione sia sicura.
Possono quindi utilizzare Oracle Visual Builder per implementare la propria interfaccia utente. Questo cliente può decidere di eseguire una business logic complessa prima di chiamare Oracle SaaS, ad esempio l'inserimento nella cache, l'aggregazione di dati, logica complessa o la conversione dei protocolli (da REST a SOAP). Dopo che alcune indagini hanno determinato che la maggior parte delle richieste di rete può passare direttamente a Oracle SaaS, ma alcune chiamate dovranno passare attraverso un livello intermedio per gestire la business logic anziché richiamare direttamente l'API.
Per questo cliente, Oracle offre un'architettura che utilizza Oracle Functions come livello intermedio per il codice business logic personalizzato.
Di seguito vengono descritti i requisiti di progettazione.
- Estendi Oracle Fusion Applications Cloud Service con personalizzazioni e accesso ai dati basato su REST
- Utilizza piattaforma OracleManaged Cloud
- Implementare i verbi REST (GET, POST, PUT e così via).
- Usa Oracle Visual Builder per la personalizzazione più semplice e a basso codice
- Approccio senza server cloud nativo per eseguire il codice senza che sia necessario il provisioning o la gestione dell'infrastruttura
- Oracle Functions a costi comuni ridotti in efficienza è in grado di gestire le chiamate che richiedono business logic complessa
- Gestisce la propagazione delle identità nel sistema SaaS di destinazione per il controllo dell'accesso sicuro, autenticato e autorizzato con SSO
- Gli endpoint API devono essere protetti
- Implementare CORS (Cross-Origin Resource Sharing) per eseguire le chiamate REST direttamente al server REST.
Per soddisfare questi requisiti, sono inclusi quattro altri servizi nell'architettura:
- Oracle Identity Cloud Service: un'area di memorizzazione delle identità globale.
- Oracle Functions: consente di personalizzare le API SaaS con codice personale.
- Gateway API Oracle Cloud Infrastructure: gateway API che gestisce REST nel mapping delle funzioni e applica la sicurezza.
- Oracle Cloud Infrastructure Vault: meccanismo di gestione delle chiavi utilizzato per cifrare le password e i segreti dei client.
Il gateway API Oracle Cloud Infrastructure ha capacità integrato per comunicare con Oracle Identity Cloud Service. Tuttavia, per illustrare come utilizzare il codice Oracle Functions personalizzato con il gateway API, è stata fornita una funzione di autenticazione personalizzata (AuthN) come meccanismo di autenticazione facoltativo.
Informazioni su servizi e ruoli richiesti
Questa soluzione richiede i seguenti servizi e ruoli:
- Oracle Fusion Applications Cloud Service
- Oracle Visual Builder
- Infrastruttura Oracle Cloud
- Oracle Identity Cloud Service
Si tratta dei ruoli necessari per ogni servizio.
Nome servizio: ruolo | Obbligatorio per... |
---|---|
Oracle Fusion Applications Cloud Service: amministratore | Configurare Single Sign-On tra Oracle Fusion Applications Cloud Service e Oracle Identity Cloud Service. |
Oracle Visual Builder: ruolo predefinito di Visual Builder Developer mappato al ruolo predefinito a livello di applicazione ServiceDeveloper .
|
Consente di creare, gestire, proteggere e pubblicare applicazioni Web e mobile. |
Oracle Cloud Infrastructure: amministratore | Distribuire funzioni e configurare il gateway API. |
Oracle Identity Cloud Service: Amministratore sicurezza e Amministratore applicazione | Gestisce i provider di identità e le applicazioni. |
Vedere Informazioni su come ottenere i servizi Oracle Cloud per Oracle Solutions per ottenere i servizi cloud necessari.