aws-sdk-rds 1.166.0 → 1.167.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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)