使用 IAM 身份验证创建数据库账户 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

使用 IAM 身份验证创建数据库账户

在使用 IAM 数据库身份验证时,您不需要为创建的用户账户分配数据库密码。如果删除映射到某数据库账户的 IAM 用户,则还应使用 DROP USER 语句删除该数据库账户。

注意

用于 IAM 身份验证的用户名必须与数据库中用户名的大小写相匹配。

对 MySQL 使用 IAM 身份验证

对于 MySQL,身份验证由 AWSAuthenticationPlugin— 处理,这是 Amazon 提供的一个插件,可以与 IAM 无缝协作以验证您的 IAM 用户的身份。连接到数据库实例并发出 CREATE USER 语句,如以下示例中所示。

CREATE USER jane_doe IDENTIFIED WITH AWSAuthenticationPlugin AS 'RDS';

IDENTIFIED WITH 子句允许 MySQL 使用 AWSAuthenticationPlugin 对数据库账户 (jane_doe) 进行身份验证。AS 'RDS' 子句是指身份验证方法。确保指定的数据库用户名与 IAM 数据库访问策略中的资源相同。有关更多信息,请参阅 创建和使用适用于 IAM 数据库访问的 IAM 策略

注意

如果看到以下消息,则意味着 Amazon 提供的插件对当前的数据库实例不可用。

ERROR 1524 (HY000): Plugin 'AWSAuthenticationPlugin' is not loaded

要纠正该错误,请确认您使用支持的配置,并且在数据库实例上启用了 IAM 数据库身份验证。有关更多信息,请参阅 IAM 数据库身份验证的可用性启用和禁用 IAM 数据库身份验证

在使用 AWSAuthenticationPlugin 创建一个账户后,可以像管理其他数据库账户一样管理此账户。例如,您可以使用 GRANT 语句和 REVOKE 语句修改账户权限,或使用 ALTER USER 语句修改各种账户属性。

对 PostgreSQL 使用 IAM 身份验证

要在 PostgreSQL 中使用 IAM 身份验证,请连接到数据库实例,创建数据库用户,然后为其授予 rds_iam 角色,如以下示例中所示。

CREATE USER db_userx; GRANT rds_iam TO db_userx;

确保指定的数据库用户名与 IAM 数据库访问策略中的资源相同。有关更多信息,请参阅 创建和使用适用于 IAM 数据库访问的 IAM 策略