MySQL: Permita que o usuário mude sua senha _own_

3

Em um servidor web existe um serviço MySQL rodando, fornecendo bancos de dados para os usuários do servidor. Cada usuário tem seu próprio banco de dados e sua própria senha e as tabelas INSERT / SELECT / UPDATE / DROP no próprio own DB, mas nada mais.

No entanto, desejo dar ao usuário o privilégio de ATUALIZAR sua própria senha. Eu li "12.4.1.3. GRANT Syntax" da documentação do MySQL 5.1. Mas não encontrei uma maneira de conceder ao usuário o privilégio de alterar sua senha, sem conceder acesso total ao UPDATE para a tabela mysql.user.

Talvez haja também uma maneira de sincronizar as senhas em / etc / shadow junto com as senhas no mysql.user, assim, sempre que o usuário altera sua senha no Linux, a senha do MySQL também é alterada.

Cumprimentos Macs

    
por Sebastian Dressler 08.10.2010 / 20:16

2 respostas

6

Eu não acho que você precise de uma permissão especial para fazer isso.
Acabei de criar um novo usuário (somente GRANT USAGE) e consegui alterar minha senha por meio de:

SET PASSWORD = password('bla');
    
por 08.10.2010 / 20:40
0

GRANT UPDATE permitirá basicamente que o usuário atualize a tabela mysql, o que é uma coisa ruim para fazer. Eu suspeito que um script é necessário aqui - se você quiser sincronizar com a senha do sistema Linux também, então eu suspeito que você precisa de um script wrapper que leva uma senha, altera a senha do Linux e atualiza a senha mysql também - você precisa e Mas, como esse conjunto de permissões executáveis, mas não legíveis, deve ser pensado ou oculto por trás de uma interface da Web.

    
por 08.10.2010 / 20:33