mariadb 如何使用CNAME主机名而不是配置端点访问AWS RDS

bvpmtnay  于 5个月前  发布在  其他
关注(0)|答案(1)|浏览(46)

我有一个简单的问题,我在Stackoverflow中找不到,尽管这个生成db auth令牌的过程已经被问了很多次,但如果有人能帮忙的话,我想澄清一下。
这一切都是目前正在测试和过程是这样的:
1.我使用以下SQL脚本创建了我的用户:

CREATE USER 'readonly'@'%' IDENTIFIED WITH AWSAuthenticationPlugin AS 'RDS';
GRANT SELECT ON *.* TO 'readonly'@'%';
ALTER USER 'readonly'@'%' REQUIRE SSL;
FLUSH PRIVILEGES;

字符串
1.从这里开始,我使用主机名的CNAME记录生成了db auth令牌,该主机名包含Writer配置端点。

aws rds generate-db-auth-token --hostname rds-dev-mysql56.lock.internal --port 3306 --region us-east-1 --username readonly


1.一旦我通过Datagrip IDE获取令牌以登录,我就会收到以下错误:
[28000][1045]无法连接到地址=(host=rds-dev-mysql56.lock.internal)(端口=3306)(type=master):(conn=107783568)用户“readonly”@“IP”访问被拒绝(使用密码:是)当前字符集为UTF-8。如果密码已使用其他字符集设置,考虑使用选项“passwordCharterEncoding”[28000][1045](conn=107783568)Access denied for user 'readonly'@'IP'(using password:YES)当前字符集为UTF-8。如果已使用其他字符集设置密码,请考虑使用选项“passwordCharterEncoding”
1.然后,我按照这一点,AWS RDS MySQL passwordCharacterEncoding应该与utf8一起添加,就像这篇文章一样:MariaDB - Cannot connect to MariaDB instance from Dbeaver using correct password。然而,随着这一变化,我得到了一个新的错误:
[28000][1045]无法连接到address=(host=rds-dev-mysql56.lock.internal)(port=3306)(type=master):(conn=107785323)用户'readonly'@'IP'访问被拒绝(使用密码:YES)[28000][1045](conn=107785323)用户'readonly'@'IP'访问被拒绝(使用密码:YES)
1.只有当我直接获取Writer示例Configuration端点时,这才能在我能够登录的地方工作。
所以我的问题是,CNAME记录是否与生成db auth令牌一起工作?我在网上看到CNAME记录不能很好地与SSL/TLS加密一起工作,因为我启用了REQUIRE SSL。将感谢任何帮助。
编辑:在我的Datagrip IDE中添加了错误输出,并在passwordCharacterEncoding上添加了以下说明的链接。
编辑2:在Datagrip IDE中,我启用了SSL,并提供了以下信息。
但是,至于如何让它与Writer示例Configuration Endpoint一起工作,我输入以下内容来生成令牌:aws rds generate-db-auth-token --hostname rds-dev-mysql56.cluster-23423423fd.us-east-1.rds.amazonaws.com --port 3306 --region us-east-1 --username readonly
这样我就可以抢到令牌,成功进入数据库。我希望这是足够的信息。

3wabscal

3wabscal1#

我不认为有任何简单的方法来弄清楚这一点,但我猜CNAME记录不与RDS IAM身份验证,这是恼人的。唯一的方法是这样做的工作是:
1.安装AWS Toolkit for IntelliJ或嵌入Writer Instance配置端点(这将是一个痛苦,因此最好使用AWS Toolkit来承担RDS群集所在的正确角色。)您可以在此处找到更多信息:https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/rds-connection.html
1.当使用AWS IntelliJ工具包时,我点击我想通过假设IAM角色连接的RDS集群,这样工作得更快。我唯一需要做的就是更改User

我只是想要一个简单的方法来连接使用CNAME,但这将做的伎俩,而不是。

相关问题