我尝试使用本地计算机上的 IAM 用户连接我的 Aurora Postgres 数据库,但出现以下错误:psql: FATAL: PAM authentication failed for user "test-rds"
在数据库上创建用户的命令:
CREATE USER test-rds WITH LOGIN;
GRANT rds_iam TO test-rds;
Run Code Online (Sandbox Code Playgroud)
我已创建此策略并将其附加到我的 IAM 用户。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"rds-db:connect"
],
"Resource": [
"arn:aws:rds-db:eu-west-1:$account:dbuser:$db-id/test-rds",
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
然后测试以下命令:
export PGPASSWORD=$(aws rds generate-db-auth-token --hostname $db-host --port $db-port --username test-rds --region eu-west-1)
psql "host=$db-host port=$db-port sslmode=require sslrootcert=rds-combined-ca-bundle.pem dbname=postgres user=test-rds"
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用 postgresql 用户,我可以访问我的数据库,但不能使用 iam 用户,我不明白为什么。
请帮助我^^!