aws-sdk-elasticache 1.39.0 → 1.44.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a3163328df9f6c7e0d051c41f27122e677e99b42e38cac0e7f3a9ce17a54c7a4
4
- data.tar.gz: b985c03f78d1dfd5e11d5ad532133fade9c278fd29f210297ebe44da2994bbaa
3
+ metadata.gz: 541bd1cd3afa08a0c58b083183d00a462043a8672fecfe584ad235d606564be3
4
+ data.tar.gz: 8eddd7f9704008ad68dd34359dd658a08e3461a31627beb099074c56367f7d1b
5
5
  SHA512:
6
- metadata.gz: 2ea8a5f71fbd48af2fd11ab3c7f5037cf5f28a6fd205b00387e68b71b1676242a1a8cbba6e6f6800a4e47d43f21b345a45e0fc1a11d6ae1d0bcc83c33eceaf36
7
- data.tar.gz: ec3f9d36664e056eb20b33595829cdd005dec81675cc91c9f5aa0f73aef28fc8795660a41b9dda17ba0aff3719abb5e5e703da01817d91fea3e018bee4c69f4b
6
+ metadata.gz: 8d963a8f9333af7ee93e719831db912407ea49cabcdb620d0a4dd70392084f5cf301dc9d7dc7c9f7989c03399cebab14dc4eba75f137bd3cfecfe53642147e9f
7
+ data.tar.gz: 39f85a305e2610fd5d08f4db7977a558aea238576346c5b8dda923c82862850ec7f70ffdc02406134ceecbaed61d85005211206242b668a2fd1f870ca7104e38
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -45,9 +46,9 @@ require_relative 'aws-sdk-elasticache/customizations'
45
46
  #
46
47
  # See {Errors} for more information.
47
48
  #
48
- # @service
49
+ # @!group service
49
50
  module Aws::ElastiCache
50
51
 
51
- GEM_VERSION = '1.39.0'
52
+ GEM_VERSION = '1.44.0'
52
53
 
53
54
  end
@@ -85,13 +85,28 @@ module Aws::ElastiCache
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::ElastiCache
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -613,6 +628,10 @@ module Aws::ElastiCache
613
628
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
614
629
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
615
630
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
631
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
632
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
633
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
634
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
616
635
  # resp.replication_group.member_clusters #=> Array
617
636
  # resp.replication_group.member_clusters[0] #=> String
618
637
  # resp.replication_group.node_groups #=> Array
@@ -629,6 +648,7 @@ module Aws::ElastiCache
629
648
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
630
649
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
631
650
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
651
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
632
652
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
633
653
  # resp.replication_group.snapshotting_cluster_id #=> String
634
654
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -643,8 +663,12 @@ module Aws::ElastiCache
643
663
  # resp.replication_group.auth_token_last_modified_date #=> Time
644
664
  # resp.replication_group.transit_encryption_enabled #=> Boolean
645
665
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
666
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
667
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
646
668
  # resp.replication_group.kms_key_id #=> String
647
669
  # resp.replication_group.arn #=> String
670
+ # resp.replication_group.user_group_ids #=> Array
671
+ # resp.replication_group.user_group_ids[0] #=> String
648
672
  #
649
673
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CompleteMigration AWS API Documentation
650
674
  #
@@ -830,6 +854,7 @@ module Aws::ElastiCache
830
854
  # resp.snapshot.engine_version #=> String
831
855
  # resp.snapshot.num_cache_nodes #=> Integer
832
856
  # resp.snapshot.preferred_availability_zone #=> String
857
+ # resp.snapshot.preferred_outpost_arn #=> String
833
858
  # resp.snapshot.cache_cluster_create_time #=> Time
834
859
  # resp.snapshot.preferred_maintenance_window #=> String
835
860
  # resp.snapshot.topic_arn #=> String
@@ -852,6 +877,9 @@ module Aws::ElastiCache
852
877
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
853
878
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
854
879
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
880
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
881
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
882
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
855
883
  # resp.snapshot.node_snapshots[0].cache_size #=> String
856
884
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
857
885
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -1197,6 +1225,16 @@ module Aws::ElastiCache
1197
1225
  #
1198
1226
  # [1]: http://redis.io/commands/AUTH
1199
1227
  #
1228
+ # @option params [String] :outpost_mode
1229
+ # Specifies whether the nodes in the cluster are created in a single
1230
+ # outpost or across multiple outposts.
1231
+ #
1232
+ # @option params [String] :preferred_outpost_arn
1233
+ # The outpost ARN in which the cache cluster is created.
1234
+ #
1235
+ # @option params [Array<String>] :preferred_outpost_arns
1236
+ # The outpost ARNs in which the cache cluster is created.
1237
+ #
1200
1238
  # @return [Types::CreateCacheClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1201
1239
  #
1202
1240
  # * {Types::CreateCacheClusterResult#cache_cluster #cache_cluster} => Types::CacheCluster
@@ -1321,6 +1359,9 @@ module Aws::ElastiCache
1321
1359
  # snapshot_retention_limit: 1,
1322
1360
  # snapshot_window: "String",
1323
1361
  # auth_token: "String",
1362
+ # outpost_mode: "single-outpost", # accepts single-outpost, cross-outpost
1363
+ # preferred_outpost_arn: "String",
1364
+ # preferred_outpost_arns: ["String"],
1324
1365
  # })
1325
1366
  #
1326
1367
  # @example Response structure
@@ -1335,6 +1376,7 @@ module Aws::ElastiCache
1335
1376
  # resp.cache_cluster.cache_cluster_status #=> String
1336
1377
  # resp.cache_cluster.num_cache_nodes #=> Integer
1337
1378
  # resp.cache_cluster.preferred_availability_zone #=> String
1379
+ # resp.cache_cluster.preferred_outpost_arn #=> String
1338
1380
  # resp.cache_cluster.cache_cluster_create_time #=> Time
1339
1381
  # resp.cache_cluster.preferred_maintenance_window #=> String
1340
1382
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -1362,6 +1404,7 @@ module Aws::ElastiCache
1362
1404
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
1363
1405
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
1364
1406
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
1407
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
1365
1408
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
1366
1409
  # resp.cache_cluster.security_groups #=> Array
1367
1410
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -1614,6 +1657,7 @@ module Aws::ElastiCache
1614
1657
  # resp.cache_subnet_group.subnets #=> Array
1615
1658
  # resp.cache_subnet_group.subnets[0].subnet_identifier #=> String
1616
1659
  # resp.cache_subnet_group.subnets[0].subnet_availability_zone.name #=> String
1660
+ # resp.cache_subnet_group.subnets[0].subnet_outpost.subnet_outpost_arn #=> String
1617
1661
  # resp.cache_subnet_group.arn #=> String
1618
1662
  #
1619
1663
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateCacheSubnetGroup AWS API Documentation
@@ -1641,8 +1685,20 @@ module Aws::ElastiCache
1641
1685
  # secondary cluster.
1642
1686
  #
1643
1687
  # @option params [required, String] :global_replication_group_id_suffix
1644
- # The suffix name of a Global Datastore. The suffix guarantees
1645
- # uniqueness of the Global Datastore name across multiple regions.
1688
+ # The suffix name of a Global Datastore. Amazon ElastiCache
1689
+ # automatically applies a prefix to the Global Datastore ID when it is
1690
+ # created. Each AWS Region has its own prefix. For instance, a Global
1691
+ # Datastore ID created in the US-West-1 region will begin with "dsdfu"
1692
+ # along with the suffix name you provide. The suffix, combined with the
1693
+ # auto-generated prefix, guarantees uniqueness of the Global Datastore
1694
+ # name across multiple regions.
1695
+ #
1696
+ # For a full list of AWS Regions and their respective Global Datastore
1697
+ # iD prefixes, see [Using the AWS CLI with Global Datastores ][1].
1698
+ #
1699
+ #
1700
+ #
1701
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Clusters-CLI.html
1646
1702
  #
1647
1703
  # @option params [String] :global_replication_group_description
1648
1704
  # Provides details of the Global Datastore
@@ -1715,12 +1771,10 @@ module Aws::ElastiCache
1715
1771
  #
1716
1772
  # When a Redis (cluster mode disabled) replication group has been
1717
1773
  # successfully created, you can add one or more read replicas to it, up
1718
- # to a total of 5 read replicas. You cannot alter a Redis (cluster mode
1719
- # enabled) replication group after it has been created. However, if you
1720
- # need to increase or decrease the number of node groups (console:
1721
- # shards), you can avail yourself of ElastiCache for Redis' enhanced
1722
- # backup and restore. For more information, see [Restoring From a Backup
1723
- # with Cluster Resizing][1] in the *ElastiCache User Guide*.
1774
+ # to a total of 5 read replicas. If you need to increase or decrease the
1775
+ # number of node groups (console: shards), you can avail yourself of
1776
+ # ElastiCache for Redis' scaling. For more information, see [Scaling
1777
+ # ElastiCache for Redis Clusters][1] in the *ElastiCache User Guide*.
1724
1778
  #
1725
1779
  # <note markdown="1"> This operation is valid for Redis only.
1726
1780
  #
@@ -1728,7 +1782,7 @@ module Aws::ElastiCache
1728
1782
  #
1729
1783
  #
1730
1784
  #
1731
- # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-restoring.html
1785
+ # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Scaling.html
1732
1786
  #
1733
1787
  # @option params [required, String] :replication_group_id
1734
1788
  # The replication group identifier. This parameter is stored as a
@@ -1765,15 +1819,6 @@ module Aws::ElastiCache
1765
1819
  #
1766
1820
  # Default: false
1767
1821
  #
1768
- # Amazon ElastiCache for Redis does not support Multi-AZ with automatic
1769
- # failover on:
1770
- #
1771
- # * Redis versions earlier than 2.8.6.
1772
- #
1773
- # * Redis (cluster mode disabled): T1 node types.
1774
- #
1775
- # * Redis (cluster mode enabled): T1 node types.
1776
- #
1777
1822
  # @option params [Boolean] :multi_az_enabled
1778
1823
  # A flag indicating if you have Multi-AZ enabled to enhance fault
1779
1824
  # tolerance. For more information, see [Minimizing Downtime:
@@ -2134,6 +2179,9 @@ module Aws::ElastiCache
2134
2179
  # @option params [String] :kms_key_id
2135
2180
  # The ID of the KMS key used to encrypt the disk in the cluster.
2136
2181
  #
2182
+ # @option params [Array<String>] :user_group_ids
2183
+ # The list of user groups to associate with the replication group.
2184
+ #
2137
2185
  # @return [Types::CreateReplicationGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2138
2186
  #
2139
2187
  # * {Types::CreateReplicationGroupResult#replication_group #replication_group} => Types::ReplicationGroup
@@ -2249,6 +2297,8 @@ module Aws::ElastiCache
2249
2297
  # replica_count: 1,
2250
2298
  # primary_availability_zone: "String",
2251
2299
  # replica_availability_zones: ["String"],
2300
+ # primary_outpost_arn: "String",
2301
+ # replica_outpost_arns: ["String"],
2252
2302
  # },
2253
2303
  # ],
2254
2304
  # cache_node_type: "String",
@@ -2276,6 +2326,7 @@ module Aws::ElastiCache
2276
2326
  # transit_encryption_enabled: false,
2277
2327
  # at_rest_encryption_enabled: false,
2278
2328
  # kms_key_id: "String",
2329
+ # user_group_ids: ["UserGroupId"],
2279
2330
  # })
2280
2331
  #
2281
2332
  # @example Response structure
@@ -2289,6 +2340,10 @@ module Aws::ElastiCache
2289
2340
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
2290
2341
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
2291
2342
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
2343
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
2344
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
2345
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
2346
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
2292
2347
  # resp.replication_group.member_clusters #=> Array
2293
2348
  # resp.replication_group.member_clusters[0] #=> String
2294
2349
  # resp.replication_group.node_groups #=> Array
@@ -2305,6 +2360,7 @@ module Aws::ElastiCache
2305
2360
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
2306
2361
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
2307
2362
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
2363
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
2308
2364
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
2309
2365
  # resp.replication_group.snapshotting_cluster_id #=> String
2310
2366
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -2319,8 +2375,12 @@ module Aws::ElastiCache
2319
2375
  # resp.replication_group.auth_token_last_modified_date #=> Time
2320
2376
  # resp.replication_group.transit_encryption_enabled #=> Boolean
2321
2377
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
2378
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
2379
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
2322
2380
  # resp.replication_group.kms_key_id #=> String
2323
2381
  # resp.replication_group.arn #=> String
2382
+ # resp.replication_group.user_group_ids #=> Array
2383
+ # resp.replication_group.user_group_ids[0] #=> String
2324
2384
  #
2325
2385
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateReplicationGroup AWS API Documentation
2326
2386
  #
@@ -2503,6 +2563,7 @@ module Aws::ElastiCache
2503
2563
  # resp.snapshot.engine_version #=> String
2504
2564
  # resp.snapshot.num_cache_nodes #=> Integer
2505
2565
  # resp.snapshot.preferred_availability_zone #=> String
2566
+ # resp.snapshot.preferred_outpost_arn #=> String
2506
2567
  # resp.snapshot.cache_cluster_create_time #=> Time
2507
2568
  # resp.snapshot.preferred_maintenance_window #=> String
2508
2569
  # resp.snapshot.topic_arn #=> String
@@ -2525,6 +2586,9 @@ module Aws::ElastiCache
2525
2586
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
2526
2587
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
2527
2588
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
2589
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
2590
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
2591
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
2528
2592
  # resp.snapshot.node_snapshots[0].cache_size #=> String
2529
2593
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
2530
2594
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -2540,6 +2604,134 @@ module Aws::ElastiCache
2540
2604
  req.send_request(options)
2541
2605
  end
2542
2606
 
2607
+ # For Redis engine version 6.04 onwards: Creates a Redis user. For more
2608
+ # information, see [Using Role Based Access Control (RBAC)][1].
2609
+ #
2610
+ #
2611
+ #
2612
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
2613
+ #
2614
+ # @option params [required, String] :user_id
2615
+ # The ID of the user.
2616
+ #
2617
+ # @option params [required, String] :user_name
2618
+ # The username of the user.
2619
+ #
2620
+ # @option params [required, String] :engine
2621
+ # Must be Redis.
2622
+ #
2623
+ # @option params [Array<String>] :passwords
2624
+ # Passwords used for this user account. You can create up to two
2625
+ # passwords for each user.
2626
+ #
2627
+ # @option params [required, String] :access_string
2628
+ # Access permissions string used for this user account.
2629
+ #
2630
+ # @option params [Boolean] :no_password_required
2631
+ # Indicates a password is not required for this user account.
2632
+ #
2633
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2634
+ #
2635
+ # * {Types::User#user_id #user_id} => String
2636
+ # * {Types::User#user_name #user_name} => String
2637
+ # * {Types::User#status #status} => String
2638
+ # * {Types::User#engine #engine} => String
2639
+ # * {Types::User#access_string #access_string} => String
2640
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
2641
+ # * {Types::User#authentication #authentication} => Types::Authentication
2642
+ # * {Types::User#arn #arn} => String
2643
+ #
2644
+ # @example Request syntax with placeholder values
2645
+ #
2646
+ # resp = client.create_user({
2647
+ # user_id: "UserId", # required
2648
+ # user_name: "UserName", # required
2649
+ # engine: "EngineType", # required
2650
+ # passwords: ["String"],
2651
+ # access_string: "AccessString", # required
2652
+ # no_password_required: false,
2653
+ # })
2654
+ #
2655
+ # @example Response structure
2656
+ #
2657
+ # resp.user_id #=> String
2658
+ # resp.user_name #=> String
2659
+ # resp.status #=> String
2660
+ # resp.engine #=> String
2661
+ # resp.access_string #=> String
2662
+ # resp.user_group_ids #=> Array
2663
+ # resp.user_group_ids[0] #=> String
2664
+ # resp.authentication.type #=> String, one of "password", "no-password"
2665
+ # resp.authentication.password_count #=> Integer
2666
+ # resp.arn #=> String
2667
+ #
2668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUser AWS API Documentation
2669
+ #
2670
+ # @overload create_user(params = {})
2671
+ # @param [Hash] params ({})
2672
+ def create_user(params = {}, options = {})
2673
+ req = build_request(:create_user, params)
2674
+ req.send_request(options)
2675
+ end
2676
+
2677
+ # For Redis engine version 6.04 onwards: Creates a Redis user group. For
2678
+ # more information, see [Using Role Based Access Control (RBAC)][1]
2679
+ #
2680
+ #
2681
+ #
2682
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
2683
+ #
2684
+ # @option params [required, String] :user_group_id
2685
+ # The ID of the user group.
2686
+ #
2687
+ # @option params [required, String] :engine
2688
+ # Must be Redis.
2689
+ #
2690
+ # @option params [Array<String>] :user_ids
2691
+ # The list of user IDs that belong to the user group.
2692
+ #
2693
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2694
+ #
2695
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
2696
+ # * {Types::UserGroup#status #status} => String
2697
+ # * {Types::UserGroup#engine #engine} => String
2698
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
2699
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
2700
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
2701
+ # * {Types::UserGroup#arn #arn} => String
2702
+ #
2703
+ # @example Request syntax with placeholder values
2704
+ #
2705
+ # resp = client.create_user_group({
2706
+ # user_group_id: "String", # required
2707
+ # engine: "EngineType", # required
2708
+ # user_ids: ["UserId"],
2709
+ # })
2710
+ #
2711
+ # @example Response structure
2712
+ #
2713
+ # resp.user_group_id #=> String
2714
+ # resp.status #=> String
2715
+ # resp.engine #=> String
2716
+ # resp.user_ids #=> Array
2717
+ # resp.user_ids[0] #=> String
2718
+ # resp.pending_changes.user_ids_to_remove #=> Array
2719
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
2720
+ # resp.pending_changes.user_ids_to_add #=> Array
2721
+ # resp.pending_changes.user_ids_to_add[0] #=> String
2722
+ # resp.replication_groups #=> Array
2723
+ # resp.replication_groups[0] #=> String
2724
+ # resp.arn #=> String
2725
+ #
2726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserGroup AWS API Documentation
2727
+ #
2728
+ # @overload create_user_group(params = {})
2729
+ # @param [Hash] params ({})
2730
+ def create_user_group(params = {}, options = {})
2731
+ req = build_request(:create_user_group, params)
2732
+ req.send_request(options)
2733
+ end
2734
+
2543
2735
  # Decreases the number of node groups in a Global Datastore
2544
2736
  #
2545
2737
  # @option params [required, String] :global_replication_group_id
@@ -2634,9 +2826,9 @@ module Aws::ElastiCache
2634
2826
  #
2635
2827
  # * Redis (cluster mode disabled)
2636
2828
  #
2637
- # * If Multi-AZ with Automatic Failover is enabled: 1
2829
+ # * If Multi-AZ is enabled: 1
2638
2830
  #
2639
- # * If Multi-AZ with Automatic Failover is not enabled: 0
2831
+ # * If Multi-AZ is not enabled: 0
2640
2832
  #
2641
2833
  # * Redis (cluster mode enabled): 0 (though you will not be able to
2642
2834
  # failover to a replica if your primary node fails)
@@ -2669,6 +2861,7 @@ module Aws::ElastiCache
2669
2861
  # node_group_id: "AllowedNodeGroupId", # required
2670
2862
  # new_replica_count: 1, # required
2671
2863
  # preferred_availability_zones: ["String"],
2864
+ # preferred_outpost_arns: ["String"],
2672
2865
  # },
2673
2866
  # ],
2674
2867
  # replicas_to_remove: ["String"],
@@ -2686,6 +2879,10 @@ module Aws::ElastiCache
2686
2879
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
2687
2880
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
2688
2881
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
2882
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
2883
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
2884
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
2885
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
2689
2886
  # resp.replication_group.member_clusters #=> Array
2690
2887
  # resp.replication_group.member_clusters[0] #=> String
2691
2888
  # resp.replication_group.node_groups #=> Array
@@ -2702,6 +2899,7 @@ module Aws::ElastiCache
2702
2899
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
2703
2900
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
2704
2901
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
2902
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
2705
2903
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
2706
2904
  # resp.replication_group.snapshotting_cluster_id #=> String
2707
2905
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -2716,8 +2914,12 @@ module Aws::ElastiCache
2716
2914
  # resp.replication_group.auth_token_last_modified_date #=> Time
2717
2915
  # resp.replication_group.transit_encryption_enabled #=> Boolean
2718
2916
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
2917
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
2918
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
2719
2919
  # resp.replication_group.kms_key_id #=> String
2720
2920
  # resp.replication_group.arn #=> String
2921
+ # resp.replication_group.user_group_ids #=> Array
2922
+ # resp.replication_group.user_group_ids[0] #=> String
2721
2923
  #
2722
2924
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DecreaseReplicaCount AWS API Documentation
2723
2925
  #
@@ -2819,6 +3021,7 @@ module Aws::ElastiCache
2819
3021
  # resp.cache_cluster.cache_cluster_status #=> String
2820
3022
  # resp.cache_cluster.num_cache_nodes #=> Integer
2821
3023
  # resp.cache_cluster.preferred_availability_zone #=> String
3024
+ # resp.cache_cluster.preferred_outpost_arn #=> String
2822
3025
  # resp.cache_cluster.cache_cluster_create_time #=> Time
2823
3026
  # resp.cache_cluster.preferred_maintenance_window #=> String
2824
3027
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -2846,6 +3049,7 @@ module Aws::ElastiCache
2846
3049
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
2847
3050
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
2848
3051
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
3052
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
2849
3053
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
2850
3054
  # resp.cache_cluster.security_groups #=> Array
2851
3055
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -3125,6 +3329,10 @@ module Aws::ElastiCache
3125
3329
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
3126
3330
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
3127
3331
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
3332
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
3333
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
3334
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
3335
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
3128
3336
  # resp.replication_group.member_clusters #=> Array
3129
3337
  # resp.replication_group.member_clusters[0] #=> String
3130
3338
  # resp.replication_group.node_groups #=> Array
@@ -3141,6 +3349,7 @@ module Aws::ElastiCache
3141
3349
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
3142
3350
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
3143
3351
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
3352
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
3144
3353
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
3145
3354
  # resp.replication_group.snapshotting_cluster_id #=> String
3146
3355
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -3155,8 +3364,12 @@ module Aws::ElastiCache
3155
3364
  # resp.replication_group.auth_token_last_modified_date #=> Time
3156
3365
  # resp.replication_group.transit_encryption_enabled #=> Boolean
3157
3366
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
3367
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
3368
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
3158
3369
  # resp.replication_group.kms_key_id #=> String
3159
3370
  # resp.replication_group.arn #=> String
3371
+ # resp.replication_group.user_group_ids #=> Array
3372
+ # resp.replication_group.user_group_ids[0] #=> String
3160
3373
  #
3161
3374
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteReplicationGroup AWS API Documentation
3162
3375
  #
@@ -3242,6 +3455,7 @@ module Aws::ElastiCache
3242
3455
  # resp.snapshot.engine_version #=> String
3243
3456
  # resp.snapshot.num_cache_nodes #=> Integer
3244
3457
  # resp.snapshot.preferred_availability_zone #=> String
3458
+ # resp.snapshot.preferred_outpost_arn #=> String
3245
3459
  # resp.snapshot.cache_cluster_create_time #=> Time
3246
3460
  # resp.snapshot.preferred_maintenance_window #=> String
3247
3461
  # resp.snapshot.topic_arn #=> String
@@ -3264,6 +3478,9 @@ module Aws::ElastiCache
3264
3478
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
3265
3479
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
3266
3480
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
3481
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
3482
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
3483
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
3267
3484
  # resp.snapshot.node_snapshots[0].cache_size #=> String
3268
3485
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
3269
3486
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -3279,6 +3496,109 @@ module Aws::ElastiCache
3279
3496
  req.send_request(options)
3280
3497
  end
3281
3498
 
3499
+ # For Redis engine version 6.04 onwards: Deletes a user. The user will
3500
+ # be removed from all user groups and in turn removed from all
3501
+ # replication groups. For more information, see [Using Role Based Access
3502
+ # Control (RBAC)][1].
3503
+ #
3504
+ #
3505
+ #
3506
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
3507
+ #
3508
+ # @option params [required, String] :user_id
3509
+ # The ID of the user.
3510
+ #
3511
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3512
+ #
3513
+ # * {Types::User#user_id #user_id} => String
3514
+ # * {Types::User#user_name #user_name} => String
3515
+ # * {Types::User#status #status} => String
3516
+ # * {Types::User#engine #engine} => String
3517
+ # * {Types::User#access_string #access_string} => String
3518
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
3519
+ # * {Types::User#authentication #authentication} => Types::Authentication
3520
+ # * {Types::User#arn #arn} => String
3521
+ #
3522
+ # @example Request syntax with placeholder values
3523
+ #
3524
+ # resp = client.delete_user({
3525
+ # user_id: "UserId", # required
3526
+ # })
3527
+ #
3528
+ # @example Response structure
3529
+ #
3530
+ # resp.user_id #=> String
3531
+ # resp.user_name #=> String
3532
+ # resp.status #=> String
3533
+ # resp.engine #=> String
3534
+ # resp.access_string #=> String
3535
+ # resp.user_group_ids #=> Array
3536
+ # resp.user_group_ids[0] #=> String
3537
+ # resp.authentication.type #=> String, one of "password", "no-password"
3538
+ # resp.authentication.password_count #=> Integer
3539
+ # resp.arn #=> String
3540
+ #
3541
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUser AWS API Documentation
3542
+ #
3543
+ # @overload delete_user(params = {})
3544
+ # @param [Hash] params ({})
3545
+ def delete_user(params = {}, options = {})
3546
+ req = build_request(:delete_user, params)
3547
+ req.send_request(options)
3548
+ end
3549
+
3550
+ # For Redis engine version 6.04 onwards: Deletes a ser group. The user
3551
+ # group must first be disassociated from the replcation group before it
3552
+ # can be deleted. For more information, see [Using Role Based Access
3553
+ # Control (RBAC)][1].
3554
+ #
3555
+ #
3556
+ #
3557
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
3558
+ #
3559
+ # @option params [required, String] :user_group_id
3560
+ # The ID of the user group.
3561
+ #
3562
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3563
+ #
3564
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
3565
+ # * {Types::UserGroup#status #status} => String
3566
+ # * {Types::UserGroup#engine #engine} => String
3567
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
3568
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
3569
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
3570
+ # * {Types::UserGroup#arn #arn} => String
3571
+ #
3572
+ # @example Request syntax with placeholder values
3573
+ #
3574
+ # resp = client.delete_user_group({
3575
+ # user_group_id: "String", # required
3576
+ # })
3577
+ #
3578
+ # @example Response structure
3579
+ #
3580
+ # resp.user_group_id #=> String
3581
+ # resp.status #=> String
3582
+ # resp.engine #=> String
3583
+ # resp.user_ids #=> Array
3584
+ # resp.user_ids[0] #=> String
3585
+ # resp.pending_changes.user_ids_to_remove #=> Array
3586
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
3587
+ # resp.pending_changes.user_ids_to_add #=> Array
3588
+ # resp.pending_changes.user_ids_to_add[0] #=> String
3589
+ # resp.replication_groups #=> Array
3590
+ # resp.replication_groups[0] #=> String
3591
+ # resp.arn #=> String
3592
+ #
3593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserGroup AWS API Documentation
3594
+ #
3595
+ # @overload delete_user_group(params = {})
3596
+ # @param [Hash] params ({})
3597
+ def delete_user_group(params = {}, options = {})
3598
+ req = build_request(:delete_user_group, params)
3599
+ req.send_request(options)
3600
+ end
3601
+
3282
3602
  # Returns information about all provisioned clusters if no cluster
3283
3603
  # identifier is specified, or about a specific cache cluster if a
3284
3604
  # cluster identifier is supplied.
@@ -3475,6 +3795,7 @@ module Aws::ElastiCache
3475
3795
  # resp.cache_clusters[0].cache_cluster_status #=> String
3476
3796
  # resp.cache_clusters[0].num_cache_nodes #=> Integer
3477
3797
  # resp.cache_clusters[0].preferred_availability_zone #=> String
3798
+ # resp.cache_clusters[0].preferred_outpost_arn #=> String
3478
3799
  # resp.cache_clusters[0].cache_cluster_create_time #=> Time
3479
3800
  # resp.cache_clusters[0].preferred_maintenance_window #=> String
3480
3801
  # resp.cache_clusters[0].pending_modified_values.num_cache_nodes #=> Integer
@@ -3502,6 +3823,7 @@ module Aws::ElastiCache
3502
3823
  # resp.cache_clusters[0].cache_nodes[0].parameter_group_status #=> String
3503
3824
  # resp.cache_clusters[0].cache_nodes[0].source_cache_node_id #=> String
3504
3825
  # resp.cache_clusters[0].cache_nodes[0].customer_availability_zone #=> String
3826
+ # resp.cache_clusters[0].cache_nodes[0].customer_outpost_arn #=> String
3505
3827
  # resp.cache_clusters[0].auto_minor_version_upgrade #=> Boolean
3506
3828
  # resp.cache_clusters[0].security_groups #=> Array
3507
3829
  # resp.cache_clusters[0].security_groups[0].security_group_id #=> String
@@ -4508,6 +4830,7 @@ module Aws::ElastiCache
4508
4830
  # resp.cache_subnet_groups[0].subnets #=> Array
4509
4831
  # resp.cache_subnet_groups[0].subnets[0].subnet_identifier #=> String
4510
4832
  # resp.cache_subnet_groups[0].subnets[0].subnet_availability_zone.name #=> String
4833
+ # resp.cache_subnet_groups[0].subnets[0].subnet_outpost.subnet_outpost_arn #=> String
4511
4834
  # resp.cache_subnet_groups[0].arn #=> String
4512
4835
  #
4513
4836
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeCacheSubnetGroups AWS API Documentation
@@ -5363,7 +5686,7 @@ module Aws::ElastiCache
5363
5686
  #
5364
5687
  # resp = client.describe_events({
5365
5688
  # source_identifier: "String",
5366
- # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group
5689
+ # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, user, user-group
5367
5690
  # start_time: Time.now,
5368
5691
  # end_time: Time.now,
5369
5692
  # duration: 1,
@@ -5376,7 +5699,7 @@ module Aws::ElastiCache
5376
5699
  # resp.marker #=> String
5377
5700
  # resp.events #=> Array
5378
5701
  # resp.events[0].source_identifier #=> String
5379
- # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group"
5702
+ # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group", "user", "user-group"
5380
5703
  # resp.events[0].message #=> String
5381
5704
  # resp.events[0].date #=> Time
5382
5705
  #
@@ -5583,6 +5906,10 @@ module Aws::ElastiCache
5583
5906
  # resp.replication_groups[0].pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
5584
5907
  # resp.replication_groups[0].pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
5585
5908
  # resp.replication_groups[0].pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
5909
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_add #=> Array
5910
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
5911
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
5912
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
5586
5913
  # resp.replication_groups[0].member_clusters #=> Array
5587
5914
  # resp.replication_groups[0].member_clusters[0] #=> String
5588
5915
  # resp.replication_groups[0].node_groups #=> Array
@@ -5599,6 +5926,7 @@ module Aws::ElastiCache
5599
5926
  # resp.replication_groups[0].node_groups[0].node_group_members[0].read_endpoint.address #=> String
5600
5927
  # resp.replication_groups[0].node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
5601
5928
  # resp.replication_groups[0].node_groups[0].node_group_members[0].preferred_availability_zone #=> String
5929
+ # resp.replication_groups[0].node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
5602
5930
  # resp.replication_groups[0].node_groups[0].node_group_members[0].current_role #=> String
5603
5931
  # resp.replication_groups[0].snapshotting_cluster_id #=> String
5604
5932
  # resp.replication_groups[0].automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -5613,8 +5941,12 @@ module Aws::ElastiCache
5613
5941
  # resp.replication_groups[0].auth_token_last_modified_date #=> Time
5614
5942
  # resp.replication_groups[0].transit_encryption_enabled #=> Boolean
5615
5943
  # resp.replication_groups[0].at_rest_encryption_enabled #=> Boolean
5944
+ # resp.replication_groups[0].member_clusters_outpost_arns #=> Array
5945
+ # resp.replication_groups[0].member_clusters_outpost_arns[0] #=> String
5616
5946
  # resp.replication_groups[0].kms_key_id #=> String
5617
5947
  # resp.replication_groups[0].arn #=> String
5948
+ # resp.replication_groups[0].user_group_ids #=> Array
5949
+ # resp.replication_groups[0].user_group_ids[0] #=> String
5618
5950
  #
5619
5951
  #
5620
5952
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -6476,6 +6808,7 @@ module Aws::ElastiCache
6476
6808
  # resp.snapshots[0].engine_version #=> String
6477
6809
  # resp.snapshots[0].num_cache_nodes #=> Integer
6478
6810
  # resp.snapshots[0].preferred_availability_zone #=> String
6811
+ # resp.snapshots[0].preferred_outpost_arn #=> String
6479
6812
  # resp.snapshots[0].cache_cluster_create_time #=> Time
6480
6813
  # resp.snapshots[0].preferred_maintenance_window #=> String
6481
6814
  # resp.snapshots[0].topic_arn #=> String
@@ -6498,6 +6831,9 @@ module Aws::ElastiCache
6498
6831
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
6499
6832
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
6500
6833
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
6834
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
6835
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
6836
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
6501
6837
  # resp.snapshots[0].node_snapshots[0].cache_size #=> String
6502
6838
  # resp.snapshots[0].node_snapshots[0].cache_node_create_time #=> Time
6503
6839
  # resp.snapshots[0].node_snapshots[0].snapshot_create_time #=> Time
@@ -6625,6 +6961,133 @@ module Aws::ElastiCache
6625
6961
  req.send_request(options)
6626
6962
  end
6627
6963
 
6964
+ # Returns a list of user groups.
6965
+ #
6966
+ # @option params [String] :user_group_id
6967
+ # The ID of the user group.
6968
+ #
6969
+ # @option params [Integer] :max_records
6970
+ # The maximum number of records to include in the response. If more
6971
+ # records exist than the specified MaxRecords value, a marker is
6972
+ # included in the response so that the remaining results can be
6973
+ # retrieved.
6974
+ #
6975
+ # @option params [String] :marker
6976
+ # An optional marker returned from a prior request. Use this marker for
6977
+ # pagination of results from this operation. If this parameter is
6978
+ # specified, the response includes only records beyond the marker, up to
6979
+ # the value specified by MaxRecords. &gt;
6980
+ #
6981
+ # @return [Types::DescribeUserGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6982
+ #
6983
+ # * {Types::DescribeUserGroupsResult#user_groups #user_groups} => Array&lt;Types::UserGroup&gt;
6984
+ # * {Types::DescribeUserGroupsResult#marker #marker} => String
6985
+ #
6986
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6987
+ #
6988
+ # @example Request syntax with placeholder values
6989
+ #
6990
+ # resp = client.describe_user_groups({
6991
+ # user_group_id: "String",
6992
+ # max_records: 1,
6993
+ # marker: "String",
6994
+ # })
6995
+ #
6996
+ # @example Response structure
6997
+ #
6998
+ # resp.user_groups #=> Array
6999
+ # resp.user_groups[0].user_group_id #=> String
7000
+ # resp.user_groups[0].status #=> String
7001
+ # resp.user_groups[0].engine #=> String
7002
+ # resp.user_groups[0].user_ids #=> Array
7003
+ # resp.user_groups[0].user_ids[0] #=> String
7004
+ # resp.user_groups[0].pending_changes.user_ids_to_remove #=> Array
7005
+ # resp.user_groups[0].pending_changes.user_ids_to_remove[0] #=> String
7006
+ # resp.user_groups[0].pending_changes.user_ids_to_add #=> Array
7007
+ # resp.user_groups[0].pending_changes.user_ids_to_add[0] #=> String
7008
+ # resp.user_groups[0].replication_groups #=> Array
7009
+ # resp.user_groups[0].replication_groups[0] #=> String
7010
+ # resp.user_groups[0].arn #=> String
7011
+ # resp.marker #=> String
7012
+ #
7013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroups AWS API Documentation
7014
+ #
7015
+ # @overload describe_user_groups(params = {})
7016
+ # @param [Hash] params ({})
7017
+ def describe_user_groups(params = {}, options = {})
7018
+ req = build_request(:describe_user_groups, params)
7019
+ req.send_request(options)
7020
+ end
7021
+
7022
+ # Returns a list of users.
7023
+ #
7024
+ # @option params [String] :engine
7025
+ # The Redis engine.
7026
+ #
7027
+ # @option params [String] :user_id
7028
+ # The ID of the user.
7029
+ #
7030
+ # @option params [Array<Types::Filter>] :filters
7031
+ # Filter to determine the list of User IDs to return.
7032
+ #
7033
+ # @option params [Integer] :max_records
7034
+ # The maximum number of records to include in the response. If more
7035
+ # records exist than the specified MaxRecords value, a marker is
7036
+ # included in the response so that the remaining results can be
7037
+ # retrieved.
7038
+ #
7039
+ # @option params [String] :marker
7040
+ # An optional marker returned from a prior request. Use this marker for
7041
+ # pagination of results from this operation. If this parameter is
7042
+ # specified, the response includes only records beyond the marker, up to
7043
+ # the value specified by MaxRecords. &gt;
7044
+ #
7045
+ # @return [Types::DescribeUsersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7046
+ #
7047
+ # * {Types::DescribeUsersResult#users #users} => Array&lt;Types::User&gt;
7048
+ # * {Types::DescribeUsersResult#marker #marker} => String
7049
+ #
7050
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7051
+ #
7052
+ # @example Request syntax with placeholder values
7053
+ #
7054
+ # resp = client.describe_users({
7055
+ # engine: "EngineType",
7056
+ # user_id: "UserId",
7057
+ # filters: [
7058
+ # {
7059
+ # name: "FilterName", # required
7060
+ # values: ["FilterValue"], # required
7061
+ # },
7062
+ # ],
7063
+ # max_records: 1,
7064
+ # marker: "String",
7065
+ # })
7066
+ #
7067
+ # @example Response structure
7068
+ #
7069
+ # resp.users #=> Array
7070
+ # resp.users[0].user_id #=> String
7071
+ # resp.users[0].user_name #=> String
7072
+ # resp.users[0].status #=> String
7073
+ # resp.users[0].engine #=> String
7074
+ # resp.users[0].access_string #=> String
7075
+ # resp.users[0].user_group_ids #=> Array
7076
+ # resp.users[0].user_group_ids[0] #=> String
7077
+ # resp.users[0].authentication.type #=> String, one of "password", "no-password"
7078
+ # resp.users[0].authentication.password_count #=> Integer
7079
+ # resp.users[0].arn #=> String
7080
+ # resp.marker #=> String
7081
+ #
7082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsers AWS API Documentation
7083
+ #
7084
+ # @overload describe_users(params = {})
7085
+ # @param [Hash] params ({})
7086
+ def describe_users(params = {}, options = {})
7087
+ req = build_request(:describe_users, params)
7088
+ req.send_request(options)
7089
+ end
7090
+
6628
7091
  # Remove a secondary cluster from the Global Datastore using the Global
6629
7092
  # Datastore name. The secondary cluster will no longer receive updates
6630
7093
  # from the primary cluster, but will remain as a standalone cluster in
@@ -6856,6 +7319,7 @@ module Aws::ElastiCache
6856
7319
  # node_group_id: "AllowedNodeGroupId", # required
6857
7320
  # new_replica_count: 1, # required
6858
7321
  # preferred_availability_zones: ["String"],
7322
+ # preferred_outpost_arns: ["String"],
6859
7323
  # },
6860
7324
  # ],
6861
7325
  # apply_immediately: false, # required
@@ -6872,6 +7336,10 @@ module Aws::ElastiCache
6872
7336
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
6873
7337
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
6874
7338
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
7339
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
7340
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
7341
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
7342
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
6875
7343
  # resp.replication_group.member_clusters #=> Array
6876
7344
  # resp.replication_group.member_clusters[0] #=> String
6877
7345
  # resp.replication_group.node_groups #=> Array
@@ -6888,6 +7356,7 @@ module Aws::ElastiCache
6888
7356
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
6889
7357
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
6890
7358
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
7359
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
6891
7360
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
6892
7361
  # resp.replication_group.snapshotting_cluster_id #=> String
6893
7362
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -6902,8 +7371,12 @@ module Aws::ElastiCache
6902
7371
  # resp.replication_group.auth_token_last_modified_date #=> Time
6903
7372
  # resp.replication_group.transit_encryption_enabled #=> Boolean
6904
7373
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
7374
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
7375
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
6905
7376
  # resp.replication_group.kms_key_id #=> String
6906
7377
  # resp.replication_group.arn #=> String
7378
+ # resp.replication_group.user_group_ids #=> Array
7379
+ # resp.replication_group.user_group_ids[0] #=> String
6907
7380
  #
6908
7381
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/IncreaseReplicaCount AWS API Documentation
6909
7382
  #
@@ -7451,7 +7924,7 @@ module Aws::ElastiCache
7451
7924
  # snapshot_window: "String",
7452
7925
  # cache_node_type: "String",
7453
7926
  # auth_token: "String",
7454
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
7927
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
7455
7928
  # })
7456
7929
  #
7457
7930
  # @example Response structure
@@ -7466,6 +7939,7 @@ module Aws::ElastiCache
7466
7939
  # resp.cache_cluster.cache_cluster_status #=> String
7467
7940
  # resp.cache_cluster.num_cache_nodes #=> Integer
7468
7941
  # resp.cache_cluster.preferred_availability_zone #=> String
7942
+ # resp.cache_cluster.preferred_outpost_arn #=> String
7469
7943
  # resp.cache_cluster.cache_cluster_create_time #=> Time
7470
7944
  # resp.cache_cluster.preferred_maintenance_window #=> String
7471
7945
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -7493,6 +7967,7 @@ module Aws::ElastiCache
7493
7967
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
7494
7968
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
7495
7969
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
7970
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
7496
7971
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
7497
7972
  # resp.cache_cluster.security_groups #=> Array
7498
7973
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -7671,6 +8146,7 @@ module Aws::ElastiCache
7671
8146
  # resp.cache_subnet_group.subnets #=> Array
7672
8147
  # resp.cache_subnet_group.subnets[0].subnet_identifier #=> String
7673
8148
  # resp.cache_subnet_group.subnets[0].subnet_availability_zone.name #=> String
8149
+ # resp.cache_subnet_group.subnets[0].subnet_outpost.subnet_outpost_arn #=> String
7674
8150
  # resp.cache_subnet_group.arn #=> String
7675
8151
  #
7676
8152
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyCacheSubnetGroup AWS API Documentation
@@ -7796,15 +8272,6 @@ module Aws::ElastiCache
7796
8272
  #
7797
8273
  # Valid values: `true` \| `false`
7798
8274
  #
7799
- # Amazon ElastiCache for Redis does not support Multi-AZ with automatic
7800
- # failover on:
7801
- #
7802
- # * Redis versions earlier than 2.8.6.
7803
- #
7804
- # * Redis (cluster mode disabled): T1 node types.
7805
- #
7806
- # * Redis (cluster mode enabled): T1 node types.
7807
- #
7808
8275
  # @option params [Boolean] :multi_az_enabled
7809
8276
  # A flag indicating if you have Multi-AZ enabled to enhance fault
7810
8277
  # tolerance. For more information, see [Minimizing Downtime:
@@ -7968,6 +8435,16 @@ module Aws::ElastiCache
7968
8435
  #
7969
8436
  # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/auth.html
7970
8437
  #
8438
+ # @option params [Array<String>] :user_group_ids_to_add
8439
+ # A list of user group IDs.
8440
+ #
8441
+ # @option params [Array<String>] :user_group_ids_to_remove
8442
+ # A list of users groups to remove, meaning the users in the group no
8443
+ # longer can access thereplication group.
8444
+ #
8445
+ # @option params [Boolean] :remove_user_groups
8446
+ # Removes the user groups that can access this replication group.
8447
+ #
7971
8448
  # @return [Types::ModifyReplicationGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7972
8449
  #
7973
8450
  # * {Types::ModifyReplicationGroupResult#replication_group #replication_group} => Types::ReplicationGroup
@@ -8066,7 +8543,10 @@ module Aws::ElastiCache
8066
8543
  # snapshot_window: "String",
8067
8544
  # cache_node_type: "String",
8068
8545
  # auth_token: "String",
8069
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
8546
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
8547
+ # user_group_ids_to_add: ["UserGroupId"],
8548
+ # user_group_ids_to_remove: ["UserGroupId"],
8549
+ # remove_user_groups: false,
8070
8550
  # })
8071
8551
  #
8072
8552
  # @example Response structure
@@ -8080,6 +8560,10 @@ module Aws::ElastiCache
8080
8560
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8081
8561
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8082
8562
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
8563
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
8564
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
8565
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
8566
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8083
8567
  # resp.replication_group.member_clusters #=> Array
8084
8568
  # resp.replication_group.member_clusters[0] #=> String
8085
8569
  # resp.replication_group.node_groups #=> Array
@@ -8096,6 +8580,7 @@ module Aws::ElastiCache
8096
8580
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8097
8581
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8098
8582
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
8583
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8099
8584
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8100
8585
  # resp.replication_group.snapshotting_cluster_id #=> String
8101
8586
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8110,8 +8595,12 @@ module Aws::ElastiCache
8110
8595
  # resp.replication_group.auth_token_last_modified_date #=> Time
8111
8596
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8112
8597
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
8598
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
8599
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8113
8600
  # resp.replication_group.kms_key_id #=> String
8114
8601
  # resp.replication_group.arn #=> String
8602
+ # resp.replication_group.user_group_ids #=> Array
8603
+ # resp.replication_group.user_group_ids[0] #=> String
8115
8604
  #
8116
8605
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroup AWS API Documentation
8117
8606
  #
@@ -8199,6 +8688,10 @@ module Aws::ElastiCache
8199
8688
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8200
8689
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8201
8690
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
8691
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
8692
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
8693
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
8694
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8202
8695
  # resp.replication_group.member_clusters #=> Array
8203
8696
  # resp.replication_group.member_clusters[0] #=> String
8204
8697
  # resp.replication_group.node_groups #=> Array
@@ -8215,6 +8708,7 @@ module Aws::ElastiCache
8215
8708
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8216
8709
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8217
8710
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
8711
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8218
8712
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8219
8713
  # resp.replication_group.snapshotting_cluster_id #=> String
8220
8714
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8229,8 +8723,12 @@ module Aws::ElastiCache
8229
8723
  # resp.replication_group.auth_token_last_modified_date #=> Time
8230
8724
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8231
8725
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
8726
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
8727
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8232
8728
  # resp.replication_group.kms_key_id #=> String
8233
8729
  # resp.replication_group.arn #=> String
8730
+ # resp.replication_group.user_group_ids #=> Array
8731
+ # resp.replication_group.user_group_ids[0] #=> String
8234
8732
  #
8235
8733
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroupShardConfiguration AWS API Documentation
8236
8734
  #
@@ -8241,6 +8739,120 @@ module Aws::ElastiCache
8241
8739
  req.send_request(options)
8242
8740
  end
8243
8741
 
8742
+ # Changes user password(s) and/or access string.
8743
+ #
8744
+ # @option params [required, String] :user_id
8745
+ # The ID of the user.
8746
+ #
8747
+ # @option params [String] :access_string
8748
+ # Access permissions string used for this user account.
8749
+ #
8750
+ # @option params [String] :append_access_string
8751
+ # Adds additional user permissions to the access string.
8752
+ #
8753
+ # @option params [Array<String>] :passwords
8754
+ # The passwords belonging to the user account. You are allowed up to
8755
+ # two.
8756
+ #
8757
+ # @option params [Boolean] :no_password_required
8758
+ # Indicates no password is required for the user account.
8759
+ #
8760
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8761
+ #
8762
+ # * {Types::User#user_id #user_id} => String
8763
+ # * {Types::User#user_name #user_name} => String
8764
+ # * {Types::User#status #status} => String
8765
+ # * {Types::User#engine #engine} => String
8766
+ # * {Types::User#access_string #access_string} => String
8767
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
8768
+ # * {Types::User#authentication #authentication} => Types::Authentication
8769
+ # * {Types::User#arn #arn} => String
8770
+ #
8771
+ # @example Request syntax with placeholder values
8772
+ #
8773
+ # resp = client.modify_user({
8774
+ # user_id: "UserId", # required
8775
+ # access_string: "AccessString",
8776
+ # append_access_string: "AccessString",
8777
+ # passwords: ["String"],
8778
+ # no_password_required: false,
8779
+ # })
8780
+ #
8781
+ # @example Response structure
8782
+ #
8783
+ # resp.user_id #=> String
8784
+ # resp.user_name #=> String
8785
+ # resp.status #=> String
8786
+ # resp.engine #=> String
8787
+ # resp.access_string #=> String
8788
+ # resp.user_group_ids #=> Array
8789
+ # resp.user_group_ids[0] #=> String
8790
+ # resp.authentication.type #=> String, one of "password", "no-password"
8791
+ # resp.authentication.password_count #=> Integer
8792
+ # resp.arn #=> String
8793
+ #
8794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUser AWS API Documentation
8795
+ #
8796
+ # @overload modify_user(params = {})
8797
+ # @param [Hash] params ({})
8798
+ def modify_user(params = {}, options = {})
8799
+ req = build_request(:modify_user, params)
8800
+ req.send_request(options)
8801
+ end
8802
+
8803
+ # Changes the list of users that belong to the user group.
8804
+ #
8805
+ # @option params [required, String] :user_group_id
8806
+ # The ID of the user group.
8807
+ #
8808
+ # @option params [Array<String>] :user_ids_to_add
8809
+ # The list of user IDs to add to the user group.
8810
+ #
8811
+ # @option params [Array<String>] :user_ids_to_remove
8812
+ # The list of user IDs to remove from the user group.
8813
+ #
8814
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8815
+ #
8816
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
8817
+ # * {Types::UserGroup#status #status} => String
8818
+ # * {Types::UserGroup#engine #engine} => String
8819
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
8820
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
8821
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
8822
+ # * {Types::UserGroup#arn #arn} => String
8823
+ #
8824
+ # @example Request syntax with placeholder values
8825
+ #
8826
+ # resp = client.modify_user_group({
8827
+ # user_group_id: "String", # required
8828
+ # user_ids_to_add: ["UserId"],
8829
+ # user_ids_to_remove: ["UserId"],
8830
+ # })
8831
+ #
8832
+ # @example Response structure
8833
+ #
8834
+ # resp.user_group_id #=> String
8835
+ # resp.status #=> String
8836
+ # resp.engine #=> String
8837
+ # resp.user_ids #=> Array
8838
+ # resp.user_ids[0] #=> String
8839
+ # resp.pending_changes.user_ids_to_remove #=> Array
8840
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
8841
+ # resp.pending_changes.user_ids_to_add #=> Array
8842
+ # resp.pending_changes.user_ids_to_add[0] #=> String
8843
+ # resp.replication_groups #=> Array
8844
+ # resp.replication_groups[0] #=> String
8845
+ # resp.arn #=> String
8846
+ #
8847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserGroup AWS API Documentation
8848
+ #
8849
+ # @overload modify_user_group(params = {})
8850
+ # @param [Hash] params ({})
8851
+ def modify_user_group(params = {}, options = {})
8852
+ req = build_request(:modify_user_group, params)
8853
+ req.send_request(options)
8854
+ end
8855
+
8244
8856
  # Allows you to purchase a reserved cache node offering.
8245
8857
  #
8246
8858
  # @option params [required, String] :reserved_cache_nodes_offering_id
@@ -8464,6 +9076,7 @@ module Aws::ElastiCache
8464
9076
  # resp.cache_cluster.cache_cluster_status #=> String
8465
9077
  # resp.cache_cluster.num_cache_nodes #=> Integer
8466
9078
  # resp.cache_cluster.preferred_availability_zone #=> String
9079
+ # resp.cache_cluster.preferred_outpost_arn #=> String
8467
9080
  # resp.cache_cluster.cache_cluster_create_time #=> Time
8468
9081
  # resp.cache_cluster.preferred_maintenance_window #=> String
8469
9082
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -8491,6 +9104,7 @@ module Aws::ElastiCache
8491
9104
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
8492
9105
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
8493
9106
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
9107
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
8494
9108
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
8495
9109
  # resp.cache_cluster.security_groups #=> Array
8496
9110
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -8761,6 +9375,10 @@ module Aws::ElastiCache
8761
9375
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8762
9376
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8763
9377
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
9378
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
9379
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
9380
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
9381
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8764
9382
  # resp.replication_group.member_clusters #=> Array
8765
9383
  # resp.replication_group.member_clusters[0] #=> String
8766
9384
  # resp.replication_group.node_groups #=> Array
@@ -8777,6 +9395,7 @@ module Aws::ElastiCache
8777
9395
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8778
9396
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8779
9397
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
9398
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8780
9399
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8781
9400
  # resp.replication_group.snapshotting_cluster_id #=> String
8782
9401
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8791,8 +9410,12 @@ module Aws::ElastiCache
8791
9410
  # resp.replication_group.auth_token_last_modified_date #=> Time
8792
9411
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8793
9412
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
9413
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
9414
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8794
9415
  # resp.replication_group.kms_key_id #=> String
8795
9416
  # resp.replication_group.arn #=> String
9417
+ # resp.replication_group.user_group_ids #=> Array
9418
+ # resp.replication_group.user_group_ids[0] #=> String
8796
9419
  #
8797
9420
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/StartMigration AWS API Documentation
8798
9421
  #
@@ -8848,8 +9471,7 @@ module Aws::ElastiCache
8848
9471
  #
8849
9472
  # * [DescribeEvents][2] in the ElastiCache API Reference
8850
9473
  #
8851
- # Also see, [Testing Multi-AZ with Automatic Failover][3] in the
8852
- # *ElastiCache User Guide*.
9474
+ # Also see, [Testing Multi-AZ ][3] in the *ElastiCache User Guide*.
8853
9475
  #
8854
9476
  #
8855
9477
  #
@@ -8889,6 +9511,10 @@ module Aws::ElastiCache
8889
9511
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8890
9512
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8891
9513
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
9514
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
9515
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
9516
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
9517
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8892
9518
  # resp.replication_group.member_clusters #=> Array
8893
9519
  # resp.replication_group.member_clusters[0] #=> String
8894
9520
  # resp.replication_group.node_groups #=> Array
@@ -8905,6 +9531,7 @@ module Aws::ElastiCache
8905
9531
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8906
9532
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8907
9533
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
9534
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8908
9535
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8909
9536
  # resp.replication_group.snapshotting_cluster_id #=> String
8910
9537
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8919,8 +9546,12 @@ module Aws::ElastiCache
8919
9546
  # resp.replication_group.auth_token_last_modified_date #=> Time
8920
9547
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8921
9548
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
9549
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
9550
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8922
9551
  # resp.replication_group.kms_key_id #=> String
8923
9552
  # resp.replication_group.arn #=> String
9553
+ # resp.replication_group.user_group_ids #=> Array
9554
+ # resp.replication_group.user_group_ids[0] #=> String
8924
9555
  #
8925
9556
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/TestFailover AWS API Documentation
8926
9557
  #
@@ -8944,7 +9575,7 @@ module Aws::ElastiCache
8944
9575
  params: params,
8945
9576
  config: config)
8946
9577
  context[:gem_name] = 'aws-sdk-elasticache'
8947
- context[:gem_version] = '1.39.0'
9578
+ context[:gem_version] = '1.44.0'
8948
9579
  Seahorse::Client::Request.new(handlers, context)
8949
9580
  end
8950
9581