aws-sdk-rds 1.166.0 → 1.167.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -422,6 +422,7 @@ module Aws::RDS
422
422
  LogTypeList = Shapes::ListShape.new(name: 'LogTypeList')
423
423
  Long = Shapes::IntegerShape.new(name: 'Long')
424
424
  LongOptional = Shapes::IntegerShape.new(name: 'LongOptional')
425
+ MasterUserSecret = Shapes::StructureShape.new(name: 'MasterUserSecret')
425
426
  MaxRecords = Shapes::IntegerShape.new(name: 'MaxRecords')
426
427
  MinimumEngineVersionPerAllowedValue = Shapes::StructureShape.new(name: 'MinimumEngineVersionPerAllowedValue')
427
428
  MinimumEngineVersionPerAllowedValueList = Shapes::ListShape.new(name: 'MinimumEngineVersionPerAllowedValueList')
@@ -931,6 +932,8 @@ module Aws::RDS
931
932
  CreateDBClusterMessage.add_member(:serverless_v2_scaling_configuration, Shapes::ShapeRef.new(shape: ServerlessV2ScalingConfiguration, location_name: "ServerlessV2ScalingConfiguration"))
932
933
  CreateDBClusterMessage.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
933
934
  CreateDBClusterMessage.add_member(:db_system_id, Shapes::ShapeRef.new(shape: String, location_name: "DBSystemId"))
935
+ CreateDBClusterMessage.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
936
+ CreateDBClusterMessage.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
934
937
  CreateDBClusterMessage.add_member(:source_region, Shapes::ShapeRef.new(shape: String, location_name: "SourceRegion"))
935
938
  CreateDBClusterMessage.struct_class = Types::CreateDBClusterMessage
936
939
 
@@ -1006,6 +1009,8 @@ module Aws::RDS
1006
1009
  CreateDBInstanceMessage.add_member(:backup_target, Shapes::ShapeRef.new(shape: String, location_name: "BackupTarget"))
1007
1010
  CreateDBInstanceMessage.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
1008
1011
  CreateDBInstanceMessage.add_member(:storage_throughput, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "StorageThroughput"))
1012
+ CreateDBInstanceMessage.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
1013
+ CreateDBInstanceMessage.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
1009
1014
  CreateDBInstanceMessage.struct_class = Types::CreateDBInstanceMessage
1010
1015
 
1011
1016
  CreateDBInstanceReadReplicaMessage.add_member(:db_instance_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "DBInstanceIdentifier"))
@@ -1225,6 +1230,7 @@ module Aws::RDS
1225
1230
  DBCluster.add_member(:serverless_v2_scaling_configuration, Shapes::ShapeRef.new(shape: ServerlessV2ScalingConfigurationInfo, location_name: "ServerlessV2ScalingConfiguration"))
1226
1231
  DBCluster.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
1227
1232
  DBCluster.add_member(:db_system_id, Shapes::ShapeRef.new(shape: String, location_name: "DBSystemId"))
1233
+ DBCluster.add_member(:master_user_secret, Shapes::ShapeRef.new(shape: MasterUserSecret, location_name: "MasterUserSecret"))
1228
1234
  DBCluster.struct_class = Types::DBCluster
1229
1235
 
1230
1236
  DBClusterAlreadyExistsFault.struct_class = Types::DBClusterAlreadyExistsFault
@@ -1492,6 +1498,7 @@ module Aws::RDS
1492
1498
  DBInstance.add_member(:activity_stream_policy_status, Shapes::ShapeRef.new(shape: ActivityStreamPolicyStatus, location_name: "ActivityStreamPolicyStatus"))
1493
1499
  DBInstance.add_member(:storage_throughput, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "StorageThroughput"))
1494
1500
  DBInstance.add_member(:db_system_id, Shapes::ShapeRef.new(shape: String, location_name: "DBSystemId"))
1501
+ DBInstance.add_member(:master_user_secret, Shapes::ShapeRef.new(shape: MasterUserSecret, location_name: "MasterUserSecret"))
1495
1502
  DBInstance.struct_class = Types::DBInstance
1496
1503
 
1497
1504
  DBInstanceAlreadyExistsFault.struct_class = Types::DBInstanceAlreadyExistsFault
@@ -2471,6 +2478,11 @@ module Aws::RDS
2471
2478
 
2472
2479
  LogTypeList.member = Shapes::ShapeRef.new(shape: String)
2473
2480
 
2481
+ MasterUserSecret.add_member(:secret_arn, Shapes::ShapeRef.new(shape: String, location_name: "SecretArn"))
2482
+ MasterUserSecret.add_member(:secret_status, Shapes::ShapeRef.new(shape: String, location_name: "SecretStatus"))
2483
+ MasterUserSecret.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "KmsKeyId"))
2484
+ MasterUserSecret.struct_class = Types::MasterUserSecret
2485
+
2474
2486
  MinimumEngineVersionPerAllowedValue.add_member(:allowed_value, Shapes::ShapeRef.new(shape: String, location_name: "AllowedValue"))
2475
2487
  MinimumEngineVersionPerAllowedValue.add_member(:minimum_engine_version, Shapes::ShapeRef.new(shape: String, location_name: "MinimumEngineVersion"))
2476
2488
  MinimumEngineVersionPerAllowedValue.struct_class = Types::MinimumEngineVersionPerAllowedValue
@@ -2550,6 +2562,9 @@ module Aws::RDS
2550
2562
  ModifyDBClusterMessage.add_member(:performance_insights_retention_period, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "PerformanceInsightsRetentionPeriod"))
2551
2563
  ModifyDBClusterMessage.add_member(:serverless_v2_scaling_configuration, Shapes::ShapeRef.new(shape: ServerlessV2ScalingConfiguration, location_name: "ServerlessV2ScalingConfiguration"))
2552
2564
  ModifyDBClusterMessage.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
2565
+ ModifyDBClusterMessage.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
2566
+ ModifyDBClusterMessage.add_member(:rotate_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "RotateMasterUserPassword"))
2567
+ ModifyDBClusterMessage.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
2553
2568
  ModifyDBClusterMessage.struct_class = Types::ModifyDBClusterMessage
2554
2569
 
2555
2570
  ModifyDBClusterParameterGroupMessage.add_member(:db_cluster_parameter_group_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "DBClusterParameterGroupName"))
@@ -2617,6 +2632,9 @@ module Aws::RDS
2617
2632
  ModifyDBInstanceMessage.add_member(:resume_full_automation_mode_minutes, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "ResumeFullAutomationModeMinutes"))
2618
2633
  ModifyDBInstanceMessage.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
2619
2634
  ModifyDBInstanceMessage.add_member(:storage_throughput, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "StorageThroughput"))
2635
+ ModifyDBInstanceMessage.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
2636
+ ModifyDBInstanceMessage.add_member(:rotate_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "RotateMasterUserPassword"))
2637
+ ModifyDBInstanceMessage.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
2620
2638
  ModifyDBInstanceMessage.struct_class = Types::ModifyDBInstanceMessage
2621
2639
 
2622
2640
  ModifyDBInstanceResult.add_member(:db_instance, Shapes::ShapeRef.new(shape: DBInstance, location_name: "DBInstance"))
@@ -3114,7 +3132,7 @@ module Aws::RDS
3114
3132
  RestoreDBClusterFromS3Message.add_member(:engine_version, Shapes::ShapeRef.new(shape: String, location_name: "EngineVersion"))
3115
3133
  RestoreDBClusterFromS3Message.add_member(:port, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "Port"))
3116
3134
  RestoreDBClusterFromS3Message.add_member(:master_username, Shapes::ShapeRef.new(shape: String, required: true, location_name: "MasterUsername"))
3117
- RestoreDBClusterFromS3Message.add_member(:master_user_password, Shapes::ShapeRef.new(shape: String, required: true, location_name: "MasterUserPassword"))
3135
+ RestoreDBClusterFromS3Message.add_member(:master_user_password, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserPassword"))
3118
3136
  RestoreDBClusterFromS3Message.add_member(:option_group_name, Shapes::ShapeRef.new(shape: String, location_name: "OptionGroupName"))
3119
3137
  RestoreDBClusterFromS3Message.add_member(:preferred_backup_window, Shapes::ShapeRef.new(shape: String, location_name: "PreferredBackupWindow"))
3120
3138
  RestoreDBClusterFromS3Message.add_member(:preferred_maintenance_window, Shapes::ShapeRef.new(shape: String, location_name: "PreferredMaintenanceWindow"))
@@ -3135,6 +3153,8 @@ module Aws::RDS
3135
3153
  RestoreDBClusterFromS3Message.add_member(:domain_iam_role_name, Shapes::ShapeRef.new(shape: String, location_name: "DomainIAMRoleName"))
3136
3154
  RestoreDBClusterFromS3Message.add_member(:serverless_v2_scaling_configuration, Shapes::ShapeRef.new(shape: ServerlessV2ScalingConfiguration, location_name: "ServerlessV2ScalingConfiguration"))
3137
3155
  RestoreDBClusterFromS3Message.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
3156
+ RestoreDBClusterFromS3Message.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
3157
+ RestoreDBClusterFromS3Message.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
3138
3158
  RestoreDBClusterFromS3Message.struct_class = Types::RestoreDBClusterFromS3Message
3139
3159
 
3140
3160
  RestoreDBClusterFromS3Result.add_member(:db_cluster, Shapes::ShapeRef.new(shape: DBCluster, location_name: "DBCluster"))
@@ -3290,6 +3310,8 @@ module Aws::RDS
3290
3310
  RestoreDBInstanceFromS3Message.add_member(:max_allocated_storage, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "MaxAllocatedStorage"))
3291
3311
  RestoreDBInstanceFromS3Message.add_member(:network_type, Shapes::ShapeRef.new(shape: String, location_name: "NetworkType"))
3292
3312
  RestoreDBInstanceFromS3Message.add_member(:storage_throughput, Shapes::ShapeRef.new(shape: IntegerOptional, location_name: "StorageThroughput"))
3313
+ RestoreDBInstanceFromS3Message.add_member(:manage_master_user_password, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ManageMasterUserPassword"))
3314
+ RestoreDBInstanceFromS3Message.add_member(:master_user_secret_kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "MasterUserSecretKmsKeyId"))
3293
3315
  RestoreDBInstanceFromS3Message.struct_class = Types::RestoreDBInstanceFromS3Message
3294
3316
 
3295
3317
  RestoreDBInstanceFromS3Result.add_member(:db_instance, Shapes::ShapeRef.new(shape: DBInstance, location_name: "DBInstance"))
@@ -649,6 +649,23 @@ module Aws::RDS
649
649
  data[:db_system_id]
650
650
  end
651
651
 
652
+ # Contains the secret managed by RDS in Amazon Web Services Secrets
653
+ # Manager for the master user password.
654
+ #
655
+ # For more information, see [Password management with Amazon Web
656
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide* and
657
+ # [Password management with Amazon Web Services Secrets Manager][2] in
658
+ # the *Amazon Aurora User Guide.*
659
+ #
660
+ #
661
+ #
662
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
663
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html
664
+ # @return [Types::MasterUserSecret]
665
+ def master_user_secret
666
+ data[:master_user_secret]
667
+ end
668
+
652
669
  # @!endgroup
653
670
 
654
671
  # @return [Client]
@@ -847,6 +864,8 @@ module Aws::RDS
847
864
  # },
848
865
  # network_type: "String",
849
866
  # db_system_id: "String",
867
+ # manage_master_user_password: false,
868
+ # master_user_secret_kms_key_id: "String",
850
869
  # source_region: "String",
851
870
  # })
852
871
  # @param [Hash] options ({})
@@ -1025,7 +1044,11 @@ module Aws::RDS
1025
1044
  # The password for the master database user. This password can contain
1026
1045
  # any printable ASCII character except "/", """, or "@".
1027
1046
  #
1028
- # Constraints: Must contain from 8 to 41 characters.
1047
+ # Constraints:
1048
+ #
1049
+ # * Must contain from 8 to 41 characters.
1050
+ #
1051
+ # * Can't be specified if `ManageMasterUserPassword` is turned on.
1029
1052
  #
1030
1053
  # Valid for: Aurora DB clusters and Multi-AZ DB clusters
1031
1054
  # @option options [String] :option_group_name
@@ -1558,6 +1581,52 @@ module Aws::RDS
1558
1581
  # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html
1559
1582
  # @option options [String] :db_system_id
1560
1583
  # Reserved for future use.
1584
+ # @option options [Boolean] :manage_master_user_password
1585
+ # A value that indicates whether to manage the master user password with
1586
+ # Amazon Web Services Secrets Manager.
1587
+ #
1588
+ # For more information, see [Password management with Amazon Web
1589
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide* and
1590
+ # [Password management with Amazon Web Services Secrets Manager][2] in
1591
+ # the *Amazon Aurora User Guide.*
1592
+ #
1593
+ # Constraints:
1594
+ #
1595
+ # * Can't manage the master user password with Amazon Web Services
1596
+ # Secrets Manager if `MasterUserPassword` is specified.
1597
+ #
1598
+ # ^
1599
+ #
1600
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
1601
+ #
1602
+ #
1603
+ #
1604
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
1605
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html
1606
+ # @option options [String] :master_user_secret_kms_key_id
1607
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
1608
+ # automatically generated and managed in Amazon Web Services Secrets
1609
+ # Manager.
1610
+ #
1611
+ # This setting is valid only if the master user password is managed by
1612
+ # RDS in Amazon Web Services Secrets Manager for the DB cluster.
1613
+ #
1614
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
1615
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
1616
+ # different Amazon Web Services account, specify the key ARN or alias
1617
+ # ARN.
1618
+ #
1619
+ # If you don't specify `MasterUserSecretKmsKeyId`, then the
1620
+ # `aws/secretsmanager` KMS key is used to encrypt the secret. If the
1621
+ # secret is in a different Amazon Web Services account, then you can't
1622
+ # use the `aws/secretsmanager` KMS key to encrypt the secret, and you
1623
+ # must use a customer managed KMS key.
1624
+ #
1625
+ # There is a default KMS key for your Amazon Web Services account. Your
1626
+ # Amazon Web Services account has a different default KMS key for each
1627
+ # Amazon Web Services Region.
1628
+ #
1629
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
1561
1630
  # @option options [String] :source_region
1562
1631
  # The source region of the snapshot. This is only needed when the
1563
1632
  # shapshot is encrypted and in a different region.
@@ -1734,6 +1803,9 @@ module Aws::RDS
1734
1803
  # max_capacity: 1.0,
1735
1804
  # },
1736
1805
  # network_type: "String",
1806
+ # manage_master_user_password: false,
1807
+ # rotate_master_user_password: false,
1808
+ # master_user_secret_kms_key_id: "String",
1737
1809
  # })
1738
1810
  # @param [Hash] options ({})
1739
1811
  # @option options [String] :new_db_cluster_identifier
@@ -1803,7 +1875,11 @@ module Aws::RDS
1803
1875
  # The new password for the master database user. This password can
1804
1876
  # contain any printable ASCII character except "/", """, or "@".
1805
1877
  #
1806
- # Constraints: Must contain from 8 to 41 characters.
1878
+ # Constraints:
1879
+ #
1880
+ # * Must contain from 8 to 41 characters.
1881
+ #
1882
+ # * Can't be specified if `ManageMasterUserPassword` is turned on.
1807
1883
  #
1808
1884
  # Valid for: Aurora DB clusters and Multi-AZ DB clusters
1809
1885
  # @option options [String] :option_group_name
@@ -2215,6 +2291,93 @@ module Aws::RDS
2215
2291
  #
2216
2292
  #
2217
2293
  # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html
2294
+ # @option options [Boolean] :manage_master_user_password
2295
+ # A value that indicates whether to manage the master user password with
2296
+ # Amazon Web Services Secrets Manager.
2297
+ #
2298
+ # If the DB cluster doesn't manage the master user password with Amazon
2299
+ # Web Services Secrets Manager, you can turn on this management. In this
2300
+ # case, you can't specify `MasterUserPassword`.
2301
+ #
2302
+ # If the DB cluster already manages the master user password with Amazon
2303
+ # Web Services Secrets Manager, and you specify that the master user
2304
+ # password is not managed with Amazon Web Services Secrets Manager, then
2305
+ # you must specify `MasterUserPassword`. In this case, RDS deletes the
2306
+ # secret and uses the new password for the master user specified by
2307
+ # `MasterUserPassword`.
2308
+ #
2309
+ # For more information, see [Password management with Amazon Web
2310
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide* and
2311
+ # [Password management with Amazon Web Services Secrets Manager][2] in
2312
+ # the *Amazon Aurora User Guide.*
2313
+ #
2314
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
2315
+ #
2316
+ #
2317
+ #
2318
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
2319
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html
2320
+ # @option options [Boolean] :rotate_master_user_password
2321
+ # A value that indicates whether to rotate the secret managed by Amazon
2322
+ # Web Services Secrets Manager for the master user password.
2323
+ #
2324
+ # This setting is valid only if the master user password is managed by
2325
+ # RDS in Amazon Web Services Secrets Manager for the DB cluster. The
2326
+ # secret value contains the updated password.
2327
+ #
2328
+ # For more information, see [Password management with Amazon Web
2329
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide* and
2330
+ # [Password management with Amazon Web Services Secrets Manager][2] in
2331
+ # the *Amazon Aurora User Guide.*
2332
+ #
2333
+ # Constraints:
2334
+ #
2335
+ # * You must apply the change immediately when rotating the master user
2336
+ # password.
2337
+ #
2338
+ # ^
2339
+ #
2340
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
2341
+ #
2342
+ #
2343
+ #
2344
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
2345
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html
2346
+ # @option options [String] :master_user_secret_kms_key_id
2347
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
2348
+ # automatically generated and managed in Amazon Web Services Secrets
2349
+ # Manager.
2350
+ #
2351
+ # This setting is valid only if both of the following conditions are
2352
+ # met:
2353
+ #
2354
+ # * The DB cluster doesn't manage the master user password in Amazon
2355
+ # Web Services Secrets Manager.
2356
+ #
2357
+ # If the DB cluster already manages the master user password in Amazon
2358
+ # Web Services Secrets Manager, you can't change the KMS key that is
2359
+ # used to encrypt the secret.
2360
+ #
2361
+ # * You are turning on `ManageMasterUserPassword` to manage the master
2362
+ # user password in Amazon Web Services Secrets Manager.
2363
+ #
2364
+ # If you are turning on `ManageMasterUserPassword` and don't specify
2365
+ # `MasterUserSecretKmsKeyId`, then the `aws/secretsmanager` KMS key is
2366
+ # used to encrypt the secret. If the secret is in a different Amazon
2367
+ # Web Services account, then you can't use the `aws/secretsmanager`
2368
+ # KMS key to encrypt the secret, and you must use a customer managed
2369
+ # KMS key.
2370
+ #
2371
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
2372
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
2373
+ # different Amazon Web Services account, specify the key ARN or alias
2374
+ # ARN.
2375
+ #
2376
+ # There is a default KMS key for your Amazon Web Services account. Your
2377
+ # Amazon Web Services account has a different default KMS key for each
2378
+ # Amazon Web Services Region.
2379
+ #
2380
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
2218
2381
  # @return [DBCluster]
2219
2382
  def modify(options = {})
2220
2383
  options = options.merge(db_cluster_identifier: @id)
@@ -741,6 +741,20 @@ module Aws::RDS
741
741
  data[:db_system_id]
742
742
  end
743
743
 
744
+ # Contains the secret managed by RDS in Amazon Web Services Secrets
745
+ # Manager for the master user password.
746
+ #
747
+ # For more information, see [Password management with Amazon Web
748
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide.*
749
+ #
750
+ #
751
+ #
752
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
753
+ # @return [Types::MasterUserSecret]
754
+ def master_user_secret
755
+ data[:master_user_secret]
756
+ end
757
+
744
758
  # @!endgroup
745
759
 
746
760
  # @return [Client]
@@ -939,6 +953,8 @@ module Aws::RDS
939
953
  # backup_target: "String",
940
954
  # network_type: "String",
941
955
  # storage_throughput: 1,
956
+ # manage_master_user_password: false,
957
+ # master_user_secret_kms_key_id: "String",
942
958
  # })
943
959
  # @param [Hash] options ({})
944
960
  # @option options [String] :db_name
@@ -1240,6 +1256,9 @@ module Aws::RDS
1240
1256
  # Not applicable. The password for the master user is managed by the DB
1241
1257
  # cluster.
1242
1258
  #
1259
+ # Constraints: Can't be specified if `ManageMasterUserPassword` is
1260
+ # turned on.
1261
+ #
1243
1262
  # **MariaDB**
1244
1263
  #
1245
1264
  # Constraints: Must contain from 8 to 41 characters.
@@ -1981,6 +2000,45 @@ module Aws::RDS
1981
2000
  # This setting applies only to the `gp3` storage type.
1982
2001
  #
1983
2002
  # This setting doesn't apply to RDS Custom or Amazon Aurora.
2003
+ # @option options [Boolean] :manage_master_user_password
2004
+ # A value that indicates whether to manage the master user password with
2005
+ # Amazon Web Services Secrets Manager.
2006
+ #
2007
+ # For more information, see [Password management with Amazon Web
2008
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide.*
2009
+ #
2010
+ # Constraints:
2011
+ #
2012
+ # * Can't manage the master user password with Amazon Web Services
2013
+ # Secrets Manager if `MasterUserPassword` is specified.
2014
+ #
2015
+ # ^
2016
+ #
2017
+ #
2018
+ #
2019
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
2020
+ # @option options [String] :master_user_secret_kms_key_id
2021
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
2022
+ # automatically generated and managed in Amazon Web Services Secrets
2023
+ # Manager.
2024
+ #
2025
+ # This setting is valid only if the master user password is managed by
2026
+ # RDS in Amazon Web Services Secrets Manager for the DB instance.
2027
+ #
2028
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
2029
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
2030
+ # different Amazon Web Services account, specify the key ARN or alias
2031
+ # ARN.
2032
+ #
2033
+ # If you don't specify `MasterUserSecretKmsKeyId`, then the
2034
+ # `aws/secretsmanager` KMS key is used to encrypt the secret. If the
2035
+ # secret is in a different Amazon Web Services account, then you can't
2036
+ # use the `aws/secretsmanager` KMS key to encrypt the secret, and you
2037
+ # must use a customer managed KMS key.
2038
+ #
2039
+ # There is a default KMS key for your Amazon Web Services account. Your
2040
+ # Amazon Web Services account has a different default KMS key for each
2041
+ # Amazon Web Services Region.
1984
2042
  # @return [DBInstance]
1985
2043
  def create(options = {})
1986
2044
  options = options.merge(db_instance_identifier: @id)
@@ -2709,6 +2767,9 @@ module Aws::RDS
2709
2767
  # resume_full_automation_mode_minutes: 1,
2710
2768
  # network_type: "String",
2711
2769
  # storage_throughput: 1,
2770
+ # manage_master_user_password: false,
2771
+ # rotate_master_user_password: false,
2772
+ # master_user_secret_kms_key_id: "String",
2712
2773
  # })
2713
2774
  # @param [Hash] options ({})
2714
2775
  # @option options [Integer] :allocated_storage
@@ -2830,6 +2891,9 @@ module Aws::RDS
2830
2891
  #
2831
2892
  # Default: Uses existing setting
2832
2893
  #
2894
+ # Constraints: Can't be specified if `ManageMasterUserPassword` is
2895
+ # turned on.
2896
+ #
2833
2897
  # **MariaDB**
2834
2898
  #
2835
2899
  # Constraints: Must contain from 8 to 41 characters.
@@ -3483,6 +3547,88 @@ module Aws::RDS
3483
3547
  # This setting applies only to the `gp3` storage type.
3484
3548
  #
3485
3549
  # This setting doesn't apply to RDS Custom or Amazon Aurora.
3550
+ # @option options [Boolean] :manage_master_user_password
3551
+ # A value that indicates whether to manage the master user password with
3552
+ # Amazon Web Services Secrets Manager.
3553
+ #
3554
+ # If the DB cluster doesn't manage the master user password with Amazon
3555
+ # Web Services Secrets Manager, you can turn on this management. In this
3556
+ # case, you can't specify `MasterUserPassword`.
3557
+ #
3558
+ # If the DB cluster already manages the master user password with Amazon
3559
+ # Web Services Secrets Manager, and you specify that the master user
3560
+ # password is not managed with Amazon Web Services Secrets Manager, then
3561
+ # you must specify `MasterUserPassword`. In this case, RDS deletes the
3562
+ # secret and uses the new password for the master user specified by
3563
+ # `MasterUserPassword`.
3564
+ #
3565
+ # For more information, see [Password management with Amazon Web
3566
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide.*
3567
+ #
3568
+ # Constraints:
3569
+ #
3570
+ # * Can't manage the master user password with Amazon Web Services
3571
+ # Secrets Manager if `MasterUserPassword` is specified.
3572
+ #
3573
+ # ^
3574
+ #
3575
+ #
3576
+ #
3577
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
3578
+ # @option options [Boolean] :rotate_master_user_password
3579
+ # A value that indicates whether to rotate the secret managed by Amazon
3580
+ # Web Services Secrets Manager for the master user password.
3581
+ #
3582
+ # This setting is valid only if the master user password is managed by
3583
+ # RDS in Amazon Web Services Secrets Manager for the DB cluster. The
3584
+ # secret value contains the updated password.
3585
+ #
3586
+ # For more information, see [Password management with Amazon Web
3587
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide.*
3588
+ #
3589
+ # Constraints:
3590
+ #
3591
+ # * You must apply the change immediately when rotating the master user
3592
+ # password.
3593
+ #
3594
+ # ^
3595
+ #
3596
+ #
3597
+ #
3598
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
3599
+ # @option options [String] :master_user_secret_kms_key_id
3600
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
3601
+ # automatically generated and managed in Amazon Web Services Secrets
3602
+ # Manager.
3603
+ #
3604
+ # This setting is valid only if both of the following conditions are
3605
+ # met:
3606
+ #
3607
+ # * The DB instance doesn't manage the master user password in Amazon
3608
+ # Web Services Secrets Manager.
3609
+ #
3610
+ # If the DB instance already manages the master user password in
3611
+ # Amazon Web Services Secrets Manager, you can't change the KMS key
3612
+ # used to encrypt the secret.
3613
+ #
3614
+ # * You are turning on `ManageMasterUserPassword` to manage the master
3615
+ # user password in Amazon Web Services Secrets Manager.
3616
+ #
3617
+ # If you are turning on `ManageMasterUserPassword` and don't specify
3618
+ # `MasterUserSecretKmsKeyId`, then the `aws/secretsmanager` KMS key is
3619
+ # used to encrypt the secret. If the secret is in a different Amazon
3620
+ # Web Services account, then you can't use the `aws/secretsmanager`
3621
+ # KMS key to encrypt the secret, and you must use a customer managed
3622
+ # KMS key.
3623
+ #
3624
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
3625
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
3626
+ # different Amazon Web Services account, specify the key ARN or alias
3627
+ # ARN.
3628
+ #
3629
+ # There is a default KMS key for your Amazon Web Services account. Your
3630
+ # Amazon Web Services account has a different default KMS key for each
3631
+ # Amazon Web Services Region.
3486
3632
  # @return [DBInstance]
3487
3633
  def modify(options = {})
3488
3634
  options = options.merge(db_instance_identifier: @id)
@@ -100,6 +100,8 @@ module Aws::RDS
100
100
  # },
101
101
  # network_type: "String",
102
102
  # db_system_id: "String",
103
+ # manage_master_user_password: false,
104
+ # master_user_secret_kms_key_id: "String",
103
105
  # source_region: "String",
104
106
  # })
105
107
  # @param [Hash] options ({})
@@ -293,7 +295,11 @@ module Aws::RDS
293
295
  # The password for the master database user. This password can contain
294
296
  # any printable ASCII character except "/", """, or "@".
295
297
  #
296
- # Constraints: Must contain from 8 to 41 characters.
298
+ # Constraints:
299
+ #
300
+ # * Must contain from 8 to 41 characters.
301
+ #
302
+ # * Can't be specified if `ManageMasterUserPassword` is turned on.
297
303
  #
298
304
  # Valid for: Aurora DB clusters and Multi-AZ DB clusters
299
305
  # @option options [String] :option_group_name
@@ -826,6 +832,52 @@ module Aws::RDS
826
832
  # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html
827
833
  # @option options [String] :db_system_id
828
834
  # Reserved for future use.
835
+ # @option options [Boolean] :manage_master_user_password
836
+ # A value that indicates whether to manage the master user password with
837
+ # Amazon Web Services Secrets Manager.
838
+ #
839
+ # For more information, see [Password management with Amazon Web
840
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide* and
841
+ # [Password management with Amazon Web Services Secrets Manager][2] in
842
+ # the *Amazon Aurora User Guide.*
843
+ #
844
+ # Constraints:
845
+ #
846
+ # * Can't manage the master user password with Amazon Web Services
847
+ # Secrets Manager if `MasterUserPassword` is specified.
848
+ #
849
+ # ^
850
+ #
851
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
852
+ #
853
+ #
854
+ #
855
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
856
+ # [2]: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-secrets-manager.html
857
+ # @option options [String] :master_user_secret_kms_key_id
858
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
859
+ # automatically generated and managed in Amazon Web Services Secrets
860
+ # Manager.
861
+ #
862
+ # This setting is valid only if the master user password is managed by
863
+ # RDS in Amazon Web Services Secrets Manager for the DB cluster.
864
+ #
865
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
866
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
867
+ # different Amazon Web Services account, specify the key ARN or alias
868
+ # ARN.
869
+ #
870
+ # If you don't specify `MasterUserSecretKmsKeyId`, then the
871
+ # `aws/secretsmanager` KMS key is used to encrypt the secret. If the
872
+ # secret is in a different Amazon Web Services account, then you can't
873
+ # use the `aws/secretsmanager` KMS key to encrypt the secret, and you
874
+ # must use a customer managed KMS key.
875
+ #
876
+ # There is a default KMS key for your Amazon Web Services account. Your
877
+ # Amazon Web Services account has a different default KMS key for each
878
+ # Amazon Web Services Region.
879
+ #
880
+ # Valid for: Aurora DB clusters and Multi-AZ DB clusters
829
881
  # @option options [String] :source_region
830
882
  # The source region of the snapshot. This is only needed when the
831
883
  # shapshot is encrypted and in a different region.
@@ -996,6 +1048,8 @@ module Aws::RDS
996
1048
  # backup_target: "String",
997
1049
  # network_type: "String",
998
1050
  # storage_throughput: 1,
1051
+ # manage_master_user_password: false,
1052
+ # master_user_secret_kms_key_id: "String",
999
1053
  # })
1000
1054
  # @param [Hash] options ({})
1001
1055
  # @option options [String] :db_name
@@ -1310,6 +1364,9 @@ module Aws::RDS
1310
1364
  # Not applicable. The password for the master user is managed by the DB
1311
1365
  # cluster.
1312
1366
  #
1367
+ # Constraints: Can't be specified if `ManageMasterUserPassword` is
1368
+ # turned on.
1369
+ #
1313
1370
  # **MariaDB**
1314
1371
  #
1315
1372
  # Constraints: Must contain from 8 to 41 characters.
@@ -2051,6 +2108,45 @@ module Aws::RDS
2051
2108
  # This setting applies only to the `gp3` storage type.
2052
2109
  #
2053
2110
  # This setting doesn't apply to RDS Custom or Amazon Aurora.
2111
+ # @option options [Boolean] :manage_master_user_password
2112
+ # A value that indicates whether to manage the master user password with
2113
+ # Amazon Web Services Secrets Manager.
2114
+ #
2115
+ # For more information, see [Password management with Amazon Web
2116
+ # Services Secrets Manager][1] in the *Amazon RDS User Guide.*
2117
+ #
2118
+ # Constraints:
2119
+ #
2120
+ # * Can't manage the master user password with Amazon Web Services
2121
+ # Secrets Manager if `MasterUserPassword` is specified.
2122
+ #
2123
+ # ^
2124
+ #
2125
+ #
2126
+ #
2127
+ # [1]: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html
2128
+ # @option options [String] :master_user_secret_kms_key_id
2129
+ # The Amazon Web Services KMS key identifier to encrypt a secret that is
2130
+ # automatically generated and managed in Amazon Web Services Secrets
2131
+ # Manager.
2132
+ #
2133
+ # This setting is valid only if the master user password is managed by
2134
+ # RDS in Amazon Web Services Secrets Manager for the DB instance.
2135
+ #
2136
+ # The Amazon Web Services KMS key identifier is the key ARN, key ID,
2137
+ # alias ARN, or alias name for the KMS key. To use a KMS key in a
2138
+ # different Amazon Web Services account, specify the key ARN or alias
2139
+ # ARN.
2140
+ #
2141
+ # If you don't specify `MasterUserSecretKmsKeyId`, then the
2142
+ # `aws/secretsmanager` KMS key is used to encrypt the secret. If the
2143
+ # secret is in a different Amazon Web Services account, then you can't
2144
+ # use the `aws/secretsmanager` KMS key to encrypt the secret, and you
2145
+ # must use a customer managed KMS key.
2146
+ #
2147
+ # There is a default KMS key for your Amazon Web Services account. Your
2148
+ # Amazon Web Services account has a different default KMS key for each
2149
+ # Amazon Web Services Region.
2054
2150
  # @return [DBInstance]
2055
2151
  def create_db_instance(options = {})
2056
2152
  resp = @client.create_db_instance(options)