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.
A extensão PostgreSQL para Visual Studio Code fornece um diálogo de ligação que suporta múltiplos métodos de autenticação, encriptação SSL/TLS e ferramentas organizacionais como grupos de servidores e ligações guardadas. Este artigo aborda as tarefas principais de ligação: abrir o diálogo, escolher um método de autenticação, guardar e reutilizar ligações, e organizar servidores.
Gorjeta
Para túneis SSH, análise de cadeia de ligação ou configuração de ficheiros de certificados, veja Opções de ligação avançadas.
Abrir o diálogo de ligação
Pode abrir o diálogo de ligação de várias formas:
- Ligações: Passe o rato sobre o cabeçalho da secção Ligações e selecione Adicionar Nova Ligação (o + ícone).
- Paleta de comandos: Executar PGSQL: Adicionar nova ligação.
- Ligação guardada ou recente: Selecione um cartão de ligação na lista de Ligações Guardadas ou Ligações Recentes no painel lateral para carregar as definições no diálogo.
Quando abres um novo diálogo, o cabeçalho diz Nova Ligação e o título diz Conectar ao PostgreSQL Server. Quando editas uma ligação existente, o cabeçalho muda para Editar Ligação.
Escolha um modo de entrada
Os separadores Connect via: no topo da caixa de diálogo permitem-lhe escolher como fornecer detalhes de ligação:
| Tab | Description |
|---|---|
| Parâmetros | Preencha campos individuais como nome do servidor, tipo de autenticação, nome de utilizador, palavra-passe, nome da base de dados e nome da ligação. Este é o modo padrão. |
| String de Conexão | Cole uma cadeia de ligação em qualquer formato suportado. A extensão analisa a cadeia e mostra o nome do servidor, nome de utilizador e nome da base de dados extraídos num painel de Detalhes de Ligação apenas de leitura. |
| Navegar pelo Azure | Navegue diretamente pelas suas subscrições, grupos de recursos e servidores do Azure para selecionar um servidor flexível Base de Dados do Azure para PostgreSQL ou um cluster Azure HorizonDB (Preview). Requer uma conta do Azure com sessão iniciada no Visual Studio Code. |
Os três modos partilham os mesmos botões Guardar & Ligar e Testar Ligação no final do diálogo. O botão Avançado abre a gaveta das Definições de Ligação Avançada em qualquer modo.
Preencha os parâmetros de ligação
Quando usa o separador Parâmetros , o diálogo apresenta os seguintes campos principais:
| Campo | Description |
|---|---|
| Nome do servidor | Nome do host ou endereço IP do servidor PostgreSQL. |
| Tipo de Autenticação | Método usado para autenticar. Ver Tipos de autenticação. |
| Nome de utilizador | Utilizador ou função da base de dados PostgreSQL. Visível quando o Tipo de Autenticação é Password ou AWS IAM (RDS/Aurora). |
| Senha | Senha para a conta de usuário. Visível quando o Tipo de Autenticação é Password. |
| Guardar palavra-passe | Assinala esta caixa para guardar a palavra-passe de forma segura. Ver Armazenamento de palavras-passe. |
| Nome da base de dados | Nome da base de dados a que se deve ligar. Deixe em branco para se ligar à base de dados predefinida. |
| Nome da conexão | Nome amigável opcional para esta ligação. A extensão mostra este nome na árvore de Conexões e na lista de Ligações Guardadas . |
Campos adicionais aparecem dependendo do tipo de autenticação. Para Entra Auth, a caixa de diálogo mostra Conta Entra, Nome de utilizador Entra e Tenant. Para AWS IAM (RDS/Aurora), o diálogo mostra o Perfil AWS e a AWS Region.
Note
O campo Port está localizado na gaveta de Definições Avançadas de Ligação , nas opções de nível superior. A porta padrão é 5432.
Tipos de autenticação
A lista suspensa Tipo de Autenticação apresenta quatro opções.
Senha
A autenticação por palavra-passe é o método padrão do PostgreSQL. Fornece um nome de utilizador e uma palavra-passe que o servidor valida contra a sua configuração de autenticação (normalmente pg_hba.conf).
- Defina o Tipo de Autenticação para Palavra-Passe.
- Introduza um nome de utilizador e uma palavra-passe.
- Opcionalmente, selecione Guardar Palavra-passe para guardar a palavra-passe de forma segura.
- Selecione Save & Connect.
Armazenamento de palavras-passe
Quando seleciona Guardar Palavra-passe, a extensão armazena a palavra-passe através da API do Visual Studio CodeSecretStorage, que delega para o gestor de credenciais do sistema operativo:
- macOS: Keychain
- Windows: Gestor de Credenciais
-
Linux:
libsecret(GNOME Keyring ou KWallet)
As palavras-passe guardadas estão associadas à ligação específica e nunca são guardadas em ficheiros de definições em texto simples.
Autenticação do Microsoft Entra
A autenticação Microsoft Entra (anteriormente Azure Active Directory) fornece autenticação baseada em tokens e sem palavra-passe para o servidor flexível Base de Dados do Azure para PostgreSQL. O diálogo identifica esta opção como Entra Auth.
Note
A autenticação Entra requer uma instância de servidor flexível Base de Dados do Azure para PostgreSQL com autenticação Entra ativada. Consulte a autenticação do Microsoft Entra com o Base de Dados do Azure para PostgreSQL para obter detalhes de configuração.
Para se ligar à autenticação Entra:
- Adicione a sua conta Entra. Abra a Paleta de Comandos e execute o PGSQL: Adicionar Conta Microsoft Entra. Inicie sessão com as suas credenciais Entra na janela do navegador que se abre.
- Abre o diálogo de ligação. Defina o tipo de autenticação para Entra Auth.
- Selecione a sua conta. Escolha a conta que adicionou na lista pendente Conta Entra.
- Escolha um inquilino. Se a sua conta pertencer a vários tenants, selecione o Tenant adequado na lista pendente Tenant.
- Introduza o nome de utilizador do Entra. Introduza o nome de utilizador do Entra para a função do PostgreSQL associada à sua identidade.
- Conectar. Selecione Save & Connect. A extensão adquire um token de acesso e autentica-se no servidor PostgreSQL em seu nome.
Perfis de ligação Entra guardados continuam a usar o valor legado AzureMFA . O valor canónico bearer-token:entra-id está reservado para o encaminhamento controlado pelo servidor e para futura migração de perfis.
Para remover uma conta Entra, execute o PGSQL: Remover a Conta Microsoft Entra da Paleta de Comandos e selecione a conta a remover. Para limpar tokens em cache sem remover a conta, execute o PGSQL: Clear Microsoft Entra account token cache.
Modelo de dupla conta
A extensão suporta um modelo de duas contas para cenários do Azure. Pode usar uma conta Entra para autenticação da base de dados e uma conta diferente para navegar pelos recursos do Azure (subscrições, grupos de recursos e servidores).
- O campo Conta Entra na caixa de diálogo de ligação determina que identidade é autenticada na base de dados.
- O separador Browse Azure utiliza a conta do Azure com sessão iniciada no Visual Studio Code (através da extensão Azure Resources) para enumeração de subscrições e recursos.
Gorjeta
Esta separação é útil quando a sua conta de administrador de base de dados difere da conta que gere as subscrições do Azure. Configure cada um de forma independente para usar as permissões corretas para cada tarefa.
AWS IAM (RDS/Aurora)
A autenticação AWS IAM utiliza um token de autenticação de base de dados assinado pela AWS em vez de uma palavra-passe armazenada. Use esta opção apenas para os endpoints de base de dados Amazon RDS para PostgreSQL ou Amazon Aurora PostgreSQL que tenham autenticação de base de dados IAM ativada. Uma Região AWS introduzida manualmente pode complementar a inferência regional, mas não suporta hosts PostgreSQL personalizados, hosts não-RDS ou aliases CNAME. O diálogo identifica esta opção como AWS IAM (RDS/Aurora).
Note
A sua função na base de dados PostgreSQL deve existir no servidor e deve ter permissão para utilizar a autenticação IAM da base de dados. Para RDS e Aurora PostgreSQL, conceda a função rds_iam. Para mais informações, consulte autenticação de bases de dados IAM para MariaDB, MySQL e PostgreSQL.
Para se ligar à autenticação AWS IAM:
- Prepara as credenciais da AWS. Configure o fluxo de CLI da AWS exigido pela sua organização. Exemplos incluem
aws configure,aws sso login --profile <profile>, ou uma configuração específicacredential_processda organização. - Abre o diálogo de ligação. Defina o Tipo de Autenticação para AWS IAM (RDS/Aurora).
- Introduza o ponto terminal do servidor. Use o endpoint Amazon RDS ou Aurora PostgreSQL no nome do servidor.
- Introduza a função da base de dados. No nome de utilizador, introduza o utilizador ou função da base de dados PostgreSQL. Isto não é o Perfil AWS, utilizador IAM, função IAM ou ARN.
- Escolha a fonte de credenciais da AWS. Selecione ou introduza um Perfil AWS. Deixe o Perfil AWS em branco para usar a cadeia de credenciais AWS predefinida.
- Defina a região AWS se necessário. A extensão infere a região a partir dos nomes de host RDS e Aurora padrão sempre que possível. Se o nome de host não incluir a região, insira-o na AWS Region.
- Conectar. Selecione Save & Connect. A extensão assina um token de autenticação de curta duração e usa-o como palavra-passe PostgreSQL para a nova ligação.
A cadeia de credenciais AWS suporta variáveis de ambiente, ficheiros de configuração e credenciais partilhados da AWS, perfis SSO AWS e credential_process perfis. Não utiliza credenciais de metadados de instâncias/contentores do EC2 ou do ECS, e não utiliza cadeias de perfis suportadas por metadados credential_source.
Os tokens de autenticação da base de dados AWS IAM são válidos durante 15 minutos. A extensão obtém novos tokens conforme necessário, enquanto as credenciais AWS subjacentes permanecem válidas. Não são necessários passos manuais de atualização do token.
None
None ignora completamente a autenticação. A extensão liga-se sem enviar credenciais. Esta opção aplica-se a servidores PostgreSQL configurados com trust autenticação ou configurações semelhantes sem credenciais.
Ligar, testar e desligar
Depois de preencher os detalhes da ligação, use as ações no diálogo de ligação e na árvore de Ligações para guardar o perfil, ligar, editar ou remover servidores.
Guardar e Ligar
Depois de preencher os detalhes da ligação, selecione Guardar & Ligar para estabelecer a ligação. Este botão realiza duas ações:
- Guarda a ligação como um perfil nas definições do VS Code.
- Liga-se ao servidor.
Se a ligação for bem-sucedida, o servidor aparece na árvore de Conexões . A ligação também aparece nas listas de Ligações Guardadas e Ligações Recentes no diálogo de ligação.
Testar Ligação
Selecione Testar Ligação para verificar os parâmetros da ligação sem guardar o perfil ou adicionar o servidor à árvore de Ligações . O botão mostra um indicador de carregamento enquanto o teste decorre e, em seguida, apresenta uma marca de verificação em caso de sucesso ou um ícone de aviso em caso de falha.
Desconectar
Para desligar de um servidor:
- Ligações: Clique com o botão direito no nó do servidor e selecione Desconectar.
- Paleta de Comandos: Executar PGSQL: Desconectar.
Editar uma ligação existente
Para editar uma ligação guardada, clique com o botão direito no servidor na árvore de Ligações e selecione Editar Ligação. A caixa de diálogo de conexão abre no modo de edição com o cabeçalho Editar conexão e com o nome atual do perfil como título. Faz as tuas alterações e seleciona Guardar & Ligar para te reconectares com as definições atualizadas.
Definições avançadas de ligação
Selecione o botão Avançado abaixo dos campos principais para abrir a gaveta de Definições de Ligação Avançada . A gaveta contém:
- Opções de nível superior: Âmbito (Utilizador ou Espaço de trabalho), Porta, Nome da aplicação, Tempo limite de ligação e Ativação pós-falha em várias sub-redes.
- Secções agrupadas: Secções de acordeão dobrável para Código-Fonte, Segurança, Servidor, Cliente, SSL, Copilot e Túnel SSH.
A opção Scope controla onde o perfil de ligação é guardado:
| Scope | Onde o perfil é armazenado |
|---|---|
| User | Definições de utilizador do VS Code (global, disponível em qualquer espaço de trabalho) |
| Workspace | Definições do espaço de trabalho VS Code (partilhadas com colaboradores via .vscode/settings.json) |
Para detalhes da configuração de túneis SSL e SSH, veja Opções de ligação avançadas.
Modo de acesso do Copilot por ligação
A secção Copilot na gaveta avançada inclui uma lista suspensa do modo de acesso ao Copilot com três opções:
| Option | Effect |
|---|---|
| Usar Configuração Global | Herda o valor global pgsql.copilot.accessMode . |
| Somente leitura | Restringe o Copilot a operações de apenas leitura nesta ligação. |
| Ler/Escrever | Permite ao Copilot executar operações de leitura e escrita nesta ligação. |
SSL e TLS
SSL/TLS encripta a ligação entre o Visual Studio Code e o teu servidor PostgreSQL. Configura o modo SSL na secção SSL da gaveta de Definições Avançadas de Ligação ou na tua cadeia de ligação.
Modos SSL
| Mode | Description |
|---|---|
| Disable | Sem encriptação SSL. A conexão não é criptografada. |
| Permitir | Tenta primeiro uma ligação não encriptada; recorre ao SSL se o servidor assim o exigir. |
| Preferir | Tenta estabelecer primeiro uma ligação SSL; recorre a uma ligação sem encriptação se a negociação SSL falhar. Este é o padrão para muitos clientes PostgreSQL. |
| Obrigatório | Requer encriptação SSL mas não verifica o certificado do servidor. Protege contra escutas passivas. |
| Verify-CA | Requer SSL e verifica que o certificado do servidor está assinado por uma autoridade certificadora (CA) de confiança. |
| Verificação Completa | Requer SSL, verifica a CA e verifica se o nome do host do servidor corresponde ao Nome Comum ou Nome Alternativo do Assunto do certificado. Oferece a proteção mais forte. |
Note
O Base de Dados do Azure para PostgreSQL requer SSL por defeito. Utilize Require para a maioria dos cenários ou Verify-Full com o certificado DigiCert Global Root G2 para máxima segurança.
Gorjeta
Para configuração de ficheiros de certificado e cenários TLS mútuos, veja Opções de ligação avançadas.
Gerir ligações guardadas e recentes
O diálogo de ligação inclui um painel lateral com duas listas:
- Ligações Guardadas: Ligações que já tinha guardado anteriormente com o Save & Connect. Cada cartão mostra o nome de exibição do servidor. Passe o rato sobre uma carta para revelar um botão de eliminar. Selecione um cartão para carregar as suas definições no diálogo.
- Ligações Recentes: Ligações que usou recentemente, independentemente de as ter guardado com um Nome de Ligação. Passa o rato para revelar um botão de remover.
A lista de Ligações Recentes é limitada pela pgsql.maxRecentConnections definição. O número máximo de ligações abertas simultâneas por perfil e base de dados é controlado pela definição pgsql.maxConnections (padrão: 10).
Grupos de servidores
Os grupos de servidores ajudam-no a organizar ligações na árvore de Conexões . Pode atribuir um nome e cor personalizados a cada grupo, facilitando a identificação de ambientes como Desenvolvimento, Encenação e Produção num instante.
Criar um grupo de servidores
- Clique com o botão direito na árvore de Ligações e selecione Criar Grupo de Servidor.
- No diálogo, introduza um Nome, uma Descrição opcional e selecione uma Cor para o grupo.
Editar ou remover um grupo de servidor
- Edit: Clique com o botão direito num grupo de servidores na árvore de Ligações e selecione Editar Grupo de Servidor para alterar o nome, descrição ou cor.
- Remover: Clique com o botão direito num grupo de servidores e selecione Remover. As ligações no grupo não são apagadas; Passam para o grupo padrão.
Atribuir uma ligação a um grupo
Quando cria ou edita uma ligação, a caixa de diálogo da ligação inclui uma lista suspensa Grupo de servidores na área principal de campos. Selecione um grupo da lista para atribuir a ligação a esse grupo.
As cores do grupo aparecem como uma barra colorida ao lado do nome do grupo na árvore de Conexões , proporcionando uma identificação visual rápida.
Azure metadata
Quando se liga a um servidor flexível Base de Dados do Azure para PostgreSQL, o diálogo de ligação pode mostrar um painel de Metadados do Azure ao lado do formulário. Este painel mostra a Subscrição e o Grupo de Recursos do servidor depois de selecionar Fetch Azure Metadata. Incluir metadados do Azure permite funcionalidades de gestão, como o painel do servidor e as métricas do Azure Monitor.
Resolver problemas comuns de ligação
Quando uma tentativa de ligação falha, a causa é geralmente uma configuração de rede, autenticação ou SSL. As secções seguintes abordam os casos mais comuns.
Ligação recusada ou tempo limite excedido
Se a ligação falhar antes do início da autenticação, verifique primeiro o nome do servidor e a porta . Certifique-se de que o PostgreSQL está a correr, que a porta é acessível a partir da sua máquina e que quaisquer regras de firewall de rede permitem a ligação. Podes ajustar o tempo de espera do Connect na gaveta de Definições Avançadas de Ligação para permitir mais tempo para redes lentas.
SSL ou erros de validação de certificados
Se o servidor exigir encriptação, confirme que o modo SSL selecionado na secção SSL da gaveta avançada corresponde à configuração do servidor. Para Verify-CA e Verify-Full, certifique-se de que o certificado de CA correto está configurado. Para detalhes do ficheiro do certificado, consulte Opções de ligação avançadas.
Questões de login ou tokens do Microsoft Entra
Se a autenticação Entra falhar, confirme que o servidor flexível Base de Dados do Azure para PostgreSQL tem a autenticação Entra ativada e depois verifique se selecionou a conta e o inquilino corretos no diálogo de ligação. Se necessário, execute o PGSQL: Remove Microsoft Entra Account e adicione novamente a conta. Para repor os tokens em cache, execute PGSQL: Limpar a cache de tokens da conta Microsoft Entra.
Problemas com o perfil ou token do AWS IAM
Se a autenticação AWS IAM falhar, verifique se o nome do servidor é o endpoint Amazon RDS ou Aurora PostgreSQL, e não um nome de host personalizado ou alias CNAME. Confirme que o nome de utilizador é o papel da base de dados PostgreSQL e que o papel tem autenticação IAM de base de dados ativada no servidor. Verificar se o Perfil AWS selecionado pode obter credenciais AWS suportadas; Por exemplo, execute aws sts get-caller-identity --profile <profile> para um perfil nomeado, ou omita --profile quando usar a cadeia de credenciais padrão. Se falhar a inferência regional para um endpoint suportado, introduza manualmente a Região AWS .
O processamento de cadeias de ligação não preenche os campos corretos
Se uma cadeia de ligação colada não preencher os valores esperados, reveja os padrões de entrada suportados nas opções de ligação avançadas. Se o formato de origem for invulgar, mude para o separador Parâmetros e introduza os valores manualmente.