Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo aborda as funcionalidades avançadas de ligação na extensão PostgreSQL para Visual Studio Code. Use estas opções quando precisar de reutilizar uma cadeia de ligação existente, fornecer ficheiros de certificado para validação TLS mais rigorosa, ou ligar através de um host bastion com um túnel SSH.
Sugestão
Para autenticação padrão, seleção do modo SSL, grupos de servidores e ligações guardadas, consulte Ligações e identidade.
Utilizar o modo de introdução por cadeia de ligação
Selecione o separador Cadeia de Ligação (em Ligar via:) na caixa de diálogo de ligação para colar uma definição de ligação existente. A extensão analisa automaticamente a cadeia e preenche os campos de ligação.
A página utiliza um layout de duas colunas:
- Coluna da esquerda: uma área de texto identificada como Cadeia de ligação onde cola a cadeia de ligação. Uma dica abaixo da área de texto diz: Por favor, omita a palavra-passe da cadeia de ligação.
- Coluna da direita: um painel de Detalhes de Ligação apenas de leitura que mostra os valores analisados do nome do servidor, nome do utilizador e nome da base de dados à medida que são extraídos.
A análise é feita em tempo real à medida que escreve ou cola. Se o parser detetar um valor de servidor ou utilizador em falta, aparece um erro de validação acima da área de texto.
Formatos suportados
A extensão reconhece nove formatos de cadeia de ligação:
| Format | Prefixo ou gatilho | Example |
|---|---|---|
| PostgreSQL URI |
postgres:// ou postgresql:// |
postgresql://user:password@host:5432/dbname?sslmode=require |
| JDBC | jdbc:postgresql:// |
jdbc:postgresql://host:5432/dbname |
| Separado por ponto e vírgula (chave=valor) | Contém ; |
host=localhost;port=5432;dbname=mydb;user=postgres;password=secret |
psql Linha de comandos |
psql |
psql -h host -p 5432 -U user -d dbname |
| Exportações de variáveis ambientais | 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") |
O parser extrai host, utilizador, porta, base de dados e palavra-passe de todos os formatos. Se um campo de palavra-passe já estiver preenchido no diálogo, o analisador preserva o valor existente.
Note
Depois de analisar, ainda podes abrir a gaveta Avançada para configurar definições que as strings de ligação não transportam, como túneis SSH ou o modo de acesso AI por ligação (modo de acesso Copilot no Visual Studio Code, modo de acesso AI no Cursor).
Configurar ficheiros de certificados
Utilize as definições do ficheiro de certificado na secção expansível SSL do painel Definições Avançadas de Ligação quando o seu ambiente exigir TLS mútuo ou validação explícita da autoridade certificadora.
Modo de certificado raiz SSL
A lista suspensa modo do certificado de raiz SSL controla a forma como a extensão fornece o certificado da AC de raiz. Escolha um dos seguintes valores:
| Mode | Comportamento |
|---|---|
| Nenhum | Não é utilizado nenhum certificado raiz. A extensão não verifica a cadeia de certificados do servidor. |
| System | A extensão utiliza a loja de certificados de confiança do seu sistema operativo. Este modo requer o modo Verify-Full SSL; a extensão faz isto ser aplicado automaticamente. |
| Ficheiro personalizado | Aparece um campo de texto rotulado como nome do ficheiro do certificado raiz SSL . Introduza o caminho para um ficheiro de certificado de CA raiz codificado em PEM. |
Importante
Quando seleciona Sistema, o modo SSL é definido automaticamente para Verify-Full . Se alterar o modo SSL para outro valor enquanto o Sistema está ativo, aparece um erro de validação: "Verify-Full modo SSL é necessário ao usar a memória de certificados do sistema."
Campos do certificado do cliente
Configure o TLS mútuo fornecendo caminhos nestes campos dentro da secção SSL :
| Rótulo do campo | Property | Description |
|---|---|---|
| Nome do ficheiro do certificado SSL | sslcert |
Caminho para o ficheiro do certificado do cliente. |
| Nome do ficheiro da chave SSL | sslkey |
Caminho para o ficheiro de chave privada do cliente. |
| Nome do ficheiro raiz do certificado raiz SSL | sslrootcert |
Caminho para o certificado raiz da CA (visível apenas quando o modo de certificado raiz SSL for ficheiro personalizado). |
| Nome de ficheiro SSL CRL | sslcrl |
Caminho para o ficheiro da lista de revogação de certificados. |
| Utilize a compressão SSL | sslcompression |
Ativa compressão na ligação SSL. |
Sugestão
Para os modos Verify-CA e Verify-Full , configure sempre o certificado raiz para que a extensão possa validar o certificado do servidor. Use o modo Sistema para confiar na loja de CA confiável do seu sistema operativo sem especificar um caminho de ficheiro.
Ligação através de um túnel SSH
O tunelamento SSH encaminha a ligação PostgreSQL através de um canal SSH encriptado. Use esta abordagem quando a base de dados não estiver diretamente acessível a partir da sua estação de trabalho. Por exemplo, quando o servidor reside numa rede privada atrás de um servidor bastião.
Ativar o túnel
- Abre a caixa de diálogo de ligação e seleciona Avançado para abrir a gaveta de Definições de Ligação Avançada .
- Expandir a secção do acordeão do Túnel SSH .
- Verifica a opção Ativar Tunelamento SSH . Os campos de ligação SSH aparecem.
Campos do túnel SSH
| Rótulo do campo | Description |
|---|---|
| anfitrião | Nome do host ou endereço IP do servidor SSH (host bastião). |
| porto | Número da porta do servidor SSH (por defeito: 22). |
| nome de utilizador | Nome de utilizador para autenticar com o servidor SSH. |
| Authentication | Método de autenticação SSH. Escolha palavra-passe, ficheiro de identidade ou agente SSH. |
Os campos restantes mudam consoante o método de autenticação selecionado:
| Método de autenticação | Campos adicionais mostrados |
|---|---|
| Senha | palavra-passe/frase de acesso: introduza a palavra-passe do SSH. Caixa de seleção “Guardar palavra-passe/frase-passe” para guardar a credencial. |
| Ficheiro de Identidade |
Ficheiro de identidade: introduza o caminho completo para a sua chave privada SSH (por exemplo, ~/.ssh/id_ed25519).
palavra-passe/frase-passe: introduza a frase-passe da chave se a chave privada estiver encriptada.
caixa de verificação “Guardar palavra-passe/frase-passe”. |
| Agente SSH | Sem campos adicionais. A extensão delega a autenticação ao agente SSH do seu sistema (ssh-agentno macOS e Linux, serviço OpenSSH Authentication Agent no Windows). |
Como funciona o túnel
Quando o túnel SSH está ativado, a extensão estabelece primeiro a ligação SSH, cria um encaminhamento de porta local e depois liga-se ao PostgreSQL através desse encaminhamento. Por causa disto:
- O nome do servidor nos campos principais da ligação deve ser o endereço da base de dados tal como é visto a partir do anfitrião SSH, que é frequentemente
localhostou um IP privado. - A porta deve ser a porta PostgreSQL no host alvo (tipicamente
5432). - O estabelecimento do túnel SSH adiciona latência de ligação. Considere aumentar o valor de tempo limite de ligação nas opções avançadas, se ocorrerem tempos limite.
Escolha a opção avançada certa
| Scenario | Funcionalidade recomendada |
|---|---|
Já tem um URI PostgreSQL, um trecho de aplicação ou um comando psql já existente |
Selecione o separador Cadeia de Ligação para preencher os campos automaticamente. |
| A sua organização requer ficheiros CA personalizados ou TLS mútuo | Configure os campos do certificado SSL na secção SSL da gaveta avançada. |
| Precisa de usar a loja de certificados do seu sistema operativo para verificação do servidor | Defina o modo de certificado raiz SSL para Sistema e o modo SSL para Verificação-Completo. |
| A base de dados está acessível apenas através de um servidor de salto ou de um servidor bastião | Ative o túnel SSH na secção do Túnel SSH da gaveta avançada. |