Configurazione di Oracle Rest Data Services (ORDS) - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione di Oracle Rest Data Services (ORDS)

L’argomento seguente illustra le opzioni di configurazione per ORDS 21 e 22:

Installazione e configurazione di ORDS 21 e versioni precedenti

È ora possibile installare e configurare Oracle Rest Data Services (ORDS) per l'utilizzo con Oracle APEX. Per Oracle APEX versione 5.0 e versioni successive, utilizza ORDS versioni da 19.1 a 21. Per informazioni su come installare ORDS 22 e versioni successive, consulta Installazione e configurazione di ORDS 22 e versioni successive.

Installa il listener su un host separato come un' EC2 istanza Amazon, un server locale presso la tua azienda o il tuo computer desktop. Per gli esempi in questa sezione, supponiamo che il nome dell'host sia myapexhost.example.com e che l'host esegua Linux.

Per installare e configurare ORDS 21 e versioni precedenti per l’utilizzo con Oracle APEX
  1. Vai ai Oracle REST data services ed esamina il file Readme. Verifica che sia installata la versione richiesta di Java.

  2. Crea una nuova directory per l’installazione di ORDS.

    mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
  3. Scarica il file ords.version.number.zip da Oracle REST Data Services.

  4. Decomprimere il file nella directory /home/apexuser/ORDS.

  5. Se stai installando ORDS in un database multilocazione, aggiunge la riga seguente al file /home/apexuser/ORDS/params/ords_params.properties:

    pdb.disable.lockdown=false
  6. Concedere all'utente master i privilegi necessari per installare ORDS.

    Una volta installate le opzioni per Oracle APEX, concedi all’utente master i privilegi necessari per installare lo schema ORDS. Questa operazione può essere eseguita collegandosi al database ed eseguendo questi comandi: Sostituisci MASTER_USER con il nome in maiuscolo dell'utente master.

    Importante

    Quando si immette il nome utente, utilizzare maiuscole a meno che l'utente non sia stato creato con un identificatore con distinzione tra maiuscole e minuscole. Ad esempio, se esegui CREATE USER myuser o CREATE USER MYUSER, il dizionario dati memorizza MYUSER. Tuttavia, se si utilizzano virgolette doppie in CREATE USER "MyUser", il dizionario dati memorizza MyUser. Per ulteriori informazioni, consulta Concedere privilegi SELECT o EXECUTE agli oggetti SYS.

    exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER', 'EXECUTE', true);
    Nota

    Questi comandi si applicano a ORDS versione 19.1 e successive.

  7. Installare lo schema ORDS utilizzando il file scaricato ords.war.

    java -jar ords.war install advanced

    Il programma richiede le seguenti informazioni. I valori predefiniti sono riportati tra parentesi. Per altre informazioni, consulta l'articolo relativo a Introduzione a Oracle REST Data Services nella documentazione Oracle.

    • Destinazione di archiviazione dei dati di configurazione

      Specificare (sì /home/apexuser/ORDS. Questa è la posizione dei file di configurazione di ORDS.

    • Specificare il tipo di connessione al database da utilizzare. Immettere il numero per [1] Basic [2] TNS [3] URL personalizzato [1]:

      Scegliere il tipo di connessione desiderato.

    • Inserisci il nome del server di database [localhost]: DB_instance_endpoint

      Scegli il valore predefinito o digita il valore corretto.

    • Immettete la porta del listener del database [1521]: DB_instance_port

      Scegli il valore predefinito o digita il valore corretto.

    • Immettere 1 per specificare il nome del servizio di database o 2 per specificare il SID del database [1]:

      Scegliere 2 per specificare il SID del database.

    • SID del database [xe]

      Scegli il valore predefinito o digita il valore corretto.

    • Immettere 1 se si desidera utilizzare lo schema verify/install Oracle REST Data Services o 2 per saltare questo passaggio [1]:

      Scegliere 1. Questo passaggio crea l'utente proxy di Oracle REST Data Services denominato ORDS_PUBLIC_USER.

    • Immettere la password del database per ORDS_PUBLIC_USER:

      Immettere la password, quindi confermarla.

    • Richiede l’accesso con i privilegi di amministratore per verificare lo schema Oracle REST Data Services.

      Immettere il nome utente dell'amministratore: master_user

      Inserisci la password del database permaster_user: master_user_password

      Conferma la password: master_user_password

      Nota

      Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

    • Inserire lo spazio tabella predefinito per ORDS_METADATA [SYSAUX].

      Inserire lo spazio tabella temporaneo per ORDS_METADATA [TEMP].

      Inserire lo spazio tabella predefinito per ORDS_PUBLIC_USER [USERS].

      Inserire lo spazio tabella temporaneo per ORDS_PUBLIC_USER [USERS].

    • Inserisci 1 se desideri utilizzare PL/SQL Gateway o 2 per saltare questo passaggio. Se si sta utilizzando Oracle Application Express o si sta migrando da mod_plsql, inserire 1 [1].

      Scegliere il valore predefinito.

    • Immettete il nome utente del database PL/SQL Gateway [APEX_PUBLIC_USER]

      Scegliere il valore predefinito.

    • Inserire la password del database per APEX_PUBLIC_USER

      Immettere la password, quindi confermarla.

    • Immettete 1 per specificare le password per gli utenti del database di Application Express RESTful Services (APEX_LISTENER, APEX_REST_PUBLIC_USER) o 2 per saltare questo passaggio [1]:

      Scegliere 2 per APEX 4.1.1.V1 oppure scegliere 1 per tutte le altre versioni di APEX.

    • [Non necessario per APEX 4.1.1.v1] Password di database per APEX_LISTENER

      Immettere la password (se necessario), quindi confermarla.

    • [Non necessario per APEX 4.1.1.v1] Password di database per APEX_REST_PUBLIC_USER

      Immettere la password (se necessario), quindi confermarla.

    • Immettere un numero per selezionare una funzione da abilitare:

      Immettere 1 per abilitare tutte le funzioni: SQL Developer Web, REST Enabled SQL e Database API.

    • Immettere 1 se si desidera avviare in modalità standalone o 2 per uscire [1]:

      Specificare (sì 1.

    • Immettere l'ubicazione delle risorse statiche APEX:

      Se i file di installazione APEX sono stati decompressi in /home/apexuser, immettere /home/apexuser/apex/images. Altrimenti, inserisci, dov'è la directory in cui hai decompresso il file. unzip_path/apex/images unzip_path

    • Immettere 1 se si utilizza HTTP o 2 se si utilizza HTTPS [1]:

      Se si immette 1, specificare la porta HTTP. Se si immette 2, specificare la porta HTTPS e il nome host SSL. L'opzione HTTPS richiede di specificare come si fornirà il certificato:

      • Immettere 1 per utilizzare il certificato autofirmato.

      • Immettere 2 per fornire il proprio certificato. Se si immette 2, specificare il percorso per il certificato SSL e il percorso per la chiave privata del certificato SSL.

  8. Impostare una password per l'utente admin APEX. Per farlo, utilizzare SQL*Plus per connettersi alla propria istanza database come utente master, quindi utilizzare i seguenti comandi:

    EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to master; @/home/apexuser/apex/apxchpwd.sql

    Sostituire master con il proprio nome utente master. Quando lo script apxchpwd.sql lo richiede, inserire una nuova password admin.

  9. Avviare il listener ORDS. Eseguire il seguente codice.

    java -jar ords.war

    Al primo avvio dell'ORDS viene richiesto di fornire la posizione delle risorse statiche APEX. Questa cartella di immagini è posizionata nella directory /apex/images all’interno della directory di installazione per APEX.

  10. Torna alla finestra di amministrazione Oracle APEX nel browser e scegli l’opzione Administration. Scegliere quindi Application Express Internal Administration (Amministrazione interna Application Express). Quando vengono richieste le credenziali, inserire le seguenti informazioni:

    • User name (Nome utenteadmin

    • Password – La password impostata usando lo script apxchpwd.sql

    Scegliere Login (Accedi), quindi impostare una nuova password per l'utente admin.

Il listener è ora pronto per essere utilizzato.

Installazione e configurazione di ORDS 22 e versioni successive

È ora possibile installare e configurare Oracle Rest Data Services (ORDS) per l'utilizzo con Oracle APEX. Per gli esempi in questa sezione, supponiamo che il nome dell’host separato sia myapexhost.example.com e che l’host esegua Linux. Le istruzioni per ORDS 22 differiscono da quelle per le versioni precedenti.

Per installare e configurare ORDS 22 e versioni successive per l’uso con Oracle APEX
  1. Vai ai Oracle REST data services ed esamina il file Readme per la versione di ORDS che intendi scaricare. Verifica che sia installata la versione richiesta di Java.

  2. Crea una nuova directory per l’installazione di ORDS.

    mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
  3. Scarica il file ords.version.number.zip o ords-latest.zip da Oracle REST data services.

  4. Decomprimere il file nella directory /home/apexuser/ORDS.

  5. Concedere all'utente master i privilegi necessari per installare ORDS.

    Una volta installata l’opzione APEX, concedi all’utente master i privilegi necessari per installare lo schema ORDS. Questa operazione può essere eseguita collegandosi al database ed eseguendo questi comandi: Sostituisci MASTER_USER con il nome in maiuscolo dell'utente master.

    Importante

    Quando si immette il nome utente, utilizzare maiuscole a meno che l'utente non sia stato creato con un identificatore con distinzione tra maiuscole e minuscole. Ad esempio, se esegui CREATE USER myuser o CREATE USER MYUSER, il dizionario dati memorizza MYUSER. Tuttavia, se si utilizzano virgolette doppie in CREATE USER "MyUser", il dizionario dati memorizza MyUser. Per ulteriori informazioni, consulta Concedere privilegi SELECT o EXECUTE agli oggetti SYS.

    exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_LOB', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_ASSERT', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_OUTPUT', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SCHEDULER', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('HTP', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('OWA', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPG_DOCLOAD', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_CRYPTO', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_METADATA', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SQL', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('UTL_SMTP', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_NETWORK_ACL_ADMIN', 'MASTER_USER', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('SESSION_PRIVS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_USERS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACL_PRIVILEGES', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACLS', 'MASTER_USER', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_REGISTRY', 'MASTER_USER', 'SELECT', true);
    Nota

    I comandi precedenti si applicano a ORDS 22 e versioni successive.

  6. Installa lo schema ORDS utilizzando lo script ords scaricato. Specifica le directory in cui inserire i file di configurazione e i file di log. Oracle Corporation consiglia di non inserire queste directory nella directory che contiene il software del prodotto ORDS.

    mkdir -p /home/apexuser/ords_config /home/apexuser/ords_logs /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs

    Per le istanze database che eseguono l’architettura del database dei container (CDB), utilizza ORDS 23.3 o versioni successive e passa l’argomento --pdb-skip-disable-lockdown durante l’installazione di ORDS.

    /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs --pdb-skip-disable-lockdown

    Il programma richiede le seguenti informazioni. I valori predefiniti sono riportati tra parentesi. Per altre informazioni, consulta l'articolo relativo a Introduzione a Oracle REST Data Services nella documentazione Oracle.

    • Choose the type of installation:

      Sceglie 2 per installare gli schemi ORDS nel database e creare un pool di connessioni al database nei file di configurazione ORDS locali.

    • Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL:

      Scegliere il tipo di connessione desiderato. Questo esempio presuppone che tu scelga 1.

    • Enter the name of the database server [localhost]: DB_instance_endpoint

      Scegli il valore predefinito o digita il valore corretto.

    • Enter the database listener port [1521]: DB_instance_port

      Scegli il valore predefinito 1521 o digita il valore corretto.

    • Enter the database service name [orcl]:

      Immetti il nome del database utilizzato dall’istanza database RDS per Oracle.

    • Provide database user name with administrator privileges

      Inserisci il nome utente master per l’istanza database RDS per Oracle.

    • Enter the database password for [username]:

      Inserisci la password dell’utente master per l’istanza database RDS per Oracle.

    • Enter the default tablespace for ORDS_METADATA and ORDS_PUBLIC_USER [SYSAUX]:

    • Enter the temporary tablespace for ORDS_METADATA [TEMP]. Enter the default tablespace for ORDS_PUBLIC_USER [USERS]. Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP].

    • Enter a number to select additional feature(s) to enable [1]:

    • Enter a number to configure and start ORDS in standalone mode [1]:

      Scegli 2 per saltare immediatamente l’avvio di ORDS in modalità standalone.

    • Enter a number to select the protocol [1] HTTP

    • Enter the HTTP port [8080]:

    • Enter the APEX static resources location:

      Immetti il percorso ai file di installazione di Oracle APEX (/home/apexuser/apex/images).

  7. Imposta una password per l’utente admin di Oracle APEX. Per farlo, utilizzare SQL*Plus per connettersi alla propria istanza database come utente master, quindi utilizzare i seguenti comandi:

    EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to master; @/home/apexuser/apex/apxchpwd.sql

    Sostituire master con il proprio nome utente master. Quando lo script apxchpwd.sql lo richiede, inserire una nuova password admin.

  8. Esegui ORDS in modalità standalone utilizzando lo script ords con il comando serve. Per le implementazioni di produzione, prendi in considerazione l'utilizzo di server applicativi Java EE supportati come Apache Tomcat o Oracle Server. WebLogic Per altre informazioni, consulta l’articolo Deploying and Monitoring Oracle REST Data Services nella documentazione Oracle.

    /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config serve \ --port 8193 \ --apex-images /home/apexuser/apex/images

    Se ORDS è in esecuzione, ma non è possibile accedere all’installazione di Oracle APEX, è possibile che venga visualizzato il seguente errore, in particolare sulle istanze non CDB.

    The procedure named apex_admin could not be accessed, it may not be declared, or the user executing this request may not have been granted execute privilege on the procedure, or a function specified by security.requestValidationFunction configuration property has prevented access.

    Per correggere questo errore, modifica la funzione di convalida della richiesta utilizzata da ORDS eseguendo lo script ords con il comando config. Per impostazione predefinita, ORDS utilizza la procedura ords_util.authorize_plsql_gateway, che è supportata solo sulle istanze CDB. Per le istanze non CDB, puoi modificare questa procedura nel pacchetto wwv_flow_epg_include_modules.authorize. Consulta la documentazione di Oracle Database e Oracle Support per le best practice sulla configurazione della funzione di convalida delle richieste appropriata per il tuo caso d’uso.

  9. Torna alla finestra di amministrazione Oracle APEX nel browser e scegli l’opzione Administration. Scegliere quindi Application Express Internal Administration (Amministrazione interna Application Express). Quando vengono richieste le credenziali, inserire le seguenti informazioni:

    • User name (Nome utenteadmin

    • Password – La password impostata usando lo script apxchpwd.sql

    Scegliere Login (Accedi), quindi impostare una nuova password per l'utente admin.

Il listener è ora pronto per essere utilizzato.