Paquete DBMS_CLOUD_ADMIN
En esta sección se tratan los subprogramas DBMS_CLOUD_ADMIN que se proporcionan con Autonomous AI Database.
| Subprograma | Descripción |
|---|---|
| Procedimiento ATTACH_FILE_SYSTEM | Este procedimiento asocia un sistema de archivos en un directorio de la base de datos. |
| Procedimiento CREATE_DATABASE_LINK | Este procedimiento crea un enlace de base de datos a una base de datos destino. Hay opciones para crear un enlace de base de datos a otra instancia de base de datos de IA autónoma, a una instancia de Oracle Database que no sea una base de datos de IA autónoma o a una instancia que no sea de Oracle Database que utilice conectividad heterogénea gestionada por Oracle. |
| Procedimiento DETACH_FILE_SYSTEM | Este procedimiento separa un sistema de archivos de un directorio de la base de datos. |
| Procedimiento DISABLE_EXTERNAL_AUTHENTICATION | Este procedimiento desactiva la autenticación externa para la instancia de la base de datos de IA autónoma. |
| Procedimiento DROP_DATABASE_LINK | Este procedimiento borra un enlace de base de datos. |
| Procedimiento ENABLE_EXTERNAL_AUTHENTICATION | Este procedimiento permite a un usuario conectarse a la base de datos de IA autónoma mediante el esquema de autenticación externa especificado. |
Procedimiento ATTACH_FILE_SYSTEM
Este procedimiento asocia un sistema de archivos en la base de datos.
El procedimiento DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM asocia un sistema de archivos en la base de datos y almacena información sobre el sistema de archivos en la vista DBA_CLOUD_FILE_SYSTEMS.
Sintaxis
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
);
Parámetros
| parámetro | Descripción |
|---|---|
file_system_name |
Especifica el nombre del sistema del archivo. Este parámetro es obligatorio. |
file_system_location |
Especifica la ubicación del sistema del archivo. El valor que proporciona con Nota: Puede utilizar un FQDN o una dirección IP. Por ejemplo:
Este parámetro es obligatorio. |
directory_name |
Especifica el nombre del directorio para el sistema de archivos adjunto. El directorio debe existir. Este parámetro es obligatorio. |
description |
(Opcional) Proporciona una descripción de la tarea. |
params |
Cadena JSON que proporciona un parámetro adicional para el sistema de archivos.
Valor por defecto: 3 |
Ejemplos
Ejemplo: asociación a un sistema de archivos 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;
/
Ejemplo: asociación a un sistema de archivos 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;
/
Notas de uso
-
Para ejecutar este procedimiento, debe estar conectado como usuario ADMIN o tener el privilegio
EXECUTEenDBMS_CLOUD_ADMIN. -
Debe tener el privilegio
WRITEen el objeto de directorio de la base de datos para adjuntar un sistema de archivos medianteDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM. -
El procedimiento
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMsolo puede asociar un servicio de almacenamiento de archivos privado en bases de datos con puntos finales privados activados.Consulte Servicio OCI File Storage y Configuración de un sistema de desarrollo para acceder a la base de datos para obtener más información.
-
El procedimiento
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMbusca el nombre de host del sistema de archivos de red en la red virtual en la nube (VCN) del cliente. Se devuelve el error"ORA-20000: Mounting NFS fails"si no se puede localizar el nombre de host especificado en la ubicación. -
Oracle Cloud Infrastructure File Storage utiliza NFSv3 para compartir
-
Si se asocia a sistemas que no sean de Oracle Cloud Infrastructure File Storage, el procedimiento admite NFSv3 y NFSv4
-
Si tiene un servidor NFS conectado que utiliza NFSv3 y la versión de NFS se actualiza a NFSv4 en el servidor NFS, debe ejecutar
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMy, a continuación,DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM(mediante el parámetroparamsconnfs_versiondefinido en 4). Esto asocia NFS con el protocolo de coincidencia para que Autonomous AI Database pueda acceder al servidor NFSv4. Sin desconectar y volver a conectar, no se podrá acceder al servidor NFS y es posible que aparezca un error como:"Protocol not supported".
Procedimiento CREATE_DATABASE_LINK
Este procedimiento crea un enlace de base de datos a una base de datos de destino en el esquema que llama a la API.
Los formularios sobrecargados admiten lo siguiente:
-
Al utilizar el parámetro
gateway_params, esto permite crear un enlace de base de datos con conectividad heterogénea gestionada por Oracle donde el enlace está a una base de datos no Oracle soportada. -
Al utilizar el parámetro
rac_hostnames, esto permite crear un enlace de base de datos desde una base de datos de IA autónoma en un punto final privado a una base de datos Oracle RAC de destino. En este caso, utilice el parámetrorac_hostnamespara especificar los nombres de host de uno o más nodos individuales de la base de datos Oracle RAC de destino.
Sintaxis
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);
Parámetros
| parámetro | Descripción |
|---|---|
db_link_name |
Nombre de enlace de base de datos que se va a crear. |
hostname |
El nombre de host de la base de datos de destino. No se permite especificar Al especificar una conexión con conectividad heterogénea gestionada por Oracle mediante el suministro del parámetro
Utilice este parámetro o La entrada |
rac_hostnames |
Especifica los nombres de host para la base de datos Oracle RAC de destino. El valor es una matriz de JSON que especifica uno o más nombres de host individuales para los nodos de la base de datos Oracle RAC de destino. Se pueden transferir varios nombres de host en JSON, separados por un " Cuando el destino es una base de datos Oracle RAC, utilice el parámetro Al especificar una lista de nombres de host en el parámetro Utilice este parámetro o No se permite especificar |
port |
Especifica el puerto para las conexiones a la base de datos destino. Al especificar una conexión con una conectividad heterogénea gestionada por Oracle mediante el parámetro
|
service_name |
Al especificar una conexión con una conectividad heterogénea gestionada por Oracle mediante el parámetro |
ssl_server_cert_dn |
Valor de DN encontrado en el certificado del servidor. La conectividad heterogénea gestionada por Oracle está preconfigurada con una cartera que contiene la mayoría de los certificados SSL intermedios y raíz de confianza comunes. Enlace de punto final público a un destino de base de datos de IA autónoma sin una cartera: Para conectarse a un destino de base de datos de IA autónoma en un punto final público sin cartera (TLS):
Enlace de punto final privado sin cartera: Para conectarse a una instancia de Oracle Database en un punto final privado sin cartera:
|
credential_name |
Nombre de una credencial almacenada creada con DBMS_CLOUD.CREATE_CREDENTIAL. Se trata de las credenciales para acceder a la base de datos destino. |
directory_name |
Directorio para el archivo La conectividad heterogénea gestionada por Oracle está preconfigurada con una cartera que contiene la mayoría de los certificados SSL intermedios y raíz de confianza comunes. El parámetro Enlace de punto final público a un destino de base de datos de IA autónoma sin una cartera: Para conectarse a una base de datos de IA autónoma en un punto final público sin cartera (TLS):
Además, para conectarse a una base de datos de IA autónoma con TCP, el parámetro Enlace de punto final privado sin cartera: Para conectarse a una instancia de Oracle Database de destino en un punto final privado sin cartera:
|
gateway_link |
Indica si el enlace de base de datos se ha creado a otra instancia de Oracle Database o a Oracle Database Gateway. Si Si Cuando El valor predeterminado de este parámetro es |
public_link |
Indica si el enlace de base de datos se ha creado como enlace de base de datos pública. Para ejecutar El valor por defecto de este parámetro es |
private_target |
Cuando un enlace de base de datos accede a un nombre de host que se debe resolver en un servidor DNS de VCN, especifique el parámetro Cuando El valor predeterminado de este parámetro es |
gateway_params |
Especifique el parámetro con el formulario Por ejemplo:
Cuando Cuando |
Notas de uso
-
Al especificar el parámetro
gateway_params, para algunos valoresdb_type, se soportan parámetrosgateway_paramsadicionales:db_typeValores gateway_paramsadicionalesgoogle_analyticsCuando db_typeesgoogle_analytics, la credencial que especifique debe ser una credencial de Google OAuth(gcp_oauth2)Consulte Procedimiento CREATE_CREDENTIAL para obtener más información.google_bigqueryCuando
db_typeesgoogle_bigquery, la credencial que especifique debe ser una credencial de Google OAuth (gcp_oauth2)Consulte Procedimiento CREATE_CREDENTIAL para obtener más información.Cuando
db_typeesgoogle_bigquery, el parámetroprojectes válido. Este parámetro especifica el nombre del proyecto paragoogle_bigqueryy es necesario.El nombre de tabla que especifique al utilizar
SELECTcon Google BigQuery debe estar entre comillas. Por ejemplo:sql SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINKhiveCuando db_typeeshive, el parámetrohttp_pathes válido. Este parámetro especifica el valor de HttpPath, si es necesario, para conectarse a la instancia de Hive.salesforceCuando
db_typeessalesforce, el parámetro:security_tokenes válido. Un token de seguridad es un código alfanumérico sensible a mayúsculas/minúsculas. Se necesita proporcionar un valorsecurity_tokenpara acceder a Salesforce. Por ejemplo:gateway_params => JSON_OBJECT(
'db_type' value 'salesforce',
'security_token' value 'security_token_value' )Consulte Restablecer el token de seguridad para obtener más información.
servicenowPara conectarse a ServiceNow y obtener datos, debe proporcionar los parámetros de gateway
directory_nameyfile_name. Estos parámetros especifican un archivo de modelo (archivo de configuración de REST) que asigna la respuesta de JSON al modelo relacional. El archivo de modelo especifica los puntos finales, la asignación de tablas y el código de respuesta HTTP para procesar la respuesta JSON. Consulte Sintaxis de archivo de modelo y Archivo de modelo de ejemplo para obtener más información.Al utilizar el parámetro
gateway_paramscondb_typeservicenow, hay dos opciones soportadas:Autenticación básica: debe proporcionar el parámetro
gateway_paramsdb_typecon el valor'servicenow'y proporcionar los parámetrosdirectory_nameyfile_namejunto con las credenciales de tipo de nombre de usuario/contraseña.Autenticación de OAuth 2.0: debe proporcionar el parámetro
gateway_paramsdb_typecon el valor'servicenow'y los parámetrosdirectory_name,file_nameytoken_uri, junto con las credenciales de tipo OAuth.
El parámetro
directory_nameespecifica el directorio con el archivo de configuración REST de ServiceNow. Puede crear este directorio de la siguiente manera:create or replace directory servicenow_dir as 'SERVICENOW_DIR';Obtenga y descargue el archivo de configuración REST de ServiceNow en el directorio especificado. Por ejemplo:
exec DBMS_CLOUD.get_object('servicenow_dir_cred',
'https://objectstorage.<...>/servicenow.rest','SERVICENOW_DIR');Defina el valor
file_nameen el nombre del archivo de configuración de REST que ha descargado, "servicenow.rest".A continuación, puede utilizar el archivo de configuración de REST de ServiceNow con autenticación básica o OAuth2.0.
snowflakeCuando
db_typeesSNOWFLAKE, los parámetros opcionales:role,schemaywarehouseson válidos. Estos valores especifican un esquema, rol o valor de almacén distinto del valor por defecto. Por ejemplo:gateway_params => JSON_OBJECT(
'db_type' value 'snowflake',
'role' value 'ADMIN',
'schema' value 'PUBLIC',
'warehouse' value 'TEST'
) -
Al utilizar el parámetro
private_target, tenga en cuenta que los enlaces de base de datos de una base de datos de IA autónoma a un servicio de base de datos que está en un punto final privado solo están soportados en regiones comerciales y regiones del Gobierno de EE. UU.Esta función está activada por defecto en todas las regiones comerciales.
Esta función está activada por defecto en las regiones del Gobierno de EE. UU. para las bases de datos recién aprovisionadas.
Para las bases de datos existentes del Gobierno de EE. UU. en un punto final privado, si desea crear enlaces de base de datos desde una base de datos de IA autónoma a un destino en una región del Gobierno de EE. UU., presente una solicitud de servicio en Oracle Cloud Support y solicite activar el punto final privado en la función de enlace de base de datos de regiones gubernamentales.
Las regiones del Gobierno de EE. UU. incluyen lo siguiente:
-
Al conectarse a una base de datos que no sea de Oracle, el enlace de base de datos solo está soportado si se puede acceder a la base de datos de destino mediante una IP pública o un nombre de host público.
-
Para ejecutar
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKcon un usuario que no sea ADMIN, debe otorgar privilegiosEXECUTEyCREATE DATABASE LINKa ese usuario. Por ejemplo, ejecute el siguiente comando como ADMIN para otorgar privilegios aatpc_user:GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO atpc_user; GRANT CREATE DATABASE LINK TO atpc_user;Además, al crear un enlace de base de datos en un esquema que no sea el esquema ADMIN, por ejemplo, en un esquema denominado
atpc_user, el esquemaatpc_userdebe poseer la credencial que utilice conDBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK. -
Solo un archivo de cartera es válido por directorio especificado con el parámetro
directory_name. Solo puede cargar uncwallet.ssoa la vez en el directorio que seleccione para los archivos de cartera. Esto significa que con uncwallet.ssoen un directorio, solo puede crear enlaces de base de datos a las bases de datos para las que la cartera de ese directorio es válida. Para utilizar varios archivoscwallet.ssocon enlaces de base de datos, debe crear directorios adicionales y colocar cadacwallet.ssoen un directorio diferente.Consulte Crear directorio en base de datos de IA autónoma para obtener información sobre la creación de directorios.
-
Para crear un enlace de base de datos a una base de datos de IA autónoma, defina
GLOBAL_NAMESenFALSEen la base de datos de origen (base de datos de IA no autónoma).ALTER SYSTEM SET GLOBAL_NAMES = FALSE;System altered.SHOW PARAMETER GLOBAL_NAMESNAME TYPE VALUE ---------------------- ----------- ----------- global_names boolean FALSE -
Cuando el parámetro
private_targetesTRUE, el parámetrohostnameespecifica un host privado dentro de la VCN.
Ejemplos
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;
/
El nombre de tabla que especifique al utilizar SELECT con Google BigQuery o Google Analytics debe estar entre comillas. Por ejemplo:
SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
Utilice el parámetro rac_hostnames con una base de datos Oracle RAC de destino en un punto final privado.
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;
/
Procedimiento DETACH_FILE_SYSTEM
Este procedimiento separa un sistema de archivos de la base de datos.
El procedimiento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM separa un sistema de archivos de la base de datos. Además, el procedimiento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM también elimina la información sobre el sistema de archivos de la vista DBA_CLOUD_FILE_SYSTEMS.
Sintaxis
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM(
file_system_name IN VARCHAR2
);
Parámetros
| parámetro | Descripción |
|---|---|
file_system_name |
Especifica el nombre del sistema del archivo. Este parámetro es obligatorio. |
Ejemplo
BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);
END;
/
Notas de uso
-
Para ejecutar este procedimiento, debe estar conectado como usuario ADMIN o tener el privilegio
EXECUTEenDBMS_CLOUD_ADMIN. -
Debe tener el privilegio
WRITEen el objeto de directorio de la base de datos para desasociar un sistema de archivos de un directorio mediante el procedimientoDBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM. -
El procedimiento
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMsolo puede desasociar un servicio de almacenamiento de archivos privado en bases de datos con puntos finales privados activados.Consulte Servicio OCI File Storage y Configuración de un sistema de desarrollo para acceder a la base de datos para obtener más información.
-
El procedimiento
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMbusca el nombre de host del sistema de archivos de red en la red virtual en la nube (VCN) del cliente. Se devuelve el error"ORA-20000: Mounting NFS fails"si no se puede localizar el nombre de host especificado en la ubicación.
Procedimiento DISABLE_EXTERNAL_AUTHENTICATION
Desactiva la autenticación de usuario con esquemas de autenticación externos para la base de datos.
Sintaxis
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
Excepciones
| Excepción | Error | Descripción |
|---|---|---|
invalid_ext_auth |
ORA-20004 |
Consulte el mensaje adjunto para obtener una explicación detallada. |
Ejemplo
BEGIN
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/
PL/SQL procedure successfully completed.
Procedimiento DROP_DATABASE_LINK
Este procedimiento borra un enlace de base de datos.
Sintaxis
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
db_link_name IN VARCHAR2,
public_link IN BOOLEAN DEFAULT);
Parámetros
| parámetro | Descripción |
|---|---|
db_link_name |
Nombre de enlace de base de datos que se va a borrar. |
public_link |
Para ejecutar El valor predeterminado de este parámetro es |
Ejemplo
BEGIN
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
db_link_name => 'SALESLINK' );
END;
/
Notas de uso
Una vez que haya terminado de utilizar un enlace de base de datos y haya ejecutado DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK, para garantizar la seguridad de la base de datos Oracle, elimine los archivos de cartera almacenados. Por ejemplo:
- Elimine el archivo de cartera del almacén de objetos.
- Utilice
DBMS_CLOUD.DELETE_FILEpara eliminar el archivo de cartera del directoriodata_pump_diro del directorio definido por el usuario en el que se ha cargado el archivo de cartera.
Procedimiento ENABLE_EXTERNAL_AUTHENTICATION
Permite a los usuarios conectarse a la base de datos con esquemas de autenticación externos.
Sintaxis
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE,
params IN CLOB DEFAULT NULL
);
Parámetros
| parámetro | Descripción |
|---|---|
type |
Especifica el tipo de autenticación externa. Valores válidos: o .
|
force |
(Opcional) Sustituir un esquema de autenticación externa activado actualmente. Los valores válidos son El valor por defecto es |
params |
Cadena JSON que proporciona parámetros adicionales para la autenticación externa. Parámetros
Parámetros
Parámetros
|
Excepciones
| Excepción | Error | Descripción |
|---|---|---|
invalid_ext_auth |
ORA-20004 |
Consulte el mensaje adjunto para obtener una explicación detallada. |
Notas de uso
-
Con
typeOCI_IAM, si la entidad de recurso no está activada en la instancia de base de datos de IA autónoma, esta rutina activa la entidad de recurso conDBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL. -
Este procedimiento define los parámetros del sistema
IDENTITY_PROVIDER_TYPEyIDENTITY_PROVIDER_CONFIGpara que los usuarios necesarios accedan a la instancia con la autenticación y autorización de Oracle Cloud Infrastructure Identity and Access Management.
Ejemplos
Ejemplo: activación de la autenticación OCI_IAM
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
type => 'OCI_IAM',
force=> TRUE );
END;
/
Ejemplo: activación de la autenticación CMU para Microsoft Active Directory
Transfiere un nombre de directorio que contiene los archivos de configuración de CMU mediante el argumento 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;
/
Puede transferir un URI de ubicación que apunte a una ubicación de Object Storage que contenga archivos de configuración de CMU mediante el argumento 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;
/
Ejemplo: activación de la autenticación de 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;
/
Ejemplo: activación de la autenticación de Kerberos
Transfiere un nombre de directorio que contiene archivos de configuración de Kerberos mediante el argumento 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;
/
Transfiere un URI de ubicación que apunta a una ubicación de Object Storage que contiene archivos de configuración de Kerberos mediante el argumento 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;
/
Transfiere un nombre de servicio con kerberos_service_name en el argumento 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;
/
Después de activar Kerberos en la instancia de la base de datos de IA autónoma, utilice la siguiente consulta para ver el nombre del servicio Kerberos:
SELECT SYS_CONTEXT('USERENV','KERBEROS_SERVICE_NAME') FROM DUAL;
Excepciones de DBMS_CLOUD_ADMIN
En la siguiente tabla se describen las excepciones para DBMS_CLOUD_ADMIN.
| Excepción | Código | Descripción |
|---|---|---|
invalid_service |
20.001 | Se ha especificado un servicio no válido. |
service_not_exist |
20.002 | No existe un servicio especificado. |
default_service |
20.003 | No se puede modificar un servicio especificado. |
invalid_char_set |
20.029 | Falta la condición previa o el juego de caracteres (nacional) no válido. |
invalid_enc_key_attr |
20.030 | Falta el argumento o no es válido para la gestión de claves. |
Already Using Oracle Managed Key |
0 | La base de datos ya está utilizando una clave gestionada por Oracle. Está intentando llamar al procedimiento mientras utiliza una clave gestionada por Oracle. |
Argument Provided for the procedure |
ORA-0000 | Se proporciona un argumento para el procedimiento. Mensaje de error esperado: no se necesitan argumentos para este procedimiento. |