模拟的 moto rds 数据库实例未从 EnableIAMDatabaseAuthentication 参数读取



我有这个测试,我正在尝试检查,但似乎没有将EnableIAMDatabase身份验证传递给moto

@mock_rds
def test_iam_database_authentication_enabled(self):
print(self.client.create_db_instance(
DBInstanceIdentifier='db-master-1',
AllocatedStorage=10,
Engine='postgres',
DBInstanceClass='db.m1.small',
EnableIAMDatabaseAuthentication=True,
MasterUsername='root',
MasterUserPassword='hunter2',
Port=1234,
))

{'DBInstance': {'DBInstanceIdentifier': 'db-master-1', 'DBInstanceClass': 'db.m1.small', 'Engine': 'postgres', 'DBInstanceStatus': 'available', 'MasterUsername': 'root', 'Endpoint': {'地址': 'db-master-1.aaaaaaaaaa.us-east-2.rds.amazonaws.com', "端口": 1234}, "分配存储": 10, "实例创建时间": datetime.datetime(2020, 1, 13, 13, 1, 10, 665000, tzinfo=tzutc(((, "首选备份窗口": "03:50-04:20", "备份保留期": 1, 'DBSecurityGroups': [], 'VpcSecurityGroups': [], 'DBParameterGroups': [{'DBParameterGroupName': 'default.postgres9.3', 'ParameterApplyStatus': 'in-sync'}], 'PreferredMaintenanceWindow': '星期三:06:38-星期三:07:08', "多可用区": 假, "引擎版本": "9.3.3", 'AutoMinorVersionUpgrade': false, 'ReadReplicaDBInstanceIdentifiers': [], "许可模式": "通用-公共-许可", 'OptionGroupMemberships': [{'OptionGroupName': 'default.postgres9.3', "状态": "同步中"}], "可公开访问": 假, "状态信息": [], "存储类型": "gp2", "存储加密": 假, "DbiResourceId": 'db-M5ENSHXFPU6XHZ4G4ZEI5QIO2U', 'CopyTagsToSnapshot': false, 'DBInstanceArn': 'arn:aws:rds:us-east-2:1234567890:db:db-master-1', 'IAMDatabaseAuthenticationEnabled': false}, 'ResponseMetadata': {'RequestId': '523e3218-afc7-11c3-90f5-f90431260ab4', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'amazon.com'}, '重试尝试': 0}}

我在尝试传递 EnableIAMDatabaseAuthentication 参数时是否做错了什么?它应该设置为:IAMDatabaseAuthentication已启用

我可以确认moto库本身没有从moto库中的这一行代码中传递EnableIAMDatabaseAuthentication参数。

但是,我从上面的链接中得出结论,而不是查看create_db_instance函数的返回值,因为我查看了 boto3 rds 引用,它的响应值无论如何都不会返回 EnableIAMDatabaseAuthentication。

您没有做错任何事,该值在 boto3 的响应中不存在。即使有一天moto确实传递了该参数,它也不会显示到boto3。这方面的一个例子是MasterUserPassword参数,moto确实传递了它,但boto3没有在响应中包含它。

相关内容

  • 没有找到相关文章

最新更新