2.15 - Objetos de autorización - Teradata QueryGrid

Teradata® QueryGrid™ Guía de instalación y uso

Product
Teradata QueryGrid
Release Number
2.15
Release Date
Marzo de 2021
Content Type
Administración
Configuración
Guía del usuario
Instalación
Publication ID
B035-5991-031K-ESN
Language
Español (España)

Puede crear un objeto de autorización, que almacena las credenciales de un usuario en forma cifrada para los conectores de Teradata. El objeto de autorización almacena las credenciales del usuario y se utiliza en servidores externos para llevar estas credenciales al sistema remoto para su autenticación.

Si necesita una asignación individual (uno a uno) entre un usuario de Teradata y un usuario remoto, deberá contar con las cuentas correspondientes en el sistema de Teradata y en el sistema de seguridad.
  • Cuando ese usuario crea la autorización mediante AS INVOKER TRUSTED, la autorización se almacena de forma predeterminada en la base de datos de usuario.
  • Las credenciales para el sistema de seguridad no deben revelarse a otras personas y al objeto de autorización solo pueden acceder los usuarios con privilegios para esa base de datos.

Puede utilizar la asignación de varios a uno entre varios usuarios del sistema de Teradata y un usuario del sistema remoto para simplificar la administración. Solo el creador de la autorización necesita saber las credenciales del usuario en el sistema de seguridad remoto. Cuando se crea la autorización mediante AS DEFINER TRUSTED, esta se almacena de forma predeterminada en la base de datos TD_SERVER_DB, que pone a disposición la autorización a nivel global.

Para una conexión de Teradata a Presto, cree un objeto de autorización y utilícelo en la cláusula USING del servidor externo. Teradata transmite las credenciales en un objeto de autorización al conector de Presto; a continuación, este último autentica al usuario antes de enviar la consulta al origen de datos.

Donde el servidor externo busca el objeto de autorización

Al utilizar INVOKER, la autorización se almacena en la base de datos del usuario; cada usuario puede utilizar sus propias credenciales para iniciar sesión en el sistema remoto. Cuando un servidor externo está configurado con la palabra clave INVOKER y no se especifica ningún valor para el nombre de la base de datos (dbname), los conectores de Presto o Hive buscan automáticamente la autorización en la base de datos de usuario del usuario de sesión.

Uso de INVOKER

En este ejemplo se crea el objeto de autorización remote_presto1 en la base de datos de usuario del creador. Si el creador es td_user, entonces td_user.remote_presto1 es el nombre completo del objeto.

create authorization remote_presto1 as invoker trusted 
      user 'active_user' password 'active_pass';

En este ejemplo se crea un objeto de servidor externo que utiliza el objeto de autorización de remote_presto1.

create foreign server Presto_1 
external security invoker trusted remote_presto1 
using
 link('td1_presto1')
 version('active')
DO IMPORT WITH TD_SYSFNLIB.QGInitiatorImport,
DO EXPORT WITH TD_SYSFNLIB.QGInitiatorExport;

El valor de link de td1_presto1 se creó en el portlet QueryGrid. El enlace define las redes de inicio y de destino, y especifica una directiva de comunicación que define las reglas para la transferencia de datos entre los conectores, entre otras propiedades.

Cuando un servidor externo está configurado con la palabra clave DEFINER y no se especifica ningún valor para el nombre de la base de datos (dbname), el conector de Teradata busca automáticamente la autorización en la base de datos TD_SERVER_DB.

Uso de DEFINER

En este ejemplo se crea el objeto de autorización remote_presto1.

create authorization td_server_db.remote_presto1 as definer trusted 
      user 'active_proxy_user' password 'active_proxy_pass';

En este ejemplo se crea un objeto de servidor externo que utiliza el objeto de autorización remote_presto1.

create foreign server Presto_1 
external security definer trusted remote_presto1 
using
 link('td1_presto1')
 version('active')
DO IMPORT WITH TD_SYSFNLIB.QGInitiatorImport,
DO EXPORT WITH TD_SYSFNLIB.QGInitiatorExport;

El valor de link de td1_presto1 se creó en el portlet QueryGrid. El enlace define las redes de inicio y de destino, y especifica una directiva de comunicación que define las reglas para la transferencia de datos entre los conectores, entre otras propiedades.

Para obtener más información, consulte CREATE AUTHORIZATION y REPLACE AUTHORIZATION.