Esta outra pergunta tem respostas sobre visualização e edição de configurações em postgresql.conf
arquivo usando pgAdmin 4. Mas essas respostas não mencionam a edição do pg_hba.conf
arquivo usado para autenticação de usuários.
➥ Como usar o pgAdmin 4 para editar o pg_hba.conf
arquivo?
Não, pgAdmin não pode editar
pg_hba.conf
Infelizmente, não há nenhum mecanismo pelo qual o pgAdmin possa editar um
pg_hba.conf
arquivo. A razão pela qual é possível editarpostgresql.conf
via pgAdmin é que aALTER SYSTEM
sintaxe é algo que pode ser inserido em uma interface de cliente. Portanto, o pgAdmin foi capaz de "editar"postgresql.conf
porque poderia enviar umaALTER SYSTEM
consulta ao banco de dados. Não existe essa sintaxe para editar o controle de acesso.A resposta correta de richyen explica como as configurações de acesso do
pg_hba.conf
arquivo baseadas em host não são editáveis pelo pgAdmin 4. Portanto, devemos usar um editor de texto para editar opg_hba.conf
arquivo diretamente.Exemplo no macOS
Aqui está um exemplo de uso de um editor para fazer isso, a ferramenta de linha de comando nano , no macOS (e possivelmente no BSD).
O sistema de banco de dados Postgres é instalado junto com um novo usuário de nível de sistema, por padrão chamado
postgres
. Esse usuário possui as pastas (tem privilégios de acesso ao sistema de arquivos) contendo os arquivos reais do banco de dados Postgres. Portanto, devemos executar como esse usuário.Alternar usuários é surpreendentemente complicado se você é novo em sistemas operacionais orientados a Unix. Para obter detalhes, consulte: Alternar usuário para usuário 'postgres' no macOS resulta em erro “su: Desculpe” .
Para alternar usuários em uma sessão de terminal usando
su
, devemos fazê-lo invocando a autoridade do superusuário usandosudo
.Em seguida, será solicitada a senha do superusuário.
Verifique qual usuário está executando a sessão no momento fazendo:
Antes de editar, devemos fazer backup do
pg_hba.conf
arquivo. Faça uma cópia, dando ao arquivo um nome semelhante, com algo como.backup
anexado.data
pasta aninhada na pasta pessoal dopostgres
usuário. Modelo:cd ~/data
pg_hba.conf
, execute:ls
copy pg_hba.conf pg_hba.conf.backup
ls
novamente.Agora podemos editar o original usando o editor nano .
Você verá o conteúdo do arquivo aparecer na tela. Observe os comandos de pressionamento de tecla listados na parte inferior com
^
( tecla Control ).Use a tecla de seta para baixo para chegar ao final do arquivo (ou pressione as teclas para
Next Page
). Use a tecla de seta para a direita para mover pelas linhas para editar. Quando terminar, pressione Control-O (parawrite Out
) para salvar o arquivo. Veja o lembrete de que Control+x sairá do editor nano.Na linha de comando, para interromper a execução dessa sessão como
postgres
usuário, executeexit
. Em seguida, verifique novamente comwhoami
.