Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se tratan las características de conexión avanzadas de la extensión PostgreSQL para Visual Studio Code. Use estas opciones cuando necesite reutilizar una cadena de conexión existente, proporcionar archivos de certificado para la validación tls más estricta o conectarse a través de un host bastión con un túnel SSH.
Tip
Para la autenticación estándar, la selección del modo SSL, los grupos de servidores y las conexiones guardadas, consulte Conexiones e identidad.
Usar el modo de entrada de cadena de conexión
Seleccione la pestaña Cadena de conexión (en Conectar mediante:) en el cuadro de diálogo de conexión para pegar una definición de conexión existente. La extensión analiza automáticamente la cadena y rellena los campos de conexión.
La página usa un diseño de dos columnas:
- Columna izquierda: un área de texto etiquetada Cadena de conexión donde se pega la cadena. Una sugerencia debajo del área de texto dice Omita la contraseña de la cadena de conexión.
- Columna derecha: un panel de solo lectura Detalles de conexión que muestra los valores interpretados de Nombre del servidor, Nombre de usuario y Nombre de la base de datos a medida que se van extrayendo.
El análisis sintáctico se realiza en tiempo real a medida que escribe o pega. Si el analizador detecta un servidor o valor de usuario que falta, aparece un error de validación encima del área de texto.
Formatos compatibles
La extensión reconoce nueve formatos de cadenas de conexión:
| Formato | Prefijo o desencadenador | Ejemplo |
|---|---|---|
| PostgreSQL URI |
postgres:// o postgresql:// |
postgresql://user:password@host:5432/dbname?sslmode=require |
| JDBC | jdbc:postgresql:// |
jdbc:postgresql://host:5432/dbname |
| Separados por punto y coma (clave=valor) | Contiene ; |
host=localhost;port=5432;dbname=mydb;user=postgres;password=secret |
psql línea de comandos |
psql |
psql -h host -p 5432 -U user -d dbname |
| Exportaciones de variables de entorno | export |
export PGHOST=localhost seguido de PGPORT, , PGUSER, PGDATABASE, PGPASSWORD |
| Node.js | new Client |
new Client({ host: "localhost", port: 5432, user: "postgres", database: "mydb" }) |
| Python (psycopg2) | psycopg2.connect |
psycopg2.connect(user="postgres", password="<your-password>", host="localhost", port=5432, database="mydb") |
| PHP | pg_connect |
pg_connect("host=localhost port=5432 dbname=mydb user=postgres") |
| Ruby | PG::Connection.new |
PG::Connection.new(host: "localhost", port: "5432", user: "postgres", database: "mydb") |
El analizador extrae el host, el usuario, el puerto, la base de datos y la contraseña de todos los formatos. Si un campo de contraseña ya está rellenado en el cuadro de diálogo, el analizador conserva el valor existente.
Note
Tras analizarla, todavía puede abrir el panel Avanzado para configurar ajustes que las cadenas de conexión no incluyen, como túneles SSH o el modo de acceso a la IA para cada conexión (modo de acceso de Copilot en Visual Studio Code, modo de acceso a la IA en Cursor).
Configurar archivos de certificado
Utilice la configuración del archivo de certificado en la sección desplegable SSL del panel Configuración avanzada de la conexión cuando su entorno requiera TLS mutuo o la validación explícita de la entidad de certificación.
Modo de certificado raíz SSL
La lista desplegable modo de certificado raíz SSL controla cómo la extensión proporciona el certificado de entidad de certificación raíz. Elija uno de los siguientes valores:
| Modo | Comportamiento |
|---|---|
| None | No se usa ningún certificado raíz. La extensión no comprueba la cadena de certificados del servidor. |
| Sistema | La extensión usa el almacén de certificados de confianza del sistema operativo. Este modo requiere el modo Verify-Full SSL; la extensión aplica esto automáticamente. |
| Archivo personalizado | Aparece un campo de texto etiquetado como nombre de archivo del certificado raíz SSL . Escriba la ruta de acceso a un archivo de certificado de CA raíz codificado en PEM. |
Importante
Al seleccionar Sistema, el modo SSL se establece en Verify-Full automáticamente. Si cambia el modo SSL a otro valor mientras System está activado, aparece un error de validación: "Se requiere el modo SSL Verify-Full al usar el almacén de certificados del sistema."
Campos de certificado de cliente
Configure TLS mutuo proporcionando las rutas en estos campos dentro de la sección SSL:
| Etiqueta de campo | Propiedad | Descripción |
|---|---|---|
| Nombre de archivo del certificado SSL | sslcert |
Ruta de acceso al archivo de certificado de cliente. |
| Nombre de archivo de clave SSL | sslkey |
Ruta de acceso al archivo de clave privada del cliente. |
| Nombre de archivo del certificado raíz SSL | sslrootcert |
Ruta al certificado de la CA raíz (visible solo cuando el modo de certificado raíz de SSL es Archivo personalizado). |
| Nombre del archivo de la CRL SSL | sslcrl |
Ruta de acceso a un archivo de lista de revocación de certificados. |
| Uso de la compresión SSL | sslcompression |
Habilita la compresión en la conexión SSL. |
Tip
Para los modos Verify-CA y Verify-Full , configure siempre el certificado raíz para que la extensión pueda validar el certificado de servidor. Usa el modo System para confiar en el almacén de AC de confianza de tu sistema operativo sin especificar una ruta de archivo.
Conexión a través de un túnel SSH
La tunelización SSH enruta la conexión de PostgreSQL a través de un canal SSH cifrado. Use este enfoque cuando la base de datos no sea accesible directamente desde la estación de trabajo. Por ejemplo, cuando el servidor reside en una red privada detrás de un servidor bastión.
Habilitación del túnel
- Abra el cuadro de diálogo de conexión y seleccione Opciones avanzadas para abrir el cajón Configuración de conexión avanzada .
- Expanda la sección Túnel SSH del acordeón.
- Activa el interruptor Habilitar tunelización SSH. Aparecen los campos de conexión SSH.
Campos del túnel SSH
| Etiqueta de campo | Descripción |
|---|---|
| host | Nombre de host o dirección IP del servidor SSH (host bastión). |
| puerto | Número de puerto del servidor SSH (valor predeterminado: 22). |
| username | Nombre de usuario para autenticarse con el servidor SSH. |
| Autenticación | Método de autenticación SSH. Elija Contraseña, Archivo de identidad o Agente SSH. |
Los campos restantes cambian en función del método de autenticación seleccionado:
| Método de autenticación | Campos adicionales que se muestran |
|---|---|
| Contraseña | contraseña/frase de contraseña: escriba la contraseña SSH. Guarde la casilla Contraseña/Frase de contraseña para conservar la credencial. |
| Archivo de identidad |
Archivo de identidad: escriba la ruta de acceso completa a la clave privada SSH (por ejemplo, ~/.ssh/id_ed25519).
contraseña/frase de contraseña: escriba la frase de contraseña de clave si la clave privada está cifrada.
Casilla Guardar contraseña/frase de contraseña . |
| Agente SSH | No hay campos adicionales. La extensión delega la autenticación en el agente SSH del sistema (ssh-agent en macOS y Linux, servicio de agente de autenticación de OpenSSH en Windows). |
Funcionamiento del túnel
Cuando el túnel SSH está habilitado, la extensión establece primero la conexión SSH, crea un reenvío de puerto local y, a continuación, se conecta a PostgreSQL a través de dicho reenvío. Por este motivo:
- El nombre del servidor en los campos de conexión principales debe ser la dirección de la base de datos como se ve en el host SSH, que suele ser
localhosto una dirección IP privada. - El puerto debe ser el puerto de PostgreSQL en el host de destino (normalmente
5432). - El establecimiento del túnel SSH agrega latencia de conexión. Considere la posibilidad de aumentar el valor de tiempo de espera de conexión en las opciones avanzadas si se producen tiempos de espera.
Elija la opción avanzada adecuada.
| Escenario | Característica recomendada |
|---|---|
Tiene un URI de PostgreSQL existente, un fragmento de código de la aplicación o un comando psql |
Seleccione la pestaña Cadena de conexión para rellenar los campos automáticamente. |
| Su organización requiere archivos de CA personalizados o TLS mutuo | Configure los campos de certificado SSL en la sección SSL del cajón avanzado. |
| Debe usar el almacén de certificados del sistema operativo para la comprobación del servidor. | Establezca el modo de certificado raíz SSL en Modo de sistema y SSL en Verify-Full. |
| Solo se puede acceder a la base de datos a través de un jump box o un host bastión. | Habilite el túnel SSH en la sección Túnel SSH del cajón avanzado. |