Questão de Banco de Dados — PostgreSQL — VUNESP 2024
- Código
- vu212057
- Banca
- VUNESP
- Órgão
- Pref Santo André
- Ano
- 2024
- Cargo
- ATI ( )
- ATrust e Peer.
- BPAM e Currval.
- CLDAP e EXPLAIN.
- DPassword e DUMP.
- ERADIUS e Planner.
GabaritoA — Trust e Peer.
Gabarito: letra A. O PostgreSQL implementa diversos métodos de autenticação de clientes, e entre eles estão Trust e Peer — ambos configurados no arquivo pg_hba.conf. Trust permite conexão sem senha, confiando no cliente; Peer autentica com base no usuário do sistema operacional. As demais alternativas misturam métodos reais (PAM, LDAP, Password, RADIUS) com comandos SQL (EXPLAIN, DUMP, Planner, Currval), que não são métodos de autenticação.
O PostgreSQL, como SGBD objeto-relacional, controla o acesso de clientes por meio do arquivo pg_hba.conf (HBA = host-based authentication). Esse arquivo é lido sequencialmente a cada tentativa de conexão, e cada registro especifica o tipo de conexão, o intervalo de endereços IP, o banco de dados, o usuário e o método de autenticação a ser aplicado. Os métodos definem como o servidor valida a identidade do cliente antes de permitir o acesso.
Entre os métodos suportados, destacam-se:
Trust: aceita a conexão sem qualquer verificação de senha — o servidor simplesmente confia no cliente. É o método mais fraco, usado apenas em ambientes controlados (ex.: conexões locais).
Peer: obtém o nome de usuário do sistema operacional do cliente e o compara com o nome do banco de dados; só funciona em conexões locais (via socket Unix).
Password: exige senha, que pode ser enviada em texto claro ou criptografada (MD5, SCRAM-SHA-256).
PAM: delega a autenticação ao Pluggable Authentication Modules do sistema operacional.
LDAP: autentica contra um servidor LDAP (ex.: Active Directory).
RADIUS: autentica via servidor RADIUS.
GSSAPI, SSPI, Ident, Certificate: outros métodos disponíveis.
A banca explora a confusão entre métodos de autenticação e comandos/funções do PostgreSQL. Por exemplo, EXPLAIN é um comando SQL para exibir o plano de execução de uma consulta; DUMP (pg_dump) é uma ferramenta de backup; Currval é uma função que retorna o valor atual de uma sequência; Planner é o componente que otimiza consultas. Nenhum deles é método de autenticação.
A pegadinha está em alternativas que misturam termos reais do PostgreSQL (PAM, LDAP, Password, RADIUS) com elementos que não pertencem ao contexto de autenticação. O candidato que conhece os métodos reais, mas não distingue os comandos, pode se confundir. A alternativa A é a única que apresenta dois métodos de autenticação genuínos.
Critério | Trust | Peer |
|---|---|---|
Verificação de senha | Não exige senha (confiança total) | Não exige senha |
Base de validação | Confia no cliente (sem checagem) | Usuário do sistema operacional |
Tipo de conexão | Qualquer (local ou remota) | Apenas local (socket Unix) |
Nível de segurança | Fraco (uso em ambientes controlados) | Moderado (depende do SO) |
Trust e Peer são, de fato, métodos de autenticação do PostgreSQL. Trust dispensa senha (confiança total); Peer usa o usuário do SO. Ambos são configurados no pg_hba.conf.
PAM é um método real, mas Currval é uma função de sequência (currval), não um método de autenticação.
LDAP é um método real, mas EXPLAIN é um comando SQL para análise de planos de execução, não um método de autenticação.
Password é um método real, mas DUMP (pg_dump) é uma ferramenta de backup, não um método de autenticação.
RADIUS é um método real, mas Planner é o componente do PostgreSQL responsável pelo planejamento/otimização de consultas, não um método de autenticação.
A banca mistura métodos de autenticação reais (PAM, LDAP, Password, RADIUS) com comandos e funções do PostgreSQL (EXPLAIN, DUMP, Currval, Planner). O candidato que conhece os métodos, mas não distingue os comandos, pode cair. Lembre-se: método de autenticação é o que aparece no pg_hba.conf — Trust, Peer, Password, PAM, LDAP, RADIUS, GSSAPI, SSPI, Ident, Certificate.
Para fixar, monte uma tabela mental: métodos de autenticação = Trust, Peer, Password, PAM, LDAP, RADIUS, GSSAPI, SSPI, Ident, Certificate. Comandos/funções = EXPLAIN, DUMP, Currval, Planner, VACUUM, ANALYZE. Na prova, se a alternativa trouxer um termo que não é método, elimine-a.
Gabarito: letra A
Link permanente: /questoes/vu212057