Conectar PostgreSQL a través de SSH Tunnel
Para conectar la base de datos PostgreSQL a Commerce Intelligence a través de un SSH tunnel
, debe hacer algunas cosas:
Recuperando Commerce Intelligence public key retrieve
public key
se usa para autorizar al usuario Commerce Intelligence Linux. Ahora creará el usuario e importará la clave.
- Vaya a Manage Data > Connections y haga clic en Add a Data Source.
- Haga clic en el icono PostgreSQL.
- Una vez abierta la página
PostgreSQL credentials
, establezca la opciónEncrypted
enYes
. Esto muestra el formulario de configuraciónSSH
. public key
se encuentra debajo de este formulario.
Deje esta página abierta durante todo el tutorial, la necesitará en la siguiente sección y al final.
A continuación se muestra cómo navegar por Commerce Intelligence para recuperar la clave:
Permitir acceso a la dirección IP Commerce Intelligence allowlist
Para que la conexión se realice correctamente, debe configurar el cortafuegos para permitir el acceso desde su dirección IP. Es 54.88.76.97/32
, pero también se encuentra en la página de credenciales de PostgreSQL
. Consulte el cuadro azul en el GIF de arriba.
Creando un usuario Linux para Commerce Intelligence linux
Puede ser una máquina de producción o secundaria, siempre que contenga datos en tiempo real (o actualizados con frecuencia). Puede restringir este usuario como desee, siempre y cuando conserve el derecho de conectarse al servidor PostgreSQL.
- Para agregar al nuevo usuario, ejecute los siguientes comandos como raíz en el servidor Linux:
adduser rjmetric -p<password>
mkdir /home/rjmetric
mkdir /home/rjmetric/.ssh
-
¿Recuerda el(la)
public key
que recuperó(ó) en la primera sección? Para asegurarse de que el usuario tiene acceso a la base de datos, debe importar la clave enauthorized\_keys
.Copie la clave completa en el archivo
authorized\_keys
de la siguiente manera:
touch /home/rjmetric/.ssh/authorized_keys
"<PASTE KEY HERE>" >> /home/rjmetric/.ssh/authorized_keys
- Para terminar de crear el usuario, modifique los permisos en el directorio
/home/rjmetric
para permitir el acceso a través deSSH
:
chown -R rjmetric:rjmetric /home/rjmetric
chmod -R 700 /home/rjmetric/.ssh
sshd\_config
asociado con el servidor no está establecido en la opción predeterminada, sólo determinados usuarios tienen acceso al servidor, lo que impide que la conexión a Commerce Intelligence se realice correctamente. En estos casos, es necesario ejecutar un comando como AllowUsers
para permitir que el usuario rjmetric tenga acceso al servidor.Creando un usuario Commerce Intelligence Postgres postgres
Su organización puede requerir un proceso diferente, pero la forma más sencilla de crear este usuario es ejecutar la siguiente consulta cuando se inicia sesión en Postgres como usuario con el derecho de conceder privilegios. El usuario también debe ser propietario del esquema al que se concede acceso a Commerce Intelligence.
GRANT CONNECT ON DATABASE <database name> TO rjmetric WITH PASSWORD <secure password>;GRANT USAGE ON SCHEMA <schema name> TO rjmetric;GRANT SELECT ON ALL TABLES IN SCHEMA <schema name> TO rjmetric;ALTER DEFAULT PRIVILEGES IN SCHEMA <schema name> GRANT SELECT ON TABLES TO rjmetric;
Reemplace secure password
con su propia contraseña segura, que puede ser diferente a la contraseña SSH. Además, asegúrese de reemplazar database name
y schema name
con los nombres apropiados en su base de datos.
Si desea conectar varias bases de datos o esquemas, repita este proceso según sea necesario.
Introduciendo la conexión y la información de usuario en Commerce Intelligence finish
Para finalizar, debe especificar la conexión y la información de usuario en Commerce Intelligence. ¿Dejó abierta la página de credenciales de PostgreSQL? Si no es así, vaya a Manage Data > Connections y haga clic en Add a Data Source, luego en el icono PostgreSQL. No olvide establecer la opción Encrypted
en Yes
.
Escriba la siguiente información en esta página, empezando por la sección Database Connection
:
Username
: el nombre de usuario de RJMetrics Postgres (debe ser rjmetric)Password
: la contraseña de Postgres de RJMetricsPort
: puerto PostgreSQL en el servidor (5432 de forma predeterminada)Host
: 127.0.0.1
En SSH Connection
:
Remote Address
: la dirección IP o el nombre de host del servidor en el que se SSHUsername
: su nombre de inicio de sesión SSH (debe ser rjmetric)SSH Port
: puerto SSH en el servidor (22 de forma predeterminada)
Cuando termine, haga clic en Guardar y probar para completar la configuración.