Como Configurar uma Senha no PostgreSQL como um Usuário Padrão?
Antes de começarmos, sinto que é crucial explicar que, para quase todas as distribuições Unix, o usuário padrão do Postgres não usa nem precisa de uma senha para fins de autenticação. Como alternativa, a operação de autenticação padrão é ident (identificação pelo SO do usuário) ou peer (identificação pela conexão local), mas ela varia com base em como o Postgres foi instalado pela primeira vez na sua máquina e qual versão você está executando. A autenticação Ident funciona usando o próprio servidor de identificação do SO em execução na porta TCP 113 para autenticar as credenciais de login do usuário. Por outro lado, a verificação por peer é utilizada apenas para conexões locais e autenticações que o usuário registrado no sistema operacional corresponde ao nome de usuário no banco de dados do Postgres.
Iniciando a sessão como um usuário padrão
Em quase todos os sistemas, o usuário padrão do Postgres é um "postgres" e eles não precisam de senha para verificação. Portanto, para adicionar uma senha para os usuários padrão no PostgreSQL, primeiro precisamos inicar a sessão e nos conectar como o usuário "postgres".
Se você tiver sucesso na sua tentativa de se conectar como um "postgres" e estiver vendo o lembrete do psql, então o próximo passo é ir até a seção que diz "Mudando a Senha". Você pode receber um erro dizendo que o banco de dados "postgres" não está lá e, se isso acontecer, tente se conectar ao template1 dobanco de dados e, se funcionar, continue com Alterando a Senha.
Além disso, você pode obter um erro de autenticação ao tentar se conectar ao psqlclient; nesse caso, você pode ter que modificar o arquivo de configuração de autenticação do Postgres (pg_hfa.conf). Digite o arquivo de configuração (geralmente é encontrado no /etc/postgresql/#.#/main/pg_hba.conf, onde #.# é a versão atual do Postgres que você está usando). O arquivo de configuração de autenticação é basicamente uma lista de parâmetros de autenticação.
Você precisa rolar o arquivo até encontrar a primeira linha exibindo os usuários postgres na terceira coluna. Remova o ponto-e-vírgula, se necessário, ou adicione se a linha estiver ausente por completo. Em seguida, adicione essa linha ao topo do arquivo "local all postgres peer" e salve o arquivo. Essa modificação simples instruirá o Postgres que, para quaisquer conexões locais estabelecidas e todos os bancos de dados para o usuário "postgres" (que é você, caso não se lembre), ele deve fazer a verificação usando o protocolo peer.
Tenha em mente que as versões mais antigas do Postgres podem favorecer o método de verificação padrão do ident, mas para a versão atual, ele usará o peer conforme mencionado acima.
Depois que você terminar o seu arquivo de configuração e ele tiver sido modificado corretamente, repita as etapas que descrevi no início do artigo para se conectar como o usuário postgres padrão. Se funcionar, você pode mudar a senha.
Como alterar a senha padrão
Se você conseguiu estabelecer com sucesso uma conexão estável com o Postgres no lembrete do psql, é hora de alterar a senha. Use o comando ALTER USER para modificar a senha. Se funcionou, o Postgres mostrará um texto de ALTER ROLE como visto acima.
O texto de confirmação é mais ou menos assim: ""postgres=# ALTER USER postgres PASSWORD 'myPassword';ALTER ROLE""
Quando estiver pronto, você pode deixar o cliente psql usando o comando \ q.