postgresql 我是否需要每15分钟重新连接一次RDS IAM身份验证

8yoxcaq7  于 2023-01-25  发布在  PostgreSQL
关注(0)|答案(2)|浏览(141)

我正在使用带有IAM身份验证的RDS postgresql。在我的应用程序中,它在连接到RDS群集之前在运行时生成令牌。基于AWS文档,
An authentication token is a string of characters that you use instead of a password. After you generate an authentication token, it's valid for 15 minutes before it expires. If you try to connect using an expired token, the connection request is denied.
令牌仅在15分钟内有效。我的问题是,我是否需要每15分钟重新连接一次?如果连接已设置,是否需要为每次查询/插入/更新等操作使用令牌?如果不需要令牌,则意味着我需要保持连接始终打开。RDS是否支持该连接模式?

xmjla07d

xmjla07d1#

我的问题是,我需要每15分钟重新连接一次吗?
不需要。令牌是建立连接所必需的,它并不决定现有连接可以持续多长时间。默认情况下,没有活动的连接是28800s(8小时),如here所述。
这意味着如果你终止了你的连接,或者mysql由于没有被使用而终止了它,那么如果现有的令牌已经过期,你需要获得一个新的令牌来重新连接。

xhv8bpkk

xhv8bpkk2#

如果您与数据库的连接中断(由于任何原因),并且您需要重新连接,并且自您创建令牌以来已超过15分钟,则您需要创建新令牌。否则,如果您保持与数据库的连接,则在成功验证后,您的访问不会中断。
From AWS“令牌仅用于身份验证,在会话建立后不会影响会话。”
没有办法将令牌的使用期限延长到15分钟以上。这个Github问题显示了其他人在通过短暂的令牌使用IAM进行RDS时遇到的相同问题。
AWS Docs用于通过IAM角色/用户连接到RDS。
AWS文档中的建议建议“使用IAM数据库身份验证作为临时、个人访问数据库的机制”。

相关问题