Uso de enlaces de nube para el acceso a datos de solo lectura en Autonomous Database
Los enlaces de nube proporcionan un método basado en la nube para acceder de forma remota a datos de solo lectura en una instancia de Autonomous Database.
- Acerca de los enlaces a la nube en Autonomous Database
Mediante los enlaces a la nube, un propietario de datos registra una tabla o vista para el acceso remoto de un público seleccionado, según lo definido por el propietario de los datos. Los datos se ponen a disposición de aquellos con acceso otorgado en el momento del registro. No se necesitan más acciones para configurar Cloud Links, y quien se supone que debe ver y acceder a sus datos puede detectar y trabajar con los datos. - Otorgar acceso a enlaces de nube para usuarios de base de datos
El usuario ADMIN otorga privilegios a los usuarios de base de datos para registrar juegos de datos. El usuario ADMIN también otorga privilegios a los usuarios de la base de datos para acceder a los juegos de datos registrados. - Registrar o anular el registro de un juego de datos
Puede registrar una tabla o ver su propiedad como juego de datos registrado. Cuando desee eliminar o sustituir el juego de datos, debe anular su registro. - Registrar o anular el registro de un juego de datos en una región diferente
Puede utilizar enlaces de nube en varias regiones, donde la región de origen contiene la base de datos de origen del juego de datos y una o más regiones remotas contienen clonaciones de refrescamiento de la base de datos de origen. - Registro de un juego de datos con autorización necesaria
Si lo desea, al registrar un juego de datos, además del ámbito, puede especificar que se necesita autorización de nivel de base de datos para acceder a un juego de datos. - Registro de un juego de datos con destinos de descarga para el acceso al juego de datos
Si lo desea, al registrar un juego de datos, puede descargar el acceso al juego de datos en una o más instancias de Autonomous Database que sean clonaciones de refrescamiento. - Uso de enlaces de nube de una instancia de Autonomous Database de solo lectura
Puede compartir enlaces de nube cuando un juego de datos reside en una instancia de Autonomous Database de solo lectura. - Búsqueda de juegos de datos y uso de enlaces en la nube
Un usuario al que se le otorgue acceso para leer enlaces en la nube puede buscar juegos de datos disponibles para una instancia de Autonomous Database y puede acceder a juegos de datos registrados y utilizarlos con sus consultas. - Activación del almacenamiento en caché para un consumidor de enlaces en la nube
Puede activar el almacenamiento en caché en un consumidor de juegos de datos para los resultados de una consulta o para un fragmento de consulta que accede a los datos de enlaces en la nube. - Revocación del acceso a enlaces de nube para usuarios de base de datos
El usuario ADMIN puede revocar el registro para impedir que un usuario registre juegos de datos para el acceso remoto. El usuario ADMIN también puede revocar privilegios o usuarios de base de datos para acceder a los juegos de datos registrados. - Supervisión y visualización de información de enlaces en la nube
Autonomous Database proporciona vistas que le permiten supervisar y auditar enlaces en la nube. - Definición de una política de base de datos privada virtual para proteger un juego de datos registrado
Al definir políticas de base de datos privada virtual (VPD) para un juego de datos registrado, puede proporcionar un control de acceso detallado de enlace en la nube para que solo un subjuego de datos (filas) esté visible para sitios remotos específicos. - Notas sobre enlaces en la nube
Proporciona notas y restricciones para utilizar enlaces en la nube.
Tema principal: Uso compartido de datos
Acerca de los enlaces a la nube en Autonomous Database
Mediante los enlaces a la nube, un propietario de datos registra una tabla o vista para el acceso remoto de un público seleccionado, según lo definido por el propietario de los datos. Los datos se ponen a disposición de aquellos con acceso otorgado en el momento del registro. No se necesitan más acciones para configurar Cloud Links, y quien se supone que debe ver y acceder a sus datos puede detectar y trabajar con los datos.
La implantación de enlaces en la nube aprovecha los mecanismos de acceso de Oracle Cloud Infrastructure para que los datos sean accesibles en un ámbito específico. Ámbito indica quién puede acceder a los datos de forma remota. El ámbito se puede definir en varios niveles, incluso en la región en la que reside la base de datos, en arrendamientos individuales o en compartimentos. Además, puede especificar que la autorización para acceder a un juego de datos esté limitada a una o más instancias de Autonomous Database.
Al crear una o más clonaciones de refrescamiento entre regiones a partir de la instancia de Autonomous Database de origen (propietario del juego de datos), puede utilizar enlaces en la nube para compartir datos en varias regiones.
Los enlaces en la nube simplifican en gran medida el uso compartido de tablas o vistas en las instancias de Autonomous Database, en comparación con los mecanismos de enlace de base de datos tradicionales. Con Cloud Links puede detectar datos sin necesidad de configurar enlaces de base de datos complejos. Autonomous Database proporciona acceso transparente mediante SQL e implanta la aplicación de privilegios con el ámbito de enlaces en la nube y otorgando autorización a instancias individuales de Autonomous Database.
Cloud Links presenta los conceptos de espacios de nombres regionales y nombres de datos que se hacen accesibles de forma remota. Esto es similar a las tablas de Oracle existentes en las que hay una tabla, por ejemplo "EMP"
que reside en un espacio de nombres (esquema), por ejemplo "LWARD"
. Solo puede haber un LWARD.EMP
en la base de datos. Los enlaces en la nube proporcionan un espacio de nombres y un nombre similares en un nivel regional, que no están enlazados a una sola base de datos, pero se aplican a muchas instancias de Autonomous Database como se especifica con el ámbito y, opcionalmente, con la autorización de la base de datos.
Por ejemplo, puede registrar un juego de datos en el espacio de nombres FOREST
y, por motivos de seguridad o para facilitar la nomenclatura, puede proporcionar un espacio de nombres y un nombre que no sean los nombres de objeto y esquema originales. En este ejemplo, TREE_DATA
es el nombre visible del juego de datos registrado y no es necesario que este nombre sea el nombre de la tabla de origen. Además del espacio de nombres y el nombre, la palabra clave cloud$link
indica a la base de datos que debe resolver el origen como un enlace en la nube.
Para acceder a un juego de datos registrado, incluya el espacio de nombres, el nombre y la palabra clave cloud$link
en la cláusula FROM
de una sentencia SELECT
:
SELECT county, species, height FROM FOREST.TREE_DATA@cloud$link;
Opcionalmente, puede especificar que el acceso a un juego de datos de una o más bases de datos se descargue en una clonación de refrescamiento. Cuando se muestra una instancia de Autonomous Database de consumidor en la lista de descarga de un juego de datos, el acceso al juego de datos se dirige a la clonación de refrescamiento.
Existen varios conceptos y términos que se pueden utilizar al trabajar con enlaces en la nube:
-
Juego de datos registrados (juego de datos): identifica una tabla o vista que se ha activado para el acceso remoto en una instancia de Autonomous Database. Un juego de datos registrado también indica quién tiene permiso para acceder al juego de datos (su ámbito). El registro de juegos de datos define un espacio de nombres y un nombre para su uso con enlaces de nube. Después del registro del juego de datos, estos valores especifican conjuntamente el nombre completo (FQN) para el acceso remoto y permiten que los enlaces de nube gestionen la accesibilidad del juego de datos.
-
Propietario de juego de datos: especifique un propietario de juego de datos para proporcionar un punto de contacto para preguntas sobre un juego de datos.
-
Ámbito: especifica quién y desde dónde se permite a un usuario acceder a un juego de datos registrado. Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información sobre el ámbito.
-
OCID (identificador de Oracle Cloud): identifica un arrendamiento, compartimento o base de datos específicos. El ámbito de un juego de datos registrado se puede expresar en términos de OCID. Consulte Identificadores de recursos para obtener más información.
-
Registro de datos: con el registro de datos, un usuario hace que una tabla o vista esté disponible para el acceso remoto, sujeto a las restricciones de acceso impuestas por ámbito y, opcionalmente, sujeto a un paso de autorización adicional. Puede permitir el acceso remoto con enlaces a la nube en una tabla o vista almacenada en la base de datos o en datos almacenados en el almacén de objetos.
-
Detección de datos: un juego de datos registrado se puede detectar mediante consultas de texto de la base de datos. La detección solo muestra un juego de datos si hay un privilegio para acceder al juego de datos. Puede buscar un juego de datos registrado por nombre o por descripción.
-
Descripción de datos: permite a un usuario recuperar una descripción o metadatos para una tabla o vista que está disponible como juego de datos registrado.
-
Destinos de descarga: si lo desea, puede especificar uno o más destinos de descarga. Los destinos de descarga son clonaciones de refrescamiento que proporcionan juegos de datos de enlaces en la nube a instancias de Autonomous Database especificadas. Al especificar un destino de descarga, puede dedicar una instancia de Autonomous Database para proporcionar juegos de datos para separar la producción del desarrollo, para el rendimiento, para garantizar la seguridad o por otros motivos. Consulte Uso de clonaciones de refrescamiento con Autonomous Database para obtener más información.
Cualquier acceso a un juego de datos registrado mediante enlaces en la nube se registra con fines de auditoría. El log incluye el arrendamiento, el compartimento o la base de datos a los que se ha accedido al juego de datos, la cantidad de datos a los que se ha accedido e información adicional. Las vistas V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS muestran información de auditoría.
Los enlaces en la nube proporcionan acceso de solo lectura a objetos remotos en una instancia de Autonomous Database. Si desea utilizar enlaces de base de datos con otras bases de datos Oracle o con bases de datos no Oracle, o si desea utilizar los datos remotos con operaciones DML, debe utilizar enlaces de base de datos. Consulte Uso de enlaces de base de datos con Autonomous Database para obtener más información.
Metadatos de Juego de Datos y Vistas de Auditoría
Cada instancia de Autonomous Database proporciona vistas que exponen los metadatos del juego de datos y que le permiten supervisar y auditar el uso de datos. Consulte Supervisión y visualización de información de enlaces en la nube para obtener más información.
- Ámbito de juego de datos, control de acceso y autorización
Los enlaces en la nube utilizan mecanismos de acceso de Oracle Cloud Infrastructure para que los juegos de datos registrados sean accesibles y para proteger los datos con restricciones de acceso.
Ámbito de juego de datos, control de acceso y autorización
Autonomous Database determina la accesibilidad de los juegos de datos registrados de la siguiente forma:
-
El usuario ADMIN especifica un ámbito para un usuario que permite al usuario registrar juegos de datos según el ámbito proporcionado.
-
Un usuario al que se le han otorgado privilegios para registrar juegos de datos especifica un ámbito cuando registra un juego de datos.
-
De manera opcional, al registrar un juego de datos, un usuario al que se le han otorgado privilegios de autorización puede especificar que se necesite un paso de autorización para acceder a un juego de datos. Este paso de autorización se suma a la autorización de acceso de nivel de ámbito.
Ámbito de juego de datos
El ADMIN define el ámbito de un usuario con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
para que sea uno de los siguientes:
'MY$REGION'
'MY$TENANCY'
'MY$COMPARTMENT'
El ámbito de un usuario es jerárquico, lo que significa que un usuario al que se le otorga uno de estos ámbitos puede permitir el acceso de la siguiente manera:
-
MY$REGION
: un usuario puede otorgar acceso de datos remoto a otros arrendamientos de la región de la instancia de Autonomous Database que registra el juego de datos. Este es el ámbito menos restrictivo. -
MY$TENANCY
: un usuario puede otorgar acceso remoto a datos a cualquier recurso, arrendamiento, compartimento o base de datos del arrendamiento de la instancia de Autonomous Database que registre el juego de datos. Este ámbito es más restrictivo que el ámbitoMY$REGION
. -
MY$COMPARTMENT
: un usuario puede otorgar acceso remoto a datos a cualquier recurso, compartimento o base de datos del compartimento de la instancia de Autonomous Database que registra el juego de datos. Este es el ámbito más restrictivo que puede definir para un usuario conGRANT_REGISTER
.
A continuación, el ámbito definido al registrar un juego de datos determina desde dónde se permite a los usuarios acceder al juego de datos. DBMS_CLOUD_LINK.REGISTER
scope
es una lista separada por comas que consta de uno o más de los siguientes elementos:
-
OCID de la base de datos: se permite acceso al juego de datos para las instancias específicas de Autonomous Database identificadas por OCID.
-
OCID de compartimento: se permite el acceso al juego de datos para las bases de datos en los compartimentos identificados por el OCID de compartimento.
-
OCID del arrendamiento: se permite el acceso al juego de datos para las bases de datos en los arrendamientos identificados por el OCID del arrendamiento.
-
Nombre de la región: se permite el acceso al juego de datos para las bases de datos en la región identificada por la región con nombre. En todos los casos, el acceso a enlaces en la nube está limitado a una sola región y no es un acceso entre regiones.
-
MY$COMPARTMENT
: se permite el acceso al juego de datos para las bases de datos del mismo compartimento que el del propietario del juego de datos. -
MY$TENANCY
: se permite el acceso al juego de datos para las bases de datos del mismo arrendamiento que el del propietario del juego de datos. -
MY$REGION
: se permite el acceso al juego de datos para las bases de datos de la misma región que el propietario del juego de datos.
Los valores de ámbito, MY$REGION
, MY$TENANCY
y MY$COMPARTMENT
, son variables que actúan como macros de conveniencia y se resuelven en OCID.
El ámbito definido al registrar un juego de datos solo se respeta cuando coincide o es más restrictivo que el valor definido con
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Por ejemplo, supongamos que el ADMIN ha otorgado el ámbito 'MY$TENANCY'
con GRANT_REGISTER
y que el usuario especifica 'MY$REGION'
al registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER
. En este caso, verían un error como el siguiente:ORA-20001: Share privileges are not enabled for current user or it is enabled but not for scope MY$REGION
También puede utilizar un mecanismo de control de acceso adicional basado en un valor SYS_CONTEXT
. Este mecanismo utiliza la función DBMS_CLOUD_LINK.GET_DATABASE_ID
que devuelve un identificador que está disponible como valor SYS_CONTEXT
.
Al registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER
, puede utilizar el valor SYS_CONTEXT
en las políticas de seguridad de Oracle Virtual Private Database (VPD) para controlar el acceso a la base de datos para restringir y controlar aún más a qué datos específicos pueden acceder las instancias individuales de Autonomous Database.
Consulte Definición de una política de base de datos privada virtual para proteger un juego de datos registrado para obtener más información sobre el uso de políticas de VPD.
El valor de ID de base de datos también está disponible en las vistas V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS, que realizan un seguimiento de las estadísticas de acceso y la información de auditoría.
Consulte Uso de Oracle Virtual Private Database para controlar el acceso a datos para obtener más información.
Autorización del Juego de Datos
Al registrar un juego de datos, si se le han otorgado privilegios de autorización, puede especificar que la autorización de OCID de base de datos es necesaria para acceder a un juego de datos. Para proporcionar autorización de OCID de base de datos para un juego de datos, utilice el procedimiento DBMS_CLOUD_LINK.GRANT_AUTHORIZATION
para especificar las instancias de Autonomous Database autorizadas para acceder al juego de datos. Antes de ejecutar DBMS_CLOUD_LINK.GRANT_AUTHORIZATION
, el administrador debe autorizarle a ejecutar este procedimiento con DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE
.
El registro del juego de datos con la autorización necesaria especifica el acceso a nivel de base de datos para un juego de datos, además del control de acceso de ámbito especificado para el juego de datos, de la siguiente manera:
-
Las bases de datos que están dentro del
SCOPE
especificado y que se han autorizado conDBMS_CLOUD_LINK.GRANT_AUTHORIZATION
pueden ver filas del juego de datos. -
Cualquier base de datos que esté dentro del valor
SCOPE
especificado pero no se haya autorizado conDBMS_CLOUD_LINK.GRANT_AUTHORIZATION
no puede ver las filas del juego de datos. En este caso, los consumidores sin autorización ven el juego de datos como vacío. -
Las bases de datos que no están dentro del
SCOPE
especificado ven un error al intentar acceder al juego de datos.
Tema principal: Acerca de los enlaces a la nube en Autonomous Database
Otorgar acceso a enlaces de nube para usuarios de base de datos
El usuario ADMIN otorga privilegios a los usuarios de la base de datos para registrar juegos de datos. El usuario ADMIN también otorga privilegios a los usuarios de la base de datos para acceder a los juegos de datos registrados.
Cuando el usuario ADMIN otorga privilegios de registro, proporciona un ámbito que especifica el ámbito máximo que un usuario puede proporcionar al registrar un juego de datos (dentro de la jerarquía de ámbito). Los valores scope
válidos para su uso con DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
son:
'MY$REGION'
'MY$TENANCY'
'MY$COMPARTMENT'
Consulte Ámbito de juego de datos, control de acceso y autorización para obtener más información.
Notas para otorgar privilegios a los usuarios de la base de datos para registrar juegos de datos:
-
Para registrar juegos de datos o ver y acceder a juegos de datos remotos, debe haber otorgado el privilegio adecuado para registrarse en
DBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
o para leer juegos de datos conDBMS_CLOUD_LINK_ADMIN.GRANT_READ
.Esto también es cierto para el usuario ADMIN; sin embargo, el usuario ADMIN puede otorgar privilegios a sí mismo.
-
Las vistas
DBA_CLOUD_LINK_PRIVS
yUSER_CLOUD_LINK_PRIVS
proporcionan información sobre los privilegios de usuario. Consulte Supervisión y visualización de información de enlaces en la nube para obtener más información. -
Un usuario puede ejecutar la siguiente consulta para comprobar si está activado para autenticar juegos de datos protegidos registrados:
SELECT SYS_CONTEXT('USERENV', 'CLOUD_LINK_AUTH_ENABLED') FROM DUAL;
Registro o anulación del registro de un juego de datos
Puede registrar una tabla o ver su propiedad como un juego de datos registrado. Cuando desee eliminar o sustituir el juego de datos, debe anular su registro.
El registro de juegos de datos define un espacio de nombres y un nombre para su uso con enlaces de nube. Después del registro del juego de datos, estos valores especifican conjuntamente el nombre completo (FQN) para el acceso remoto y permiten que los enlaces de nube gestionen la accesibilidad del juego de datos.
Si desea revocar el acceso remoto a un juego de datos registrado, puede anular el registro del juego de datos.
BEGIN
DBMS_CLOUD_LINK.UNREGISTER
(
namespace => 'TRUSTED_COMPARTMENT',
name => 'SALES');
END;
/
Consulte Procedimiento UNREGISTER para obtener más información.
- Notas para registrar o anular el registro de un juego de datos
Proporciona notas para registrar un juego de datos conDBMS_CLOUD_LINK.REGISTER
y anular el registro de un juego de datos conDBMS_CLOUD_LINK.UNREGISTER
.
Notas para registrar o anular el registro de un juego de datos
Proporciona notas para registrar un juego de datos con DBMS_CLOUD_LINK.REGISTER
y anular el registro de un juego de datos con DBMS_CLOUD_LINK.UNREGISTER
.
-
Después de registrar un objeto, puede que los usuarios tengan que esperar hasta diez (10) minutos para acceder al objeto con enlaces en la nube.
-
Cuando registra un juego de datos y desea que los consumidores de una región remota accedan al juego de datos, debe realizar pasos adicionales para que el juego de datos esté disponible en una región remota. Consulte Registro o anulación del registro de un juego de datos en una región diferente para obtener más información.
-
Para cambiar el ámbito de un juego de datos existente, primero debe anular el registro del juego de datos con
DBMS_CLOUD_LINK.UNREGISTER
. A continuación, debe registrar el juego de datos con el nuevo ámbito conDBMS_CLOUD_LINK.REGISTER
. El tiempo total de espera para estas dos operaciones puede ser de hasta 20 minutos, incluidos 10 minutos para anular el registro y otros 10 minutos para que el registro se propague y se pueda acceder a él a través de enlaces en la nube.Este retraso también puede afectar a la visibilidad del juego de datos en las vistas
DBA_CLOUD_LINK_REGISTRATIONS
yDBA_CLOUD_LINK_ACCESS
. -
Puede registrar una tabla o vista que reside en el esquema de otro usuario cuando tiene privilegios
READ
WITH
GRANT
OPTION
para la tabla o vista. -
Autonomous Database no realiza comprobaciones de validez jerárquica en el momento del registro y los registros que están fuera del ámbito nunca serán visibles ni accesibles.
Por ejemplo, tenga en cuenta la siguiente secuencia:
-
Un usuario con el ámbito
MY$COMPARTMENT
registra un objeto con un ámbito que especifica un OCID de base de datos individual. -
Cuando un usuario solicita acceso al juego de datos registrado, Autonomous Database realiza la comprobación para ver que el OCID de la base de datos en la que se origina la solicitud está en la lista de OCID especificada con
scope
cuando se registró el juego de datos. -
Después de esto, el objeto
namespace.name
se podrá detectar, ver y utilizar en la base de datos en la que se originó la solicitud.
-
-
DBMS_CLOUD_LINK.UNREGISTER
puede tardar hasta diez (10) minutos en propagarse por completo, después de lo cual se puede acceder a los datos de forma remota.
Tema principal: Registro o anulación del registro de un juego de datos
Registro o anulación del registro de un juego de datos en otra región
Puede utilizar enlaces a la nube en varias regiones, donde la región de origen contiene la base de datos de origen del juego de datos y una o más regiones remotas contienen clonaciones de refrescamiento de la base de datos de origen.
![Descripción de cloud-links-cross-region-refreshable-clone.png a continuación Descripción de cloud-links-cross-region-refreshable-clone.png a continuación](img/cloud-links-cross-region-refreshable-clone.png)
Para utilizar enlaces a la nube con un juego de datos en una región diferente:
Puede anular el registro de un juego de datos remoto solo en las regiones remotas o en las regiones remotas y en la región de origen:
Para anular el registro de un juego de datos en una región remota y desactivar el acceso remoto al juego de datos:
-
En la clonación de refrescamiento, anule el registro del juego de datos.
Por ejemplo:
BEGIN
DBMS_CLOUD_LINK.UNREGISTER
( namespace => 'TRUSTED_COMPARTMENT', name => 'SALES'); END; / -
Refresque la clonación de refrescamiento.
Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.
Para anular el registro de un juego de datos en la base de datos origen y anular el registro del juego de datos en clonaciones de refrescamiento de región remota:
-
En la clonación de refrescamiento remoto, si solo hay una, o en varias clonaciones de refrescamiento en regiones remotas, si hay más de una, anule el registro del juego de datos.
Por ejemplo:
BEGIN
DBMS_CLOUD_LINK.UNREGISTER
( namespace => 'TRUSTED_COMPARTMENT', name => 'SALES'); END; / -
En la base de datos origen, anule el registro del juego de datos.
Consulte Registro o anulación del registro de un juego de datos para obtener más información.
-
Refresque las clonaciones de refrescamiento.
Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.
- Notas para registrar o anular el registro de un juego de datos en una región remota
Proporciona notas para registrar un juego de datos en una región remota.
Notas para registrar o anular el registro de un juego de datos en una región remota
Proporciona notas para registrar un juego de datos en una región remota.
-
Al registrar un juego de datos en una clonación de refrescamiento en una región remota, la llamada de
DBMS_CLOUD_LINK.REGISTER
en la clonación de región remota debe utilizar los mismos parámetros con los mismos valores que en la base de datos origen, con la excepción del parámetrooffload_targets
.Por ejemplo, al ejecutar
DBMS_CLOUD_LINK.REGISTER
con el ámbito definido enMY$COMPARTMENT
en la instancia de Autonomous Database de origen, vuelva a ejecutar el procedimiento en la clonación de refrescamiento entre regiones con el mismo valor de parámetro de ámbito (MY$COMPARTMENT
). -
Si especifica el parámetro
offload_targets
conDBMS_CLOUD_LINK.REGISTER
en el origen, debe omitir este parámetro al registrar el juego de datos en la clonación de refrescamiento. -
Después de registrar un objeto, puede que los usuarios tengan que esperar hasta diez (10) minutos para acceder al objeto con enlaces en la nube.
-
Las siguientes acciones requieren que refresque la clonación de refrescamiento:
-
Si agrega una política de VPD al juego de datos en el origen, debe refrescar la clonación de refrescamiento.
-
Si realiza un permiso o una revocación para el juego de datos en la base de datos origen, debe refrescar la clonación de refrescamiento.
Consulte Refrescamiento de una clonación de refrescamiento en Autonomous Database para obtener más información.
-
Registro de un juego de datos con autorización necesaria
Opcionalmente, al registrar un juego de datos, además del ámbito, puede especificar que la autorización de nivel de base de datos es necesaria para acceder a un juego de datos.
En comparación con el ejemplo anterior, donde ha definido auth_required
en FALSE
, en este ejemplo ha definido auth_required
en TRUE
. Cuando auth_required
es TRUE
, se necesitan pasos adicionales para especificar una o más bases de datos desde las que se autoriza el acceso al juego de datos.
Solo puede otorgar autorización, como se muestra en estos pasos, si está autorizado. El administrador otorga privilegios de autorización con
DBMS_CLOUD_LINK_ADMIN.GRANT_AUTHORIZE
.
Si desea revocar la autorización para una base de datos:
BEGIN
DBMS_CLOUD_LINK.REVOKE_AUTHORIZATION
(
database_id => '120xxxxxxx8506029999',
namespace => 'TRUSTED_COMPARTMENT',
name => 'SALES');
END;
/
Puede obtener más información en los siguientes enlaces:
Registro de un juego de datos con destinos de descarga para el acceso al juego de datos
Opcionalmente, al registrar un juego de datos, puede descargar el acceso al juego de datos en una o más instancias de Autonomous Database que sean clonaciones de refrescamiento.
Utilice el parámetro offload_targets
opcional con DBMS_CLOUD_LINK.REGISTER
para especificar que el acceso se descarga para refrescar las clonaciones. La base de datos de origen de cada clonación de refrescamiento es la instancia de Autonomous Database en la que registra el juego de datos (editor de datos).
El valor offload_targets
es un documento JSON que define uno o más pares de valores de clave CLOUD_LINK_DATABASE_ID
y OFFLOAD_TARGET
:
-
CLOUD_LINK_DATABASE_ID
es uno de los siguientes:-
Un ID de base de datos: especifica un ID de base de datos para el consumidor del juego de datos cuya solicitud se descarga en la clonación de refrescamiento correspondiente especificada con el valor
OFFLOAD_TARGET
.Obtenga el ID de base de datos ejecutando
DBMS_CLOUD_LINK.GET_DATABASE_ID
. Consulte Función GET_DATABASE_ID para obtener más información. -
ANY
: especifica que cualquier solicitud del consumidor del juego de datos se descarga en el destino de descarga correspondiente. La solicitud de juego de datos de un consumidor se enrutará al destino de descarga correspondiente.Si especifica
ANY
sin especificar identificadores de base de datos, todas las solicitudes de juego de datos de los consumidores se descargan en la clonación de refrescamiento especificada con el valorOFFLOAD_TARGET
.Si especifica tanto los ID de base de datos como
ANY
, las solicitudes de juegos de datos de los consumidores que no coinciden con un ID de base de datos se descargan en la clonación de refrescamiento especificada con el valorOFFLOAD_TARGET
.
-
-
OFFLOAD_TARGET
es el OCID de una instancia de Autonomous Database que es una clonación de refrescamiento.
En la siguiente figura, se muestra el uso de destinos de descarga.
![Descripción de Cloud-links-offload-targets-any-keyword.eps a continuación Descripción de Cloud-links-offload-targets-any-keyword.eps a continuación](img/cloud-links-offload-targets-any-keyword.png)
Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con offload_targets
y el ID de base de datos de la instancia de Autonomous Database coincide con el valor especificado en CLOUD_LINK_DATABASE_ID
, el acceso se descarga en la clonación de refrescamiento identificada con OFFLOAD_TARGET
en el JSON proporcionado.
Por ejemplo, a continuación se muestra un ejemplo de JSON con tres pares de valores OFFLOAD_TARGET
/CLOUD_LINK_DATABASE_ID
:
{
"OFFLOAD_TARGETS": [
{
"CLOUD_LINK_DATABASE_ID": "34xxxxx69708978",
"OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfabc"
},
{
"CLOUD_LINK_DATABASE_ID": "34xxxxx89898978",
"OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdef"
},
{
"CLOUD_LINK_DATABASE_ID": "34xxxxx4755680",
"OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfghi"
}
]
}
Cuando un consumidor de juego de datos solicita acceso a un juego de datos que se registra con offload_targets
que incluye la palabra clave ANY
, el acceso se descarga en la clonación de refrescamiento identificada con OFFLOAD_TARGET
en el JSON proporcionado (excepto las solicitudes de los consumidores que tienen una entrada de ID de base de datos coincidente en el JSON proporcionado).
Por ejemplo, a continuación se muestra un ejemplo de JSON con un par de valores OFFLOAD_TARGET
/CLOUD_LINK_DATABASE_ID
explícito y un valor ANY
con un valor OFFLOAD_TARGET
correspondiente:
{
"OFFLOAD_TARGETS": [
{
"CLOUD_LINK_DATABASE_ID": "ANY",
"OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdef"
},
{
"CLOUD_LINK_DATABASE_ID": "34xxxxx4755680",
"OFFLOAD_TARGET":
"ocid1.autonomousdatabase.oc1..xxxxx3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfghi"
}
]
}
Para registrar un juego de datos y especificar destinos de descarga, realice lo siguiente:
Uso de enlaces en la nube desde una instancia de Autonomous Database de solo lectura
Puede compartir enlaces de nube cuando un juego de datos reside en una instancia de Autonomous Database de solo lectura.
Buscar juegos de datos y utilizar enlaces a la nube
Un usuario al que se le otorgue acceso para leer enlaces en la nube puede buscar juegos de datos disponibles para una instancia de Autonomous Database y puede acceder a juegos de datos registrados y utilizarlos con sus consultas.
Después de que el usuario ADMIN ejecute GRANT_READ
, un usuario puede buscar y utilizar enlaces en la nube.
Activación del almacenamiento en caché para un consumidor de enlaces en la nube
Puede activar el almacenamiento en caché en un consumidor de juegos de datos para los resultados de una consulta o para un fragmento de consulta que accede a los datos de Cloud Link.
Para activar el almacenamiento en caché en un consumidor de juego de datos, utilice la indicación RESULT_CACHE
con la opción SHELFLIFE
. Con la opción SHELFLIFE
, proporciona un valor que indica la duración, en segundos, de que un resultado de consulta se almacena en caché. Una vez transcurrido el intervalo SHELFLIFE
, el resultado almacenado en caché se marca como no válido. Mientras el resultado almacenado en caché sea válido, una consulta recupera los datos almacenados en caché de la caché en la base de datos de consumidores, lo que evita una ida y vuelta a la base de datos del propietario del juego de datos.
Utilice la indicación RESULT_CACHE
con la opción SHELFLIFE
cuando el juego de datos sea estático o cuando el consumidor pueda tolerar resultados obsoletos. El valor SHELFLIFE
permite al consumidor del juego de datos de Cloud Link controlar el tiempo, en segundos, en que los datos de la caché son válidos (el grado aceptable de caducidad).
Si el resultado de la consulta es grande y no cabe en la memoria, puede utilizar la indicación RESULT_CACHE
con la opción SHELFLIFE
y la opción TEMP
para indicar que el resultado se debe escribir en el disco del tablespace temporal.
Para almacenar en caché los datos de Cloud Link con la indicación RESULT_CACHE
:
Consulte RESULT_CACHE_MODE para obtener más información sobre el uso de la caché de resultados con Autonomous Database.
Consulte DBMS_RESULT_CACHE para obtener información sobre los procedimientos para gestionar la caché de resultados y para invalidar objetos en la caché de resultados.
Revocar acceso a enlaces de nube para usuarios de base de datos
El usuario ADMIN puede revocar el registro para impedir que un usuario registre juegos de datos para el acceso remoto. El usuario ADMIN también puede revocar privilegios o usuarios de base de datos para acceder a los juegos de datos registrados.
Supervisión y visualización de información de enlaces de nube
Autonomous Database proporciona vistas que le permiten supervisar y auditar enlaces en la nube.
Ver | Descripción |
---|---|
Vistas de V$CLOUD_LINK_ACCESS_STATS y GV$CLOUD_LINK_ACCESS_STATS |
Se utiliza para realizar un seguimiento del acceso a cada juego de datos registrado en la instancia de Autonomous Database. Estas vistas realizan un seguimiento del tiempo transcurrido, el tiempo de CPU, el número de filas recuperadas e información adicional sobre los juegos de datos registrados. Puede utilizar la información de estas vistas para auditar el acceso y el uso del juego de datos Enlaces en la nube. |
Vistas DBA_CLOUD_LINK_REGISTRATIONS y ALL_CLOUD_LINK_REGISTRATIONS |
Se utiliza para mostrar los detalles de los juegos de datos registrados en una instancia de Autonomous Database. |
Vistas DBA_CLOUD_LINK_ACCESS y ALL_CLOUD_LINK_ACCESS |
Se utiliza para recuperar detalles de juegos de datos registrados a los que puede acceder una base de datos. |
Vista DBA_CLOUD_LINK_AUTHORIZATIONS |
Proporciona información sobre qué bases de datos están autorizadas para acceder a qué juegos de datos. Esto se aplica a los juegos de datos en los que el parámetro |
Proporciona información sobre los privilegios específicos de Cloud Link, |
Definición de una política de base de datos privada virtual para proteger un juego de datos registrado
Oracle Virtual Private Database (VPD) es una función de seguridad que permite controlar el acceso a los datos de forma dinámica a nivel de fila para usuarios y aplicaciones mediante la aplicación de filtros en el mismo juego de datos.
Cualquier usuario al que se le otorgue acceso para leer enlaces en la nube puede acceder y utilizar juegos de datos registrados si están dentro del ámbito especificado cuando se registra el juego de datos y si se define el parámetro de autorización adicional necesaria para el juego de datos, el acceso es desde una base de datos autorizada. Cada acceso remoto se realiza en el contexto de la instancia remota de Autonomous Database que accede al juego de datos registrado (en la base de datos en la que se registró el juego de datos).
La función DBMS_CLOUD_LINK.GET_DATABASE_ID
se utiliza en el sistema remoto para obtener el ID único de la base de datos. Al definir una política de VPD en la base de datos que registró un juego de datos, ahora puede utilizar el identificador de la base de datos remota como regla SYS_CONTEXT
para proporcionar un control más detallado. Puede definir reglas para bases de datos remotas que accedan a su juego de datos registrado y limitar el acceso más allá de lo posible especificando un ámbito de Cloud Link.
Considere un ejemplo en el que REGIONAL_SALES.SALES_AGG
esté disponible en el nivel de arrendamiento. Si desea restringir el acceso a todas las bases de datos excepto a una base de datos específica, lo que solo permite el acceso completo a la base de datos especificada, puede agregar una política de VPD en el juego de datos registrado.
Por ejemplo:
Consulte Uso de Oracle Virtual Private Database para controlar el acceso a datos para obtener más información.
Notas para enlaces de nube
Proporciona notas y restricciones para utilizar enlaces en la nube.
-
Hay un límite de 4096 en el número de conjuntos de datos que puede registrar.
Cada instancia de Autonomous Database no puede registrar más de 4096 juegos de datos. Este límite se aplica a todas las instancias de Autonomous Database, independientemente del número de ECPU (OCPU si la base de datos utiliza OCPU) o del tamaño de almacenamiento de la instancia. El límite es un valor fijo y la configuración del recuento de ECPU en un valor mayor no permite registrar más juegos de datos.
-
Puede registrar un objeto en otro esquema si tiene el privilegio
READ WITH GRANT OPTION
en el objeto. -
Para registrar juegos de datos o ver y acceder a juegos de datos remotos, debe haber otorgado el privilegio adecuado para registrar o leer juegos de datos. Esto también es cierto para ADMIN; sin embargo, ADMIN puede otorgar este privilegio a sí mismo.
-
Para utilizar
DBMS_CLOUD_LINK.REGISTER
, debe tener el privilegio de ejecución en el paqueteDBMS_CLOUD_LINK
, además del privilegio de registro asignado conDBMS_CLOUD_LINK_ADMIN.GRANT_REGISTER
. Solo el usuario ADMIN y los esquemas conPDB_DBA
tienen este privilegio por defecto. -
Si borra y vuelve a crear una tabla registrada, debe volver a registrar la tabla para el acceso remoto.
-
Solo el usuario ADMIN y los usuarios con el rol
PDB_DBA
tienen privilegios para acceder a las siguientes vistas:-
DBA_CLOUD_LINK_ACCESS
-
DBA_CLOUD_LINK_REGISTRATIONS
-
DBA_CLOUD_LINK_AUTHORIZATIONS
-
DBA_CLOUD_LINK_PRIVS
Consulte DBMS_CLOUD_LINK Views para obtener más información.
-
-
El acceso a los datos remotos registrados requiere que la base de datos remota esté abierta. Si la base de datos remota está cerrada o en modo restringido, no podrá acceder a los datos y se devolverá un error de Oracle.
-
Hay un límite de un máximo de cuatro enlaces de base de datos abiertos por sesión. Si se supera este límite, se puede producir
ORA-02020
oORA-12545
. -
Si la caché de resultados está activada, como el comportamiento por defecto en Autonomous Database con la carga de trabajo de Data Warehouse, debe asegurarse de que la caché de resultados no se utiliza cuando se necesitan datos en tiempo real.
-
Al actualizar el tipo de licencia de Gratuito a Pagado, debe volver a registrar los juegos de datos de Enlaces en la nube. Consulte Actualización de una instancia siempre gratis a una cuenta de pago con Autonomous Database para obtener más información.
-
La conectividad remota de Cloud Links utiliza el servicio
MEDIUM
y esto no se puede cambiar. Puede ver las conexiones remotas como usuarioC##DATA$SHARE
enV$SESSION
y las vistas de enlaces en la nube V$CLOUD_LINK_ACCESS_STATS y las vistas GV$CLOUD_LINK_ACCESS_STATS proporcionan más detalles sobre las conexiones remotas. -
Todas las interfaces distinguen entre mayúsculas y minúsculas, a menos que se indique lo contrario, de la siguiente manera:
- Todo lo que introduzca que exista en la base de datos, por ejemplo, nombres de usuario y nombres de tabla, es significativo y se debe introducir con letras mayúsculas.
- Variables predefinidas, por ejemplo, los valores de ámbito predefinidos se deben introducir en mayúsculas.
- Cualquier cosa que especifique para la configuración de enlaces en la nube, por ejemplo, espacios de nombres o nombres de tablas en un espacio de nombres, se debe especificar como se ha introducido. Por ejemplo, si define un espacio de nombres como
trees
, debe incluir el espacio de nombres entre comillas dobles, como"trees"
, al acceder a él con SQL.
-
Puede compartir enlaces de nube cuando un juego de datos reside en una instancia de Autonomous Database en modo de solo lectura. Consulte Uso de enlaces de nube de una instancia de Autonomous Database de solo lectura para obtener más información.
-
Puede tardar hasta 10 minutos después de crear una clonación de refrescamiento para que la clonación de refrescamiento esté visible como destino de descarga. Esto significa que puede que tenga que esperar hasta 10 minutos después de crear una clonación de refrescamiento para que la clonación de refrescamiento esté disponible para el registro de descarga de enlaces en la nube.
Consulte Registro de un juego de datos con destinos de descarga para el acceso al juego de datos y Creación de una clonación de refrescamiento para una instancia de Autonomous Database para obtener más información.