aws java mysql_使用IAM Role的AWS RDS MySQL连接无效

想提前通知我,我是AWS新手 . 对于我的项目,我尝试使用来自部署在EC2实例上的Tomcat上的Java应用程序的IAM身份验证(IAM角色)的AWS RDS MySQL . 在从Java尝试它之前,我在EC2实例的命令提示符下尝试它 . 我正在关注此链接:

到目前为止,我已经做了以下事情(如果我没有使用正确的术语,请原谅):

使用AWS RDS的MySQL

在我的MySQL实例上启用了IAM身份验证

为EC2创建了IAM角色

为上述IAM角色创建了内联策略,并授予了所需的“操作” . 还包括“资源”(我的数据库的用户名 endpoints ),如下所示:

{

"Version": "2012-10-17",

"Statement": [

{

"Effect": "Allow",

"Action": [

"rds-db:connect"

],

"Resource": [

"arn:aws:rds-db:::dbuser:/"

]

}

]

}

将此IAM角色分配给我创建的EC2实例

我遵循了link at the top中给出的所有内容,除了最后一个命令外,一切似乎都有效 .

如在链接中我创建 DB user 如下:

CREATE USER dev_user IDENTIFIED WITH AWSAuthenticationPlugin as 'RDS';

链接中不起作用的最后一个命令是:

mysql -h {db or cluser endpoint} --ssl-ca={certificate file name with complete path} --ssl-verify-server-cert -u {dbusername2} -p"{authenticationtoken}" --enable-cleartext-plugin

每次我运行此命令时都会要求输入密码,然后我收到错误消息 . 我对如何解决它感到茫然 .

在上面的mysql命令中,如果我传递 master user-id (我创建它为'admin')并输入它的密码,我会收到如下错误:

[ec2-user@ip-xxx-xx-xx-16 ~]$ mysql -h --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert -u admin -p 'aws rds generate-db-auth-token --hostname --port 3306 --username dev_user' --enable-cleartext-plugin

Enter password: ERROR 1059 (42000): Identifier name 'aws rds generate-db-auth-token --hostname --port' is too long

如果在同一命令中我提供了上面创建的数据库用户(dev_user) . 如果在命令中提供"dev_user"作为用户以及是否输入密码,则会出现以下错误 . [In this case, the above link did not set a password so what should I do when it asks to enter the password?] :

[ec2-user@ip-xxx-xx-xx-16 ~]$ mysql -h --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert -u dev_user -p 'aws rds generate-db-auth-token --hostname --port 3306 --username dev_user' --enable-cleartext-plugin

Enter password: ERROR 1045 (28000): Access denied for user 'dev_user'@'xxx.xx.xx.16' (using password: YES)

当我在上面的命令中的两个地方输入“admin”时,我得到相同的“拒绝访问...”错误 .

任何帮助将受到高度赞赏 .

谢谢 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值