Package DBMS_CLOUD_ADMIN

In questa sezione vengono descritti i programmi secondari DBMS_CLOUD_ADMIN forniti con Autonomous AI Database.

Sottoprogramma Descrizione
Procedura ATTACH_FILE_SYSTEM Questa procedura allega un file system in una directory del database.
Procedura CREATE_DATABASE_LINK Questa procedura crea un database link a un database di destinazione. Ci sono opzioni per creare un database link a un'altra istanza di Autonomous AI Database, a un Oracle Database che non è un Autonomous AI Database o a un non Oracle Database che utilizza una connettività eterogenea gestita da Oracle.
Procedura DETACH_FILE_SYSTEM Questa procedura scollega un file system da una directory del database.
Procedura DISABLE_EXTERNAL_AUTHENTICATION Questa procedura disabilita l'autenticazione esterna per l'istanza di Autonomous AI Database.
Procedura DROP_DATABASE_LINK Questa procedura elimina un database link.
Procedura ENABLE_EXTERNAL_AUTHENTICATION Questa procedura consente a un utente di collegarsi ad Autonomous AI Database utilizzando lo schema di autenticazione esterno specificato.

Procedura ATTACH_FILE_SYSTEM

Questa procedura allega un file system nel database.

La procedura DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM allega un file system nel database e memorizza le informazioni sul file system nella vista DBA_CLOUD_FILE_SYSTEMS.

Sintassi

DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name         IN VARCHAR2,
    file_system_location     IN VARCHAR2,
    directory_name           IN VARCHAR2,
    description              IN VARCHAR2 DEFAULT NULL,
    params                   IN CLOB DEFAULT NULL
);

Parametri

Parametro Descrizione
file_system_name

Specifica il nome del file system.

Questo parametro è obbligatorio.

file_system_location

Specifica la posizione del file system.

Il valore fornito con file_system_location è costituito da un nome di dominio completamente qualificato (FQDN) e da un percorso file nel formato: FQDN:file_path.

Nota: è possibile utilizzare un nome FQDN o un indirizzo IP.

Ad esempio:

  • FQDN: myhost.sub000445.myvcn.oraclevcn.com

    Per lo storage di file di Oracle Cloud Infrastructure impostare il nome FQDN in Mostra opzioni avanzate quando si crea un file system. Per ulteriori informazioni, vedere Creazione di file system.

  • Percorso file: /results

Questo parametro è obbligatorio.

directory_name

Specifica il nome della directory per il file system allegato. La directory deve essere già stata creata.

Questo parametro è obbligatorio.

description (Facoltativo) Fornisce una descrizione del task.
params

Stringa JSON che fornisce un parametro aggiuntivo per il file system.

nfs_version: specifica la versione NFS da utilizzare quando è collegato NFS (NFSv3 o NFSv4). Valori validi: 3, 4.

Valore predefinito: 3

Esempi

Esempio: Allega a un file system NFSv3:

BEGIN
   DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name      => 'FSS',
    file_system_location  => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
    directory_name        => 'FSS_DIR',
    description           => 'Source NFS for sales data'
  );
END;
/

Esempio: Allega a un file system NFSv4:

BEGIN
   DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM (
    file_system_name      => 'FSS',
    file_system_location  => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
    directory_name        => 'FSS_DIR',
    description           => 'Source NFS for sales data',
    params                => JSON_OBJECT('nfs_version' value 4)
);
END;
/

Note sull'uso

Procedura CREATE_DATABASE_LINK

Questa procedura crea un database link a un database di destinazione nello schema che richiama l'API.

I moduli sovraccaricati supportano quanto segue:

Sintassi

DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
       db_link_name         IN VARCHAR2,
       hostname             IN VARCHAR2,
       port                 IN NUMBER,
       service_name         IN VARCHAR2,
       ssl_server_cert_dn   IN VARCHAR2 DEFAULT,
       credential_name      IN VARCHAR2 DEFAULT,
       directory_name       IN VARCHAR2 DEFAULT,
       gateway_link         IN BOOLEAN DEFAULT,
       public_link          IN BOOLEAN DEFAULT,
       private_target       IN BOOLEAN DEFAULT
       gateway_params       IN CLOB DEFAULT);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
       db_link_name         IN VARCHAR2,
       rac_hostnames        IN CLOB,
       port                 IN NUMBER,
       service_name         IN VARCHAR2,
       ssl_server_cert_dn   IN VARCHAR2 DEFAULT,
       credential_name      IN VARCHAR2 DEFAULT,
       directory_name       IN VARCHAR2 DEFAULT,
       gateway_link         IN BOOLEAN DEFAULT,
       public_link          IN BOOLEAN DEFAULT,
       private_target       IN BOOLEAN DEFAULT);

Parametri

Parametro Descrizione
db_link_name Il nome del database link da creare.
hostname

Il nome host per il database di destinazione.

Non è consentito specificare localhost per hostname.

Quando si specifica una connessione alla connettività eterogenea gestita da Oracle specificando il parametro gateway_params, tenere presente quanto riportato di seguito.

  • Se il valore db_type è google_bigquery, hostname non viene utilizzato ed è possibile fornire un valore come example.com.

  • Quando il valore db_type è snowflake, hostname è l'identificativo dell'account Snowflake. Per trovare l'identificativo dell'account Snowflake, vedere Formati identificativo account per piattaforma e area cloud.

Utilizzare questo parametro o rac_hostnames, non utilizzare entrambi.

L'input DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK deve indicare il nome di scansione del database AI Autonomous dedicato di destinazione come parametro 'hostname'.

rac_hostnames

Specifica i nomi host per il database Oracle RAC di destinazione. Il valore è un array JSON che specifica uno o più nomi host singoli per i nodi del database Oracle RAC di destinazione. In JSON è possibile passare più nomi host separati da un carattere ",". Ad esempio:

'["sales1-svr1.domain", "sales1-svr2.domain", "sales1-svr3.domain"]'

Quando la destinazione è un database Oracle RAC, utilizzare il parametro rac_hostnames per specificare uno o più nomi host con DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. Ciò consente di sfruttare le funzionalità di alta disponibilità di Oracle RAC. L'uso di un indirizzo IP, di un IP SCAN o di un nome host SCAN nel valore rac_hostnames non è supportato.

Quando si specifica un elenco di nomi host nel parametro rac_hostnames, CREATE_DATABASE_LINK utilizza tutti i nomi host specificati come indirizzi nella stringa di connessione. Se uno degli host specificati non è disponibile nel database Oracle RAC di destinazione, Autonomous Database tenta automaticamente di connettersi utilizzando un altro nome host dalla lista.

Utilizzare questo parametro o hostname, non utilizzare entrambi.

Non è consentito specificare localhost per un valore rac_hostname.

port

Specifica la porta per le connessioni al database di destinazione.

Quando si specifica una connessione alla connettività eterogenea gestita da Oracle utilizzando il parametro gateway_params, impostare la porta in base al valore db_type:

  • awsredshift: utilizzare la porta 5439
  • azure: utilizzare la porta 1433
  • db2: utilizzare la porta 2500 per le versioni Db2 >= 11.5.6
  • db2: utilizzare la porta 5000 per le versioni Db2 <= 11.5.5< li>
  • google_analytics: utilizzare la porta 443
  • google_bigquery: utilizzare la porta 443
  • hive: utilizzare la porta 433
  • mongodb: utilizzare la porta 27017
  • mysql: utilizzare la porta 3306
  • mysql_community: utilizzare la porta 3306
  • postgres: utilizzare la porta 5432
  • salesforce: utilizzare la porta 19937
  • servicenow: utilizzare la porta 443
  • snowflake: utilizzare la porta 443
service_name

service_name per il database a cui collegarsi. Per un Autonomous AI Database di destinazione, trovare il nome del servizio in base a uno dei metodi riportati di seguito.

  • Cercare il file tnsnames.ora nel file wallet.zip scaricato da un Autonomous AI Database per la connessione.

  • Fare clic su Connessione al database nella console di Oracle Cloud Infrastructure. Ogni stringa di connessione elencata nella colonna Stringa di connessione include una voce service_name con la stringa di connessione per il servizio corrispondente. Per ulteriori informazioni, vedere Visualizza stringhe di connessione per un Autonomous AI Database.

  • Eseguire una query sulla vista V$SERVICES. Ad esempio:

    SELECT name FROM V$SERVICES;

Quando si specifica una connessione alla connettività eterogenea gestita da Oracle utilizzando il parametro gateway_params, service_name è il nome del database del database non Oracle.

ssl_server_cert_dn

Il valore DN trovato nel certificato del server.

La connettività eterogenea gestita da Oracle è preconfigurata con un wallet che contiene la maggior parte dei comuni certificati SSL root e intermedi sicuri. Il valore ssl_server_cert_dn deve essere NULL quando si fornisce il parametro gateway_params o non si include il parametro ssl_server_cert_dn (il valore predefinito è NULL).

Collegamento dell'endpoint pubblico a una destinazione di Autonomous AI Database senza wallet:

Per connettersi a una destinazione Autonomous AI Database su un endpoint pubblico senza un wallet (TLS):

  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Collegamento endpoint privato senza wallet:

Per connettersi a Oracle Database su un endpoint privato senza wallet:

  • Il database di destinazione deve trovarsi in un endpoint privato.
  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).
  • Il parametro private_target deve essere TRUE.
credential_name Nome di una credenziale memorizzata creata con DBMS_CLOUD.CREATE_CREDENTIAL. Si tratta delle credenziali per accedere al database di destinazione.
directory_name

La directory del file cwallet.sso. Il valore predefinito di questo parametro è 'data_pump_dir'.

La connettività eterogenea gestita da Oracle è preconfigurata con un wallet che contiene la maggior parte dei comuni certificati SSL root e intermedi sicuri. Il parametro directory_name non è obbligatorio quando si fornisce il parametro gateway_params.

Collegamento dell'endpoint pubblico a una destinazione di Autonomous AI Database senza wallet:

Per connettersi a un Autonomous AI Database su un endpoint pubblico senza un wallet (TLS):

  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Inoltre, per connettersi a un Autonomous AI Database con TCP, il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).

Collegamento endpoint privato senza wallet:

Per connettersi a un Oracle Database di destinazione su un endpoint privato senza wallet:

  • Il database di destinazione deve trovarsi in un endpoint privato.
  • Il parametro directory_name deve essere NULL.
  • Il parametro ssl_server_cert_dn deve essere NULL o non includere questo parametro (il valore predefinito è NULL).
  • Il parametro private_target deve essere TRUE.
gateway_link

Indica se il database link viene creato in un altro Oracle Database o in un Oracle Database Gateway.

Se gateway_link è impostato su FALSE, viene specificato un database link a un altro Autonomous AI Database o a un altro Oracle Database.

Se gateway_link è impostato su TRUE, viene specificato un database link a un sistema non Oracle. In questo modo viene creato un descrittore di connessione nella definizione del database link che specifica (HS=OK).

Quando gateway_link è impostato su TRUE e gateway_params è NULL, viene specificato un database link a un gateway Oracle gestito dal cliente.

Il valore predefinito di questo parametro è FALSE.

public_link

Indica se il database link viene creato come database link pubblico.

Per eseguire DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK con questo parametro impostato su TRUE, l'utente che richiama la procedura deve disporre del privilegio EXECUTE sulla credenziale associata al database link pubblico e del privilegio di sistema CREATE PUBLIC DATABASE LINK. Il privilegio EXECUTE sulla credenziale può essere concesso dall'utente ADMIN o dal proprietario della credenziale.

Il valore predefinito di questo parametro è FALSE.

private_target

Quando un database link accede a un nome host da risolvere in un server DNS VCN, specificare il parametro private_target con il valore TRUE.

Se private_target è TRUE, il parametro hostname deve essere un singolo nome host (su un endpoint privato, che utilizza un indirizzo IP, un IP SCAN o un nome host SCAN non è supportato).

Il valore predefinito di questo parametro è FALSE.

gateway_params

db_type Questo parametro specifica il tipo di database di destinazione per la connettività eterogenea gestita da Oracle per la connessione a database non Oracle. Il valore db_type è uno dei seguenti:

  • awsredshift
  • azure
  • db2
  • google_analytics
  • google_bigquery

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è google_bigquery.

  • hive

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è hive.

  • mongodb
  • mysql
  • postgres
  • salesforce

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è salesforce.

  • servicenow

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è servicenow.

  • snowflake

    * Vedere Note sull'uso per ulteriori gateway_params supportati quando db_type è snowflake.

  • NULL

    Quando gateway_params è NULL e gateway_link è impostato su TRUE, viene specificato un database link a un gateway Oracle gestito dal cliente.

Specificare il parametro con il form json_object.

Ad esempio:

gateway_params => json_object('db_type' value 'awsredshift')

Se gateway_params è NULL e private_target è TRUE, se directory_name è NULL, viene creato un database link basato su TCP.

Se gateway_params è NULL e private_target è TRUE, se directory_name è NULL, viene creato un database link basato su TCPS.

Note sull'uso

Esempi

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
     credential_name => 'DB_LINK_CRED',
     username => 'adb_user',
     password => 'password');
  DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
     db_link_name => 'SALESLINK',
     hostname => 'adb.eu-frankfurt-1.oraclecloud.com',
     port => '1522',
     service_name => 'example_medium.atpc.example.oraclecloud.com',
     ssl_server_cert_dn => 'CN=atpc.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
     credential_name => 'DB_LINK_CRED');
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'AWS_REDSHIFT_LINK_CRED',
    username => 'NICK',
    password => '*password*'
  );
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'AWSREDSHIFT_LINK',
          hostname => 'example.com',
          port => '5439',
          service_name => '*example_service_name*',
          ssl_server_cert_dn => NULL,
          credential_name => 'AWS_REDSHIFT_LINK_CRED',
          gateway_params => JSON_OBJECT('db_type'  value 'awsredshift'));
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'PRIVATE_ENDPOINT_CRED',
    username => 'db_user',
    password => '*password*'
  );
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'PRIVATE_ENDPOINT_DB_LINK',
          hostname => '*exampleHostname*',
          port => '1521',
          service_name => '*exampleServiceName*',
          credential_name => 'PRIVATE_ENDPOINT_CRED',
          ssl_server_cert_dn => NULL,
          directory_name => NULL,
          private_target => TRUE);
END;
/
BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'GOOGLE_BIGQUERY_CRED',
    params => JSON_OBJECT( 'gcp_oauth2' value JSON_OBJECT(
          'client_id' value 'client_i*',
          'client_secret' value 'client_secret',
          'refresh_token' value 'refresh_token' )));

DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
          db_link_name => 'GOOGLE_BIGQUERY_LINK',
          hostname => 'example.com',
          port => '443',
          service_name => 'example_service_name',
          credential_name => 'GOOGLE_BIGQUERY_CRED',
          gateway_params => JSON_OBJECT(
                     'db_type' value 'google_bigquery',
                     'project' value 'project_name1' ));
END;
/

Il nome della tabella specificato quando si utilizza SELECT con Google BigQuery o Google Analytics deve essere tra virgolette. Ad esempio:

SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK

Utilizzare il parametro rac_hostnames con un database Oracle RAC di destinazione su un endpoint privato.

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
     credential_name => 'DB_LINK_CRED1',
     username => 'adb_user',
     password => 'password');
      DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
     db_link_name => 'SALESLINK',
     rac_hostnames => '["sales1-svr1.example.adb.us-ashburn-1.oraclecloud.com",
                        "sales1-svr2.example.adb.us-ashburn-1.oraclecloud.com",
                        "sales1-svr3.example.adb.us-ashburn-1.oraclecloud.com"]',
     port => '1522',
     service_name => 'example_high.adb.oraclecloud.com',
     ssl_server_cert_dn => 'CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
     credential_name => 'DB_LINK_CRED1',
     directory_name => 'EXAMPLE_WALLET_DIR',
     private_target => TRUE);
END;
/

Procedura DETACH_FILE_SYSTEM

Questa procedura scollega un file system dal database.

La procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM scollega un file system dal database. Inoltre, la procedura DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM rimuove le informazioni relative al file system anche dalla vista DBA_CLOUD_FILE_SYSTEMS.

Sintassi

DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM(
    file_system_name         IN VARCHAR2
);

Parametri

Parametro Descrizione
file_system_name

Specifica il nome del file system.

Questo parametro è obbligatorio.

Esempio

BEGIN
   DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
    file_system_name      => 'FSS'
  );
END;
/

Note sull'uso

Procedura DISABLE_EXTERNAL_AUTHENTICATION

Disabilita l'autenticazione utente con schemi di autenticazione esterni per il database.

Sintassi

DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;

Eccezioni

Eccezione Errore Descrizione
invalid_ext_auth ORA-20004 Vedere il messaggio di accompagnamento per una spiegazione dettagliata.

Esempio

BEGIN
   DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/
PL/SQL procedure successfully completed.

Procedura DROP_DATABASE_LINK

Questa procedura elimina un database link.

Sintassi

DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name      IN VARCHAR2,
        public_link       IN BOOLEAN DEFAULT);

Parametri

Parametro Descrizione
db_link_name Il nome del database link da eliminare.
public_link

Per eseguire DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK con public_link impostato su TRUE, è necessario disporre del privilegio di sistema DROP PUBLIC DATABASE LINK.

Il valore predefinito di questo parametro è FALSE.

Esempio

BEGIN
    DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name => 'SALESLINK' );
END;
/

Note sull'uso

Al termine dell'uso di un database link ed esecuzione di DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK, per garantire la sicurezza del database Oracle, rimuovere tutti i file wallet memorizzati. Ad esempio:

Procedura ENABLE_EXTERNAL_AUTHENTICATION

Consente agli utenti di eseguire il login al database con schemi di autenticazione esterni.

Sintassi

DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
   type         IN VARCHAR2,
   force        IN BOOLEAN DEFAULT FALSE,
   params       IN CLOB DEFAULT NULL
);

Parametri

Parametro Descrizione
type

Specifica il tipo di autenticazione esterna. Valori validi: o .

  • 'OCI_IAM'
  • 'AZURE_AD'
  • 'CMU'
  • 'KERBEROS'
force

(Facoltativo) Eseguire l'override di uno schema di autenticazione esterna attualmente abilitato. I valori validi sono TRUE o FALSE.

Il valore predefinito è FALSE.

params

Stringa JSON che fornisce parametri aggiuntivi per l'autenticazione esterna.

Parametri CMU:

  • location_uri: specifica l'URI di storage cloud per il bucket in cui vengono memorizzati i file richiesti per CMU.

    Se si specifica location_uri, nel database è stato creato un oggetto directory nome fisso CMU_WALLET_DIR nel percorso 'cmu_wallet' per salvare i file di configurazione CMU. In questo caso, non è necessario fornire il parametro directory_name.

  • credential_name: specifica le credenziali utilizzate per scaricare i file di configurazione CMU dall'area di memorizzazione degli oggetti all'oggetto directory.

    Il valore predefinito è NULL, che consente di fornire un URL pubblico, preautenticato o prefirmato per il bucket o la sottocartella dell'area di memorizzazione degli oggetti.

  • directory_name: specifica il nome della directory in cui vengono memorizzati i file di configurazione richiesti per CMU. Se viene fornito directory_name, è necessario copiare i file di configurazione CMU dsi.ora e cwallet.sso in questo oggetto directory.

Parametri KERBEROS:

  • location_uri: specifica l'URI di storage cloud per il bucket in cui vengono memorizzati i file richiesti per Kerberos.

    Se si specifica location_uri, nel database è stato creato un oggetto directory nome fisso KERBEROS_DIR per salvare i file di configurazione Kerberos. In questo caso, non è necessario fornire il parametro directory_name.

  • credential_name: specifica le credenziali utilizzate per scaricare i file di configurazione Kerberos dalla posizione dell'area di memorizzazione degli oggetti all'oggetto directory.

    Il valore predefinito è NULL, che consente di fornire un URL pubblico, preautenticato o prefirmato per il bucket o la sottocartella dell'area di memorizzazione degli oggetti.

  • directory_name: specifica il nome della directory in cui vengono memorizzati i file richiesti per Kerberos. Se viene fornito il valore directory_name, è necessario copiare i file di configurazione di Kerberos in questo oggetto directory.
  • kerberos_service_name: specifica un nome da utilizzare come nome del servizio Kerberos. Si tratta di un parametro facoltativo.

    Valore predefinito: se non specificato, il valore kerberos_service_name viene impostato sul GUID dell'istanza di Autonomous AI Database.

Parametri AZURE_AD:

  • tenant_id: ID tenant dell'account Azure. ID tenant specifica la registrazione dell'applicazione Azure AD dell'istanza di Autonomous AI Database.
  • application_id: ID applicazione Azure creato in Azure AD per assegnare ruoli/mapping schema per l'autenticazione esterna nell'istanza di Autonomous AI Database.
  • application_id_uri: URI univoco assegnato all'applicazione Azure.

    Si tratta dell'identificativo per l'istanza di Autonomous AI Database. Il nome deve essere qualificato dal dominio (supporta l'accesso alle risorse tra tenancy).

    La lunghezza massima per questo parametro è di 256 caratteri.

Eccezioni

Eccezione Errore Descrizione
invalid_ext_auth ORA-20004 Vedere il messaggio di accompagnamento per una spiegazione dettagliata.

Note sull'uso

Esempi

Esempio: abilitazione dell'autenticazione OCI_IAM

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'OCI_IAM',
     force=> TRUE );
END;
/

Esempio: abilitazione dell'autenticazione CMU per Microsoft Active Directory

Si passa in un nome di directory che contiene i file di configurazione CMU tramite l'argomento JSON params.

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'CMU',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'CMU_DIR'); // CMU_DIR directory object already exists
END;
/

Si passa un URI di posizione che punta a una posizione di storage degli oggetti che contiene i file di configurazione CMU tramite l'argomento JSON params.

BEGIN
   DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
       type     => 'CMU',
       params   => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
                               'credential_name' value 'my_credential_name')
   );
END;
/

Esempio: Abilita autenticazione Azure AD

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'AZURE_AD',
     force => TRUE,
     params   => JSON_OBJECT( 'tenant_id' VALUE '....',
                              'application_id' VALUE '...',
                              'application_id_uri' VALUE '.....' ));
END;
/

Esempio: abilita autenticazione Kerberos

Si passa in un nome di directory che contiene i file di configurazione Kerberos mediante l'argomento JSON params.

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR'); // KERBEROS_DIR directory object already exists
END;
/

Si passa in un URI di posizione che punta a una posizione di storage degli oggetti che contiene i file di configurazione Kerberos tramite l'argomento JSON params:

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
                           'credential_name' value 'my_credential_name');
END;
/

Si passa un nome di servizio con kerberos_service_name nell'argomento JSON params:

BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
     type => 'KERBEROS',
     force => TRUE,
     params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR', // KERBEROS_DIR directory object already exists
                           'kerberos_service_name' value 'oracle' ));
END;
/

Dopo aver abilitato Kerberos nell'istanza di Autonomous AI Database, utilizzare la query seguente per visualizzare il nome del servizio Kerberos:

SELECT SYS_CONTEXT('USERENV','KERBEROS_SERVICE_NAME') FROM DUAL;

Eccezioni DBMS_CLOUD_ADMIN

Nella tabella seguente vengono descritte le eccezioni per DBMS_CLOUD_ADMIN.

Eccezione Codice Descrizione
invalid_service 20.001 Il servizio specificato non è valido.
service_not_exist 20.002 Il servizio specificato non esiste.
default_service 20.003 Impossibile modificare un servizio specificato.
invalid_char_set 20.029 Precondizione mancante o set di caratteri (nazionale) non valido.
invalid_enc_key_attr 20.030 Argomento mancante o non valido per la gestione delle chiavi.
Already Using Oracle Managed Key 0 Il database sta già utilizzando una chiave gestita da Oracle. Si sta tentando di chiamare la procedura mentre si sta già utilizzando una chiave gestita da Oracle.
Argument Provided for the procedure ORA-0000 Viene fornito un argomento per la procedura. Messaggio di errore previsto: nessun argomento richiesto per questa procedura.

Contenuto correlato