ALTER USER

Nome

ALTER USER -- altera uma conta de usuário do banco de dados

Sinopse

ALTER USER nome [ [ WITH ] opção [ ... ] ]

onde opção pode ser:

    [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'senha' 
    | CREATEDB | NOCREATEDB
    | CREATEUSER | NOCREATEUSER 
    | VALID UNTIL 'data_hora'

ALTER USER nome RENAME TO novo_nome

ALTER USER nome SET parâmetro { TO | = } { valor | DEFAULT }
ALTER USER nome RESET parâmetro

Descrição

O comando ALTER USER altera os atributos de uma conta de usuário do PostgreSQL. Os atributos não mencionados no comando permanecem com suas definições anteriores.

A primeira forma deste comando mostrada na sinopse muda alguns privilégios globais do usuário e definições de autenticação (Veja abaixo para obter detalhes). Somente um superusuário do banco de dados pode alterar os privilégios e a expiração da senha com este comando. Os usuários comuns podem alterar apenas suas próprias senhas.

A segunda forma muda o nome do usuário. Somente um superusuário do banco de dados pode mudar nome de conta de usuário. O usuário da sessão não pode ter o nome mudado (Deve-se conectar como um usuário diferente se for necessário fazê-lo).

A terceira e a quarta variantes mudam, para uma determinada variável de configuração, o valor padrão da sessão do usuário. Após isto, sempre que o usuário iniciar uma nova sessão o valor especificado se tornará o padrão da sessão, substituindo qualquer configuração presente em postgresql.conf, ou que tenha sido recebida através da linha de comando do postmaster. Os usuários comuns podem mudar seus próprios padrões de sessão. Os superusuários podem mudar os padrões de sessão de qualquer usuário. Certas variáveis não podem ser definidas desta maneira, ou só podem ser definidas por um superusuário.

Parâmetros

nome
O nome de usuário cujos atributos estão sendo alterados.
senha
A nova senha a ser utilizada para esta conta.
ENCRYPTED
UNENCRYPTED
Estas palavras chave controlam se a senha é armazenada criptografada, ou não, em pg_shadow (Consulte o comando CREATE USER para obter mais informações sobre esta opção).
CREATEDB
NOCREATEDB
Estas cláusulas definem a permissão para o usuário criar banco de dados. Se CREATEDB for especificado, o usuário terá permissão para criar seus próprios bancos de dados. Especificando NOCREATEDB nega-se ao usuário a permissão para criar banco de dados.
CREATEUSER
NOCREATEUSER
Estas cláusulas determinam se o usuário terá permissão para criar novos usuários. CREATEUSER torna o usuário um superusuário, não Estas cláusulas determinam se o usuário terá permissão para criar novos usuários. CREATEUSER torna o usuário um superusuário, não está sujeito a restrições de acesso. sujeito a restrições de acesso.
data_hora
A data (e, opcionalmente, a hora) de expiração da senha do usuário. Para fazer com que a senha nunca expire deve ser utilizado 'infinity'.
novo_nome
O novo nome de usuário.
parâmetro
valor
Define o valor fornecido como sendo o valor padrão para o parâmetro de configuração especificado. Se valor for DEFAULT ou, de forma equivalente, se RESET for utilizado, a definição da variável específica para o usuário é removida, e o valor padrão global do sistema será herdado nas novas sessões do usuário. Use RESET ALL para remover todas as definições específicas do usuário. Consulte o comando SET e o Seção 16.4 para obter mais informações sobre os nomes e valores permitidos para os parâmetros.

Observações

Use o comando CREATE USER para criar novos usuários, e o comando DROP USER para remover um usuário.

O comando ALTER USER não pode mudar a participação do usuário nos grupos. Use o comando ALTER GROUP para realizar esta operação.

Utilizando o comando ALTER DATABASE é possível associar a um banco de dados específico, em vez de associar a um usuário, o valor padrão para a sessão.

Exemplos

Mudar a senha do usuário:

ALTER USER marcos WITH PASSWORD 'hu8jmn3';

Mudar a data de expiração da senha do usuário:

ALTER USER manuel VALID UNTIL 'Jan 31 2030';

Mudar a data de expiração da senha, especificando que a senha expira ao meio dia de 4 de maio de 2005, usando uma zona horária uma hora adiante da UTC:

ALTER USER chris VALID UNTIL 'May 4 12:00:00 2005 +1';

Tornar o usuário válido para sempre:

ALTER USER fred VALID UNTIL 'infinity';

Dar ao usuário permissão para criar outros usuários e novos bancos de dados:

ALTER USER marcela CREATEUSER CREATEDB;

Compatibilidade

O comando ALTER USER é uma extensão do PostgreSQL. O padrão SQL deixa a definição dos usuários para a implementação.

Veja também

CREATE USER , DROP USER , SET
SourceForge.net Logo