2015-06-14 2 views
0

Я установил на моем сервере постгерскую БД, вошел в систему с помощью postgres (PEER Method), создал другого пользователя и не хотел устанавливать зашифрованный пароль для нового пользователя.Установить зашифрованный пароль postgres без ввода его в виде SQL

Большинство учебников я нахожу сказать, что вы можете изменить пароль по:

ALTER USER other_user WITH ENCRYPTED PASSWORD 'passwd'; 

Но это на самом деле не чувствую себя хорошо, чтобы ввести пароль четкий в консоли SQL. Он сохраняется в истории, и каждый может это увидеть.

Действительно ли это правильный способ установить пароль в postgres?

+0

Не все, только люди, с которыми вы готовы разрешить доступ суперпользователя. Если у вас есть куча людей, входивших в систему с доступом суперпользователя, у вас гораздо больше проблем, чем этот. –

+0

Хе-хе, да, вы правы, к нему никто не имеет доступа. Он просто не хочет сохранять его простым текстом в истории. – user1383029

ответ

1

У меня есть ~/.pgpass в моем доме:

localhost:5432:*:postgres:123456 

и файл запроса password.txt:

ALTER USER other_user WITH ENCRYPTED PASSWORD 'passwd'; 

и запустить эту команду:

psql -U useradmin -h localhost -w -a -E -f password.txt 

Запомнить :

rm .psql_history 
+1

Хорошо, хорошо, это работает, но это действительно непрактично – user1383029

+0

Если вы админ ?. Вы можете установить пароль в качестве администратора. Никто не может видеть вашу историю. – bashman

Смежные вопросы