Я хочу, чтобы иметь возможность войти в мою базу данных postgres AWS с удаленной машины. Я использую следующий Fabric
скрипт:Использование ткани, как я могу предоставить пароль для psql?
import sys
from fabric.api import env, run, abort
env.port = 123
env.use_ssh_config = True
def setuser(user):
"""Sets the ssh user for the fabric script"""
env.user = user
env.password = 'mypassword'
def setenv(server):
"""Sets the environment for the fabric script"""
env.hosts = ['staging']
def sync():
# log into AWS server
run("psql --host=staging.xxx.rds.amazonaws.com --username=x_user --port=5432 --password --dbname=x_database")
run("mypassword")
Я бег этого Fabric
скрипта с помощью следующей команды:
fab -f sync_staging.py sync --password=mypassword
Это регистрирует меня в удаленную машину, запускает линию run("psql ....
, а затем он попросит у меня пароль:
[stage] out: Password for user x_user:
есть ли способ, что я могу поставить пароль (или ответить на запрос), так что он вот gs меня автоматически?
Вы пытались настроить конфигурацию базы данных на «trust» в файле pg_hba.conf? Я не уверен, но я хочу, чтобы psql не запрашивал пароль. – yellowcap
Я не могу редактировать файл 'pg_hba.conf', поскольку AWS не разрешает его. – djq
Я только что проверил на консоли RDS, unter «группы параметров», вы можете изменить набор параметров, и есть флаг «изменяет». Файл hba.conf не модифицируется, поэтому может быть невозможно разрешить доступ IP без пароля. – yellowcap