aws-sdk-elasticache 1.40.0 → 1.45.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.
@@ -44,6 +44,9 @@ module Aws::ElastiCache
44
44
  # * {CacheSubnetGroupQuotaExceededFault}
45
45
  # * {CacheSubnetQuotaExceededFault}
46
46
  # * {ClusterQuotaForCustomerExceededFault}
47
+ # * {DefaultUserAssociatedToUserGroupFault}
48
+ # * {DefaultUserRequired}
49
+ # * {DuplicateUserNameFault}
47
50
  # * {GlobalReplicationGroupAlreadyExistsFault}
48
51
  # * {GlobalReplicationGroupNotFoundFault}
49
52
  # * {InsufficientCacheClusterCapacityFault}
@@ -58,6 +61,8 @@ module Aws::ElastiCache
58
61
  # * {InvalidReplicationGroupStateFault}
59
62
  # * {InvalidSnapshotStateFault}
60
63
  # * {InvalidSubnet}
64
+ # * {InvalidUserGroupStateFault}
65
+ # * {InvalidUserStateFault}
61
66
  # * {InvalidVPCNetworkStateFault}
62
67
  # * {NoOperationFault}
63
68
  # * {NodeGroupNotFoundFault}
@@ -79,9 +84,16 @@ module Aws::ElastiCache
79
84
  # * {SnapshotNotFoundFault}
80
85
  # * {SnapshotQuotaExceededFault}
81
86
  # * {SubnetInUse}
87
+ # * {SubnetNotAllowedFault}
82
88
  # * {TagNotFoundFault}
83
89
  # * {TagQuotaPerResourceExceeded}
84
90
  # * {TestFailoverNotAvailableFault}
91
+ # * {UserAlreadyExistsFault}
92
+ # * {UserGroupAlreadyExistsFault}
93
+ # * {UserGroupNotFoundFault}
94
+ # * {UserGroupQuotaExceededFault}
95
+ # * {UserNotFoundFault}
96
+ # * {UserQuotaExceededFault}
85
97
  #
86
98
  # Additionally, error classes are dynamically generated for service errors based on the error code
87
99
  # if they are not defined above.
@@ -259,6 +271,36 @@ module Aws::ElastiCache
259
271
  end
260
272
  end
261
273
 
274
+ class DefaultUserAssociatedToUserGroupFault < ServiceError
275
+
276
+ # @param [Seahorse::Client::RequestContext] context
277
+ # @param [String] message
278
+ # @param [Aws::ElastiCache::Types::DefaultUserAssociatedToUserGroupFault] data
279
+ def initialize(context, message, data = Aws::EmptyStructure.new)
280
+ super(context, message, data)
281
+ end
282
+ end
283
+
284
+ class DefaultUserRequired < ServiceError
285
+
286
+ # @param [Seahorse::Client::RequestContext] context
287
+ # @param [String] message
288
+ # @param [Aws::ElastiCache::Types::DefaultUserRequired] data
289
+ def initialize(context, message, data = Aws::EmptyStructure.new)
290
+ super(context, message, data)
291
+ end
292
+ end
293
+
294
+ class DuplicateUserNameFault < ServiceError
295
+
296
+ # @param [Seahorse::Client::RequestContext] context
297
+ # @param [String] message
298
+ # @param [Aws::ElastiCache::Types::DuplicateUserNameFault] data
299
+ def initialize(context, message, data = Aws::EmptyStructure.new)
300
+ super(context, message, data)
301
+ end
302
+ end
303
+
262
304
  class GlobalReplicationGroupAlreadyExistsFault < ServiceError
263
305
 
264
306
  # @param [Seahorse::Client::RequestContext] context
@@ -409,6 +451,26 @@ module Aws::ElastiCache
409
451
  end
410
452
  end
411
453
 
454
+ class InvalidUserGroupStateFault < ServiceError
455
+
456
+ # @param [Seahorse::Client::RequestContext] context
457
+ # @param [String] message
458
+ # @param [Aws::ElastiCache::Types::InvalidUserGroupStateFault] data
459
+ def initialize(context, message, data = Aws::EmptyStructure.new)
460
+ super(context, message, data)
461
+ end
462
+ end
463
+
464
+ class InvalidUserStateFault < ServiceError
465
+
466
+ # @param [Seahorse::Client::RequestContext] context
467
+ # @param [String] message
468
+ # @param [Aws::ElastiCache::Types::InvalidUserStateFault] data
469
+ def initialize(context, message, data = Aws::EmptyStructure.new)
470
+ super(context, message, data)
471
+ end
472
+ end
473
+
412
474
  class InvalidVPCNetworkStateFault < ServiceError
413
475
 
414
476
  # @param [Seahorse::Client::RequestContext] context
@@ -619,6 +681,16 @@ module Aws::ElastiCache
619
681
  end
620
682
  end
621
683
 
684
+ class SubnetNotAllowedFault < ServiceError
685
+
686
+ # @param [Seahorse::Client::RequestContext] context
687
+ # @param [String] message
688
+ # @param [Aws::ElastiCache::Types::SubnetNotAllowedFault] data
689
+ def initialize(context, message, data = Aws::EmptyStructure.new)
690
+ super(context, message, data)
691
+ end
692
+ end
693
+
622
694
  class TagNotFoundFault < ServiceError
623
695
 
624
696
  # @param [Seahorse::Client::RequestContext] context
@@ -649,5 +721,65 @@ module Aws::ElastiCache
649
721
  end
650
722
  end
651
723
 
724
+ class UserAlreadyExistsFault < ServiceError
725
+
726
+ # @param [Seahorse::Client::RequestContext] context
727
+ # @param [String] message
728
+ # @param [Aws::ElastiCache::Types::UserAlreadyExistsFault] data
729
+ def initialize(context, message, data = Aws::EmptyStructure.new)
730
+ super(context, message, data)
731
+ end
732
+ end
733
+
734
+ class UserGroupAlreadyExistsFault < ServiceError
735
+
736
+ # @param [Seahorse::Client::RequestContext] context
737
+ # @param [String] message
738
+ # @param [Aws::ElastiCache::Types::UserGroupAlreadyExistsFault] data
739
+ def initialize(context, message, data = Aws::EmptyStructure.new)
740
+ super(context, message, data)
741
+ end
742
+ end
743
+
744
+ class UserGroupNotFoundFault < ServiceError
745
+
746
+ # @param [Seahorse::Client::RequestContext] context
747
+ # @param [String] message
748
+ # @param [Aws::ElastiCache::Types::UserGroupNotFoundFault] data
749
+ def initialize(context, message, data = Aws::EmptyStructure.new)
750
+ super(context, message, data)
751
+ end
752
+ end
753
+
754
+ class UserGroupQuotaExceededFault < ServiceError
755
+
756
+ # @param [Seahorse::Client::RequestContext] context
757
+ # @param [String] message
758
+ # @param [Aws::ElastiCache::Types::UserGroupQuotaExceededFault] data
759
+ def initialize(context, message, data = Aws::EmptyStructure.new)
760
+ super(context, message, data)
761
+ end
762
+ end
763
+
764
+ class UserNotFoundFault < ServiceError
765
+
766
+ # @param [Seahorse::Client::RequestContext] context
767
+ # @param [String] message
768
+ # @param [Aws::ElastiCache::Types::UserNotFoundFault] data
769
+ def initialize(context, message, data = Aws::EmptyStructure.new)
770
+ super(context, message, data)
771
+ end
772
+ end
773
+
774
+ class UserQuotaExceededFault < ServiceError
775
+
776
+ # @param [Seahorse::Client::RequestContext] context
777
+ # @param [String] message
778
+ # @param [Aws::ElastiCache::Types::UserQuotaExceededFault] data
779
+ def initialize(context, message, data = Aws::EmptyStructure.new)
780
+ super(context, message, data)
781
+ end
782
+ end
783
+
652
784
  end
653
785
  end
@@ -89,6 +89,25 @@ module Aws::ElastiCache
89
89
  include Aws::Structure
90
90
  end
91
91
 
92
+ # Indicates whether the user requires a password to authenticate.
93
+ #
94
+ # @!attribute [rw] type
95
+ # Indicates whether the user requires a password to authenticate.
96
+ # @return [String]
97
+ #
98
+ # @!attribute [rw] password_count
99
+ # The number of passwords belonging to the user. The maximum is two.
100
+ # @return [Integer]
101
+ #
102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/Authentication AWS API Documentation
103
+ #
104
+ class Authentication < Struct.new(
105
+ :type,
106
+ :password_count)
107
+ SENSITIVE = []
108
+ include Aws::Structure
109
+ end
110
+
92
111
  # The specified Amazon EC2 security group is already authorized for the
93
112
  # specified cache security group.
94
113
  #
@@ -268,6 +287,19 @@ module Aws::ElastiCache
268
287
  #
269
288
  # * Current generation:
270
289
  #
290
+ # **M6g node types** (available only for Redis engine version
291
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
292
+ #
293
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
294
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
295
+ # `cache.m6g.16xlarge`
296
+ #
297
+ # <note markdown="1"> At this time, M6g node types are available in the following
298
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
299
+ # eu-west-1 and ap-northeast-1.
300
+ #
301
+ # </note>
302
+ #
271
303
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
272
304
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
273
305
  # `cache.m5.24xlarge`
@@ -301,6 +333,19 @@ module Aws::ElastiCache
301
333
  #
302
334
  # * Current generation:
303
335
  #
336
+ # **R6g node types** (available only for Redis engine version
337
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
338
+ #
339
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
340
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
341
+ # `cache.r6g.16xlarge`
342
+ #
343
+ # <note markdown="1"> At this time, R6g node types are available in the following
344
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
345
+ # eu-west-1 and ap-northeast-1.
346
+ #
347
+ # </note>
348
+ #
304
349
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
305
350
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
306
351
  # `cache.r5.24xlarge`
@@ -361,6 +406,10 @@ module Aws::ElastiCache
361
406
  # Availability Zones.
362
407
  # @return [String]
363
408
  #
409
+ # @!attribute [rw] preferred_outpost_arn
410
+ # The outpost ARN in which the cache cluster is created.
411
+ # @return [String]
412
+ #
364
413
  # @!attribute [rw] cache_cluster_create_time
365
414
  # The date and time when the cluster was created.
366
415
  # @return [Time]
@@ -503,6 +552,7 @@ module Aws::ElastiCache
503
552
  :cache_cluster_status,
504
553
  :num_cache_nodes,
505
554
  :preferred_availability_zone,
555
+ :preferred_outpost_arn,
506
556
  :cache_cluster_create_time,
507
557
  :preferred_maintenance_window,
508
558
  :pending_modified_values,
@@ -572,7 +622,8 @@ module Aws::ElastiCache
572
622
  # cache engine.
573
623
  #
574
624
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
575
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
625
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
626
+ # \|
576
627
  # @return [String]
577
628
  #
578
629
  # @!attribute [rw] cache_engine_description
@@ -628,6 +679,19 @@ module Aws::ElastiCache
628
679
  #
629
680
  # * Current generation:
630
681
  #
682
+ # **M6g node types** (available only for Redis engine version 5.0.6
683
+ # onward and for Memcached engine version 1.5.16 onward).
684
+ #
685
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
686
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
687
+ # `cache.m6g.16xlarge`
688
+ #
689
+ # <note markdown="1"> At this time, M6g node types are available in the following
690
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
691
+ # and ap-northeast-1.
692
+ #
693
+ # </note>
694
+ #
631
695
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
632
696
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
633
697
  # `cache.m5.24xlarge`
@@ -661,6 +725,19 @@ module Aws::ElastiCache
661
725
  #
662
726
  # * Current generation:
663
727
  #
728
+ # **R6g node types** (available only for Redis engine version 5.0.6
729
+ # onward and for Memcached engine version 1.5.16 onward).
730
+ #
731
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
732
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
733
+ # `cache.r6g.16xlarge`
734
+ #
735
+ # <note markdown="1"> At this time, R6g node types are available in the following
736
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
737
+ # and ap-northeast-1.
738
+ #
739
+ # </note>
740
+ #
664
741
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
665
742
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
666
743
  # `cache.r5.24xlarge`
@@ -724,6 +801,10 @@ module Aws::ElastiCache
724
801
  # The Availability Zone where this node was created and now resides.
725
802
  # @return [String]
726
803
  #
804
+ # @!attribute [rw] customer_outpost_arn
805
+ # The customer outpost ARN of the cache node.
806
+ # @return [String]
807
+ #
727
808
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CacheNode AWS API Documentation
728
809
  #
729
810
  class CacheNode < Struct.new(
@@ -733,7 +814,8 @@ module Aws::ElastiCache
733
814
  :endpoint,
734
815
  :parameter_group_status,
735
816
  :source_cache_node_id,
736
- :customer_availability_zone)
817
+ :customer_availability_zone,
818
+ :customer_outpost_arn)
737
819
  SENSITIVE = []
738
820
  include Aws::Structure
739
821
  end
@@ -885,7 +967,8 @@ module Aws::ElastiCache
885
967
  # parameter group is compatible with.
886
968
  #
887
969
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
888
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
970
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
971
+ # \|
889
972
  # @return [String]
890
973
  #
891
974
  # @!attribute [rw] description
@@ -1049,7 +1132,7 @@ module Aws::ElastiCache
1049
1132
  # @return [Array<Types::EC2SecurityGroup>]
1050
1133
  #
1051
1134
  # @!attribute [rw] arn
1052
- # The ARN (Amazon Resource Name) of the cache security group.
1135
+ # The ARN of the cache security group,
1053
1136
  # @return [String]
1054
1137
  #
1055
1138
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CacheSecurityGroup AWS API Documentation
@@ -1278,6 +1361,7 @@ module Aws::ElastiCache
1278
1361
  # node_group_id: "AllowedNodeGroupId", # required
1279
1362
  # new_replica_count: 1, # required
1280
1363
  # preferred_availability_zones: ["String"],
1364
+ # preferred_outpost_arns: ["String"],
1281
1365
  # }
1282
1366
  #
1283
1367
  # @!attribute [rw] node_group_id
@@ -1318,12 +1402,17 @@ module Aws::ElastiCache
1318
1402
  # selects the availability zone for each of the replicas.
1319
1403
  # @return [Array<String>]
1320
1404
  #
1405
+ # @!attribute [rw] preferred_outpost_arns
1406
+ # The outpost ARNs in which the cache cluster is created.
1407
+ # @return [Array<String>]
1408
+ #
1321
1409
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ConfigureShard AWS API Documentation
1322
1410
  #
1323
1411
  class ConfigureShard < Struct.new(
1324
1412
  :node_group_id,
1325
1413
  :new_replica_count,
1326
- :preferred_availability_zones)
1414
+ :preferred_availability_zones,
1415
+ :preferred_outpost_arns)
1327
1416
  SENSITIVE = []
1328
1417
  include Aws::Structure
1329
1418
  end
@@ -1365,7 +1454,7 @@ module Aws::ElastiCache
1365
1454
  #
1366
1455
  #
1367
1456
  #
1368
- # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-exporting.html#backups-exporting-grant-access
1457
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-exporting.html#backups-exporting-grant-access
1369
1458
  # [2]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Snapshots.Exporting.html
1370
1459
  # @return [String]
1371
1460
  #
@@ -1431,6 +1520,9 @@ module Aws::ElastiCache
1431
1520
  # snapshot_retention_limit: 1,
1432
1521
  # snapshot_window: "String",
1433
1522
  # auth_token: "String",
1523
+ # outpost_mode: "single-outpost", # accepts single-outpost, cross-outpost
1524
+ # preferred_outpost_arn: "String",
1525
+ # preferred_outpost_arns: ["String"],
1434
1526
  # }
1435
1527
  #
1436
1528
  # @!attribute [rw] cache_cluster_id
@@ -1536,6 +1628,19 @@ module Aws::ElastiCache
1536
1628
  #
1537
1629
  # * Current generation:
1538
1630
  #
1631
+ # **M6g node types** (available only for Redis engine version
1632
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
1633
+ #
1634
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
1635
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
1636
+ # `cache.m6g.16xlarge`
1637
+ #
1638
+ # <note markdown="1"> At this time, M6g node types are available in the following
1639
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
1640
+ # eu-west-1 and ap-northeast-1.
1641
+ #
1642
+ # </note>
1643
+ #
1539
1644
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
1540
1645
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
1541
1646
  # `cache.m5.24xlarge`
@@ -1569,6 +1674,19 @@ module Aws::ElastiCache
1569
1674
  #
1570
1675
  # * Current generation:
1571
1676
  #
1677
+ # **R6g node types** (available only for Redis engine version
1678
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
1679
+ #
1680
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
1681
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
1682
+ # `cache.r6g.16xlarge`
1683
+ #
1684
+ # <note markdown="1"> At this time, R6g node types are available in the following
1685
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
1686
+ # eu-west-1 and ap-northeast-1.
1687
+ #
1688
+ # </note>
1689
+ #
1572
1690
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
1573
1691
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
1574
1692
  # `cache.r5.24xlarge`
@@ -1785,6 +1903,19 @@ module Aws::ElastiCache
1785
1903
  # [1]: http://redis.io/commands/AUTH
1786
1904
  # @return [String]
1787
1905
  #
1906
+ # @!attribute [rw] outpost_mode
1907
+ # Specifies whether the nodes in the cluster are created in a single
1908
+ # outpost or across multiple outposts.
1909
+ # @return [String]
1910
+ #
1911
+ # @!attribute [rw] preferred_outpost_arn
1912
+ # The outpost ARN in which the cache cluster is created.
1913
+ # @return [String]
1914
+ #
1915
+ # @!attribute [rw] preferred_outpost_arns
1916
+ # The outpost ARNs in which the cache cluster is created.
1917
+ # @return [Array<String>]
1918
+ #
1788
1919
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateCacheClusterMessage AWS API Documentation
1789
1920
  #
1790
1921
  class CreateCacheClusterMessage < Struct.new(
@@ -1810,7 +1941,10 @@ module Aws::ElastiCache
1810
1941
  :auto_minor_version_upgrade,
1811
1942
  :snapshot_retention_limit,
1812
1943
  :snapshot_window,
1813
- :auth_token)
1944
+ :auth_token,
1945
+ :outpost_mode,
1946
+ :preferred_outpost_arn,
1947
+ :preferred_outpost_arns)
1814
1948
  SENSITIVE = []
1815
1949
  include Aws::Structure
1816
1950
  end
@@ -1847,7 +1981,8 @@ module Aws::ElastiCache
1847
1981
  # parameter group can be used with.
1848
1982
  #
1849
1983
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
1850
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
1984
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
1985
+ # \|
1851
1986
  # @return [String]
1852
1987
  #
1853
1988
  # @!attribute [rw] description
@@ -1992,8 +2127,20 @@ module Aws::ElastiCache
1992
2127
  # }
1993
2128
  #
1994
2129
  # @!attribute [rw] global_replication_group_id_suffix
1995
- # The suffix name of a Global Datastore. The suffix guarantees
1996
- # uniqueness of the Global Datastore name across multiple regions.
2130
+ # The suffix name of a Global Datastore. Amazon ElastiCache
2131
+ # automatically applies a prefix to the Global Datastore ID when it is
2132
+ # created. Each AWS Region has its own prefix. For instance, a Global
2133
+ # Datastore ID created in the US-West-1 region will begin with
2134
+ # "dsdfu" along with the suffix name you provide. The suffix,
2135
+ # combined with the auto-generated prefix, guarantees uniqueness of
2136
+ # the Global Datastore name across multiple regions.
2137
+ #
2138
+ # For a full list of AWS Regions and their respective Global Datastore
2139
+ # iD prefixes, see [Using the AWS CLI with Global Datastores ][1].
2140
+ #
2141
+ #
2142
+ #
2143
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Clusters-CLI.html
1997
2144
  # @return [String]
1998
2145
  #
1999
2146
  # @!attribute [rw] global_replication_group_description
@@ -2059,6 +2206,8 @@ module Aws::ElastiCache
2059
2206
  # replica_count: 1,
2060
2207
  # primary_availability_zone: "String",
2061
2208
  # replica_availability_zones: ["String"],
2209
+ # primary_outpost_arn: "String",
2210
+ # replica_outpost_arns: ["String"],
2062
2211
  # },
2063
2212
  # ],
2064
2213
  # cache_node_type: "String",
@@ -2086,6 +2235,7 @@ module Aws::ElastiCache
2086
2235
  # transit_encryption_enabled: false,
2087
2236
  # at_rest_encryption_enabled: false,
2088
2237
  # kms_key_id: "String",
2238
+ # user_group_ids: ["UserGroupId"],
2089
2239
  # }
2090
2240
  #
2091
2241
  # @!attribute [rw] replication_group_id
@@ -2218,6 +2368,19 @@ module Aws::ElastiCache
2218
2368
  #
2219
2369
  # * Current generation:
2220
2370
  #
2371
+ # **M6g node types** (available only for Redis engine version
2372
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
2373
+ #
2374
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
2375
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
2376
+ # `cache.m6g.16xlarge`
2377
+ #
2378
+ # <note markdown="1"> At this time, M6g node types are available in the following
2379
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
2380
+ # eu-west-1 and ap-northeast-1.
2381
+ #
2382
+ # </note>
2383
+ #
2221
2384
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
2222
2385
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
2223
2386
  # `cache.m5.24xlarge`
@@ -2251,6 +2414,19 @@ module Aws::ElastiCache
2251
2414
  #
2252
2415
  # * Current generation:
2253
2416
  #
2417
+ # **R6g node types** (available only for Redis engine version
2418
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
2419
+ #
2420
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
2421
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
2422
+ # `cache.r6g.16xlarge`
2423
+ #
2424
+ # <note markdown="1"> At this time, R6g node types are available in the following
2425
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
2426
+ # eu-west-1 and ap-northeast-1.
2427
+ #
2428
+ # </note>
2429
+ #
2254
2430
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
2255
2431
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
2256
2432
  # `cache.r5.24xlarge`
@@ -2517,6 +2693,10 @@ module Aws::ElastiCache
2517
2693
  # The ID of the KMS key used to encrypt the disk in the cluster.
2518
2694
  # @return [String]
2519
2695
  #
2696
+ # @!attribute [rw] user_group_ids
2697
+ # The list of user groups to associate with the replication group.
2698
+ # @return [Array<String>]
2699
+ #
2520
2700
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateReplicationGroupMessage AWS API Documentation
2521
2701
  #
2522
2702
  class CreateReplicationGroupMessage < Struct.new(
@@ -2550,7 +2730,8 @@ module Aws::ElastiCache
2550
2730
  :auth_token,
2551
2731
  :transit_encryption_enabled,
2552
2732
  :at_rest_encryption_enabled,
2553
- :kms_key_id)
2733
+ :kms_key_id,
2734
+ :user_group_ids)
2554
2735
  SENSITIVE = []
2555
2736
  include Aws::Structure
2556
2737
  end
@@ -2622,6 +2803,87 @@ module Aws::ElastiCache
2622
2803
  include Aws::Structure
2623
2804
  end
2624
2805
 
2806
+ # @note When making an API call, you may pass CreateUserGroupMessage
2807
+ # data as a hash:
2808
+ #
2809
+ # {
2810
+ # user_group_id: "String", # required
2811
+ # engine: "EngineType", # required
2812
+ # user_ids: ["UserId"],
2813
+ # }
2814
+ #
2815
+ # @!attribute [rw] user_group_id
2816
+ # The ID of the user group.
2817
+ # @return [String]
2818
+ #
2819
+ # @!attribute [rw] engine
2820
+ # Must be Redis.
2821
+ # @return [String]
2822
+ #
2823
+ # @!attribute [rw] user_ids
2824
+ # The list of user IDs that belong to the user group.
2825
+ # @return [Array<String>]
2826
+ #
2827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserGroupMessage AWS API Documentation
2828
+ #
2829
+ class CreateUserGroupMessage < Struct.new(
2830
+ :user_group_id,
2831
+ :engine,
2832
+ :user_ids)
2833
+ SENSITIVE = []
2834
+ include Aws::Structure
2835
+ end
2836
+
2837
+ # @note When making an API call, you may pass CreateUserMessage
2838
+ # data as a hash:
2839
+ #
2840
+ # {
2841
+ # user_id: "UserId", # required
2842
+ # user_name: "UserName", # required
2843
+ # engine: "EngineType", # required
2844
+ # passwords: ["String"],
2845
+ # access_string: "AccessString", # required
2846
+ # no_password_required: false,
2847
+ # }
2848
+ #
2849
+ # @!attribute [rw] user_id
2850
+ # The ID of the user.
2851
+ # @return [String]
2852
+ #
2853
+ # @!attribute [rw] user_name
2854
+ # The username of the user.
2855
+ # @return [String]
2856
+ #
2857
+ # @!attribute [rw] engine
2858
+ # Must be Redis.
2859
+ # @return [String]
2860
+ #
2861
+ # @!attribute [rw] passwords
2862
+ # Passwords used for this user account. You can create up to two
2863
+ # passwords for each user.
2864
+ # @return [Array<String>]
2865
+ #
2866
+ # @!attribute [rw] access_string
2867
+ # Access permissions string used for this user account.
2868
+ # @return [String]
2869
+ #
2870
+ # @!attribute [rw] no_password_required
2871
+ # Indicates a password is not required for this user account.
2872
+ # @return [Boolean]
2873
+ #
2874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserMessage AWS API Documentation
2875
+ #
2876
+ class CreateUserMessage < Struct.new(
2877
+ :user_id,
2878
+ :user_name,
2879
+ :engine,
2880
+ :passwords,
2881
+ :access_string,
2882
+ :no_password_required)
2883
+ SENSITIVE = []
2884
+ include Aws::Structure
2885
+ end
2886
+
2625
2887
  # The endpoint from which data should be migrated.
2626
2888
  #
2627
2889
  # @note When making an API call, you may pass CustomerNodeEndpoint
@@ -2736,6 +2998,7 @@ module Aws::ElastiCache
2736
2998
  # node_group_id: "AllowedNodeGroupId", # required
2737
2999
  # new_replica_count: 1, # required
2738
3000
  # preferred_availability_zones: ["String"],
3001
+ # preferred_outpost_arns: ["String"],
2739
3002
  # },
2740
3003
  # ],
2741
3004
  # replicas_to_remove: ["String"],
@@ -2808,6 +3071,16 @@ module Aws::ElastiCache
2808
3071
  include Aws::Structure
2809
3072
  end
2810
3073
 
3074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DefaultUserAssociatedToUserGroupFault AWS API Documentation
3075
+ #
3076
+ class DefaultUserAssociatedToUserGroupFault < Aws::EmptyStructure; end
3077
+
3078
+ # You must add default user to a user group.
3079
+ #
3080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DefaultUserRequired AWS API Documentation
3081
+ #
3082
+ class DefaultUserRequired < Aws::EmptyStructure; end
3083
+
2811
3084
  # Represents the input of a `DeleteCacheCluster` operation.
2812
3085
  #
2813
3086
  # @note When making an API call, you may pass DeleteCacheClusterMessage
@@ -3058,6 +3331,44 @@ module Aws::ElastiCache
3058
3331
  include Aws::Structure
3059
3332
  end
3060
3333
 
3334
+ # @note When making an API call, you may pass DeleteUserGroupMessage
3335
+ # data as a hash:
3336
+ #
3337
+ # {
3338
+ # user_group_id: "String", # required
3339
+ # }
3340
+ #
3341
+ # @!attribute [rw] user_group_id
3342
+ # The ID of the user group.
3343
+ # @return [String]
3344
+ #
3345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserGroupMessage AWS API Documentation
3346
+ #
3347
+ class DeleteUserGroupMessage < Struct.new(
3348
+ :user_group_id)
3349
+ SENSITIVE = []
3350
+ include Aws::Structure
3351
+ end
3352
+
3353
+ # @note When making an API call, you may pass DeleteUserMessage
3354
+ # data as a hash:
3355
+ #
3356
+ # {
3357
+ # user_id: "UserId", # required
3358
+ # }
3359
+ #
3360
+ # @!attribute [rw] user_id
3361
+ # The ID of the user.
3362
+ # @return [String]
3363
+ #
3364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserMessage AWS API Documentation
3365
+ #
3366
+ class DeleteUserMessage < Struct.new(
3367
+ :user_id)
3368
+ SENSITIVE = []
3369
+ include Aws::Structure
3370
+ end
3371
+
3061
3372
  # Represents the input of a `DescribeCacheClusters` operation.
3062
3373
  #
3063
3374
  # @note When making an API call, you may pass DescribeCacheClustersMessage
@@ -3148,7 +3459,8 @@ module Aws::ElastiCache
3148
3459
  # details for.
3149
3460
  #
3150
3461
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
3151
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
3462
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
3463
+ # \|
3152
3464
  #
3153
3465
  # Constraints:
3154
3466
  #
@@ -3390,7 +3702,8 @@ module Aws::ElastiCache
3390
3702
  # The name of the cache parameter group family.
3391
3703
  #
3392
3704
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
3393
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
3705
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
3706
+ # \|
3394
3707
  # @return [String]
3395
3708
  #
3396
3709
  # @!attribute [rw] max_records
@@ -3441,7 +3754,7 @@ module Aws::ElastiCache
3441
3754
  #
3442
3755
  # {
3443
3756
  # source_identifier: "String",
3444
- # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group
3757
+ # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, user, user-group
3445
3758
  # start_time: Time.now,
3446
3759
  # end_time: Time.now,
3447
3760
  # duration: 1,
@@ -3661,6 +3974,19 @@ module Aws::ElastiCache
3661
3974
  #
3662
3975
  # * Current generation:
3663
3976
  #
3977
+ # **M6g node types** (available only for Redis engine version
3978
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
3979
+ #
3980
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
3981
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
3982
+ # `cache.m6g.16xlarge`
3983
+ #
3984
+ # <note markdown="1"> At this time, M6g node types are available in the following
3985
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
3986
+ # eu-west-1 and ap-northeast-1.
3987
+ #
3988
+ # </note>
3989
+ #
3664
3990
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
3665
3991
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
3666
3992
  # `cache.m5.24xlarge`
@@ -3694,6 +4020,19 @@ module Aws::ElastiCache
3694
4020
  #
3695
4021
  # * Current generation:
3696
4022
  #
4023
+ # **R6g node types** (available only for Redis engine version
4024
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
4025
+ #
4026
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
4027
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
4028
+ # `cache.r6g.16xlarge`
4029
+ #
4030
+ # <note markdown="1"> At this time, R6g node types are available in the following
4031
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
4032
+ # eu-west-1 and ap-northeast-1.
4033
+ #
4034
+ # </note>
4035
+ #
3697
4036
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
3698
4037
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
3699
4038
  # `cache.r5.24xlarge`
@@ -3742,7 +4081,7 @@ module Aws::ElastiCache
3742
4081
  # available offerings matching the specified offering type.
3743
4082
  #
3744
4083
  # Valid values: `"Light Utilization"|"Medium Utilization"|"Heavy
3745
- # Utilization"`
4084
+ # Utilization"|"All Upfront"|"Partial Upfront"| "No Upfront"`
3746
4085
  # @return [String]
3747
4086
  #
3748
4087
  # @!attribute [rw] max_records
@@ -3815,6 +4154,19 @@ module Aws::ElastiCache
3815
4154
  #
3816
4155
  # * Current generation:
3817
4156
  #
4157
+ # **M6g node types** (available only for Redis engine version
4158
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
4159
+ #
4160
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
4161
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
4162
+ # `cache.m6g.16xlarge`
4163
+ #
4164
+ # <note markdown="1"> At this time, M6g node types are available in the following
4165
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
4166
+ # eu-west-1 and ap-northeast-1.
4167
+ #
4168
+ # </note>
4169
+ #
3818
4170
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
3819
4171
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
3820
4172
  # `cache.m5.24xlarge`
@@ -3848,6 +4200,19 @@ module Aws::ElastiCache
3848
4200
  #
3849
4201
  # * Current generation:
3850
4202
  #
4203
+ # **R6g node types** (available only for Redis engine version
4204
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
4205
+ #
4206
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
4207
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
4208
+ # `cache.r6g.16xlarge`
4209
+ #
4210
+ # <note markdown="1"> At this time, R6g node types are available in the following
4211
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
4212
+ # eu-west-1 and ap-northeast-1.
4213
+ #
4214
+ # </note>
4215
+ #
3851
4216
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
3852
4217
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
3853
4218
  # `cache.r5.24xlarge`
@@ -4151,6 +4516,137 @@ module Aws::ElastiCache
4151
4516
  include Aws::Structure
4152
4517
  end
4153
4518
 
4519
+ # @note When making an API call, you may pass DescribeUserGroupsMessage
4520
+ # data as a hash:
4521
+ #
4522
+ # {
4523
+ # user_group_id: "String",
4524
+ # max_records: 1,
4525
+ # marker: "String",
4526
+ # }
4527
+ #
4528
+ # @!attribute [rw] user_group_id
4529
+ # The ID of the user group.
4530
+ # @return [String]
4531
+ #
4532
+ # @!attribute [rw] max_records
4533
+ # The maximum number of records to include in the response. If more
4534
+ # records exist than the specified MaxRecords value, a marker is
4535
+ # included in the response so that the remaining results can be
4536
+ # retrieved.
4537
+ # @return [Integer]
4538
+ #
4539
+ # @!attribute [rw] marker
4540
+ # An optional marker returned from a prior request. Use this marker
4541
+ # for pagination of results from this operation. If this parameter is
4542
+ # specified, the response includes only records beyond the marker, up
4543
+ # to the value specified by MaxRecords. &gt;
4544
+ # @return [String]
4545
+ #
4546
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroupsMessage AWS API Documentation
4547
+ #
4548
+ class DescribeUserGroupsMessage < Struct.new(
4549
+ :user_group_id,
4550
+ :max_records,
4551
+ :marker)
4552
+ SENSITIVE = []
4553
+ include Aws::Structure
4554
+ end
4555
+
4556
+ # @!attribute [rw] user_groups
4557
+ # Returns a list of user groups.
4558
+ # @return [Array<Types::UserGroup>]
4559
+ #
4560
+ # @!attribute [rw] marker
4561
+ # An optional marker returned from a prior request. Use this marker
4562
+ # for pagination of results from this operation. If this parameter is
4563
+ # specified, the response includes only records beyond the marker, up
4564
+ # to the value specified by MaxRecords. &gt;
4565
+ # @return [String]
4566
+ #
4567
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroupsResult AWS API Documentation
4568
+ #
4569
+ class DescribeUserGroupsResult < Struct.new(
4570
+ :user_groups,
4571
+ :marker)
4572
+ SENSITIVE = []
4573
+ include Aws::Structure
4574
+ end
4575
+
4576
+ # @note When making an API call, you may pass DescribeUsersMessage
4577
+ # data as a hash:
4578
+ #
4579
+ # {
4580
+ # engine: "EngineType",
4581
+ # user_id: "UserId",
4582
+ # filters: [
4583
+ # {
4584
+ # name: "FilterName", # required
4585
+ # values: ["FilterValue"], # required
4586
+ # },
4587
+ # ],
4588
+ # max_records: 1,
4589
+ # marker: "String",
4590
+ # }
4591
+ #
4592
+ # @!attribute [rw] engine
4593
+ # The Redis engine.
4594
+ # @return [String]
4595
+ #
4596
+ # @!attribute [rw] user_id
4597
+ # The ID of the user.
4598
+ # @return [String]
4599
+ #
4600
+ # @!attribute [rw] filters
4601
+ # Filter to determine the list of User IDs to return.
4602
+ # @return [Array<Types::Filter>]
4603
+ #
4604
+ # @!attribute [rw] max_records
4605
+ # The maximum number of records to include in the response. If more
4606
+ # records exist than the specified MaxRecords value, a marker is
4607
+ # included in the response so that the remaining results can be
4608
+ # retrieved.
4609
+ # @return [Integer]
4610
+ #
4611
+ # @!attribute [rw] marker
4612
+ # An optional marker returned from a prior request. Use this marker
4613
+ # for pagination of results from this operation. If this parameter is
4614
+ # specified, the response includes only records beyond the marker, up
4615
+ # to the value specified by MaxRecords. &gt;
4616
+ # @return [String]
4617
+ #
4618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsersMessage AWS API Documentation
4619
+ #
4620
+ class DescribeUsersMessage < Struct.new(
4621
+ :engine,
4622
+ :user_id,
4623
+ :filters,
4624
+ :max_records,
4625
+ :marker)
4626
+ SENSITIVE = []
4627
+ include Aws::Structure
4628
+ end
4629
+
4630
+ # @!attribute [rw] users
4631
+ # A list of users.
4632
+ # @return [Array<Types::User>]
4633
+ #
4634
+ # @!attribute [rw] marker
4635
+ # An optional marker returned from a prior request. Use this marker
4636
+ # for pagination of results from this operation. If this parameter is
4637
+ # specified, the response includes only records beyond the marker, up
4638
+ # to the value specified by MaxRecords. &gt;
4639
+ # @return [String]
4640
+ #
4641
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsersResult AWS API Documentation
4642
+ #
4643
+ class DescribeUsersResult < Struct.new(
4644
+ :users,
4645
+ :marker)
4646
+ SENSITIVE = []
4647
+ include Aws::Structure
4648
+ end
4649
+
4154
4650
  # @note When making an API call, you may pass DisassociateGlobalReplicationGroupMessage
4155
4651
  # data as a hash:
4156
4652
  #
@@ -4205,6 +4701,12 @@ module Aws::ElastiCache
4205
4701
  include Aws::Structure
4206
4702
  end
4207
4703
 
4704
+ # A user with this username already exists.
4705
+ #
4706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DuplicateUserNameFault AWS API Documentation
4707
+ #
4708
+ class DuplicateUserNameFault < Aws::EmptyStructure; end
4709
+
4208
4710
  # Provides ownership and status information for an Amazon EC2 security
4209
4711
  # group.
4210
4712
  #
@@ -4258,7 +4760,8 @@ module Aws::ElastiCache
4258
4760
  # engine default parameters apply.
4259
4761
  #
4260
4762
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
4261
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
4763
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0`
4764
+ # \|
4262
4765
  # @return [String]
4263
4766
  #
4264
4767
  # @!attribute [rw] marker
@@ -4392,6 +4895,34 @@ module Aws::ElastiCache
4392
4895
  include Aws::Structure
4393
4896
  end
4394
4897
 
4898
+ # Used to streamline results of a search based on the property being
4899
+ # filtered.
4900
+ #
4901
+ # @note When making an API call, you may pass Filter
4902
+ # data as a hash:
4903
+ #
4904
+ # {
4905
+ # name: "FilterName", # required
4906
+ # values: ["FilterValue"], # required
4907
+ # }
4908
+ #
4909
+ # @!attribute [rw] name
4910
+ # The property being filtered. For example, UserId.
4911
+ # @return [String]
4912
+ #
4913
+ # @!attribute [rw] values
4914
+ # The property values to filter on. For example, "user-123".
4915
+ # @return [Array<String>]
4916
+ #
4917
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/Filter AWS API Documentation
4918
+ #
4919
+ class Filter < Struct.new(
4920
+ :name,
4921
+ :values)
4922
+ SENSITIVE = []
4923
+ include Aws::Structure
4924
+ end
4925
+
4395
4926
  # Indicates the slot configuration and global identifier for a slice
4396
4927
  # group.
4397
4928
  #
@@ -4444,8 +4975,7 @@ module Aws::ElastiCache
4444
4975
  # @return [String]
4445
4976
  #
4446
4977
  # @!attribute [rw] engine_version
4447
- # The Elasticache Redis engine version. For preview, it is Redis
4448
- # version 5.0.5 only.
4978
+ # The Elasticache Redis engine version.
4449
4979
  # @return [String]
4450
4980
  #
4451
4981
  # @!attribute [rw] members
@@ -4665,6 +5195,7 @@ module Aws::ElastiCache
4665
5195
  # node_group_id: "AllowedNodeGroupId", # required
4666
5196
  # new_replica_count: 1, # required
4667
5197
  # preferred_availability_zones: ["String"],
5198
+ # preferred_outpost_arns: ["String"],
4668
5199
  # },
4669
5200
  # ],
4670
5201
  # apply_immediately: false, # required
@@ -4817,6 +5348,18 @@ module Aws::ElastiCache
4817
5348
  #
4818
5349
  class InvalidSubnet < Aws::EmptyStructure; end
4819
5350
 
5351
+ # The user group is not in an active state.
5352
+ #
5353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidUserGroupStateFault AWS API Documentation
5354
+ #
5355
+ class InvalidUserGroupStateFault < Aws::EmptyStructure; end
5356
+
5357
+ # The user is not in active state.
5358
+ #
5359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidUserStateFault AWS API Documentation
5360
+ #
5361
+ class InvalidUserStateFault < Aws::EmptyStructure; end
5362
+
4820
5363
  # The VPC network is in an invalid state.
4821
5364
  #
4822
5365
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidVPCNetworkStateFault AWS API Documentation
@@ -4918,7 +5461,7 @@ module Aws::ElastiCache
4918
5461
  # snapshot_window: "String",
4919
5462
  # cache_node_type: "String",
4920
5463
  # auth_token: "String",
4921
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
5464
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
4922
5465
  # }
4923
5466
  #
4924
5467
  # @!attribute [rw] cache_cluster_id
@@ -5475,7 +6018,10 @@ module Aws::ElastiCache
5475
6018
  # snapshot_window: "String",
5476
6019
  # cache_node_type: "String",
5477
6020
  # auth_token: "String",
5478
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
6021
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
6022
+ # user_group_ids_to_add: ["UserGroupId"],
6023
+ # user_group_ids_to_remove: ["UserGroupId"],
6024
+ # remove_user_groups: false,
5479
6025
  # }
5480
6026
  #
5481
6027
  # @!attribute [rw] replication_group_id
@@ -5688,6 +6234,19 @@ module Aws::ElastiCache
5688
6234
  # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/auth.html
5689
6235
  # @return [String]
5690
6236
  #
6237
+ # @!attribute [rw] user_group_ids_to_add
6238
+ # A list of user group IDs.
6239
+ # @return [Array<String>]
6240
+ #
6241
+ # @!attribute [rw] user_group_ids_to_remove
6242
+ # A list of users groups to remove, meaning the users in the group no
6243
+ # longer can access thereplication group.
6244
+ # @return [Array<String>]
6245
+ #
6246
+ # @!attribute [rw] remove_user_groups
6247
+ # Removes the user groups that can access this replication group.
6248
+ # @return [Boolean]
6249
+ #
5691
6250
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroupMessage AWS API Documentation
5692
6251
  #
5693
6252
  class ModifyReplicationGroupMessage < Struct.new(
@@ -5711,7 +6270,10 @@ module Aws::ElastiCache
5711
6270
  :snapshot_window,
5712
6271
  :cache_node_type,
5713
6272
  :auth_token,
5714
- :auth_token_update_strategy)
6273
+ :auth_token_update_strategy,
6274
+ :user_group_ids_to_add,
6275
+ :user_group_ids_to_remove,
6276
+ :remove_user_groups)
5715
6277
  SENSITIVE = []
5716
6278
  include Aws::Structure
5717
6279
  end
@@ -5824,6 +6386,81 @@ module Aws::ElastiCache
5824
6386
  include Aws::Structure
5825
6387
  end
5826
6388
 
6389
+ # @note When making an API call, you may pass ModifyUserGroupMessage
6390
+ # data as a hash:
6391
+ #
6392
+ # {
6393
+ # user_group_id: "String", # required
6394
+ # user_ids_to_add: ["UserId"],
6395
+ # user_ids_to_remove: ["UserId"],
6396
+ # }
6397
+ #
6398
+ # @!attribute [rw] user_group_id
6399
+ # The ID of the user group.
6400
+ # @return [String]
6401
+ #
6402
+ # @!attribute [rw] user_ids_to_add
6403
+ # The list of user IDs to add to the user group.
6404
+ # @return [Array<String>]
6405
+ #
6406
+ # @!attribute [rw] user_ids_to_remove
6407
+ # The list of user IDs to remove from the user group.
6408
+ # @return [Array<String>]
6409
+ #
6410
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserGroupMessage AWS API Documentation
6411
+ #
6412
+ class ModifyUserGroupMessage < Struct.new(
6413
+ :user_group_id,
6414
+ :user_ids_to_add,
6415
+ :user_ids_to_remove)
6416
+ SENSITIVE = []
6417
+ include Aws::Structure
6418
+ end
6419
+
6420
+ # @note When making an API call, you may pass ModifyUserMessage
6421
+ # data as a hash:
6422
+ #
6423
+ # {
6424
+ # user_id: "UserId", # required
6425
+ # access_string: "AccessString",
6426
+ # append_access_string: "AccessString",
6427
+ # passwords: ["String"],
6428
+ # no_password_required: false,
6429
+ # }
6430
+ #
6431
+ # @!attribute [rw] user_id
6432
+ # The ID of the user.
6433
+ # @return [String]
6434
+ #
6435
+ # @!attribute [rw] access_string
6436
+ # Access permissions string used for this user account.
6437
+ # @return [String]
6438
+ #
6439
+ # @!attribute [rw] append_access_string
6440
+ # Adds additional user permissions to the access string.
6441
+ # @return [String]
6442
+ #
6443
+ # @!attribute [rw] passwords
6444
+ # The passwords belonging to the user account. You are allowed up to
6445
+ # two.
6446
+ # @return [Array<String>]
6447
+ #
6448
+ # @!attribute [rw] no_password_required
6449
+ # Indicates no password is required for the user account.
6450
+ # @return [Boolean]
6451
+ #
6452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserMessage AWS API Documentation
6453
+ #
6454
+ class ModifyUserMessage < Struct.new(
6455
+ :user_id,
6456
+ :access_string,
6457
+ :append_access_string,
6458
+ :passwords,
6459
+ :no_password_required)
6460
+ SENSITIVE = []
6461
+ include Aws::Structure
6462
+ end
6463
+
5827
6464
  # The operation was not performed because no changes were required.
5828
6465
  #
5829
6466
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/NoOperationFault AWS API Documentation
@@ -5890,6 +6527,8 @@ module Aws::ElastiCache
5890
6527
  # replica_count: 1,
5891
6528
  # primary_availability_zone: "String",
5892
6529
  # replica_availability_zones: ["String"],
6530
+ # primary_outpost_arn: "String",
6531
+ # replica_outpost_arns: ["String"],
5893
6532
  # }
5894
6533
  #
5895
6534
  # @!attribute [rw] node_group_id
@@ -5920,6 +6559,14 @@ module Aws::ElastiCache
5920
6559
  # `ReplicaCount` or `ReplicasPerNodeGroup` if not specified.
5921
6560
  # @return [Array<String>]
5922
6561
  #
6562
+ # @!attribute [rw] primary_outpost_arn
6563
+ # The output ARN of the primary node.
6564
+ # @return [String]
6565
+ #
6566
+ # @!attribute [rw] replica_outpost_arns
6567
+ # The outpost ARN of the node replicas.
6568
+ # @return [Array<String>]
6569
+ #
5923
6570
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/NodeGroupConfiguration AWS API Documentation
5924
6571
  #
5925
6572
  class NodeGroupConfiguration < Struct.new(
@@ -5927,7 +6574,9 @@ module Aws::ElastiCache
5927
6574
  :slots,
5928
6575
  :replica_count,
5929
6576
  :primary_availability_zone,
5930
- :replica_availability_zones)
6577
+ :replica_availability_zones,
6578
+ :primary_outpost_arn,
6579
+ :replica_outpost_arns)
5931
6580
  SENSITIVE = []
5932
6581
  include Aws::Structure
5933
6582
  end
@@ -5953,6 +6602,10 @@ module Aws::ElastiCache
5953
6602
  # The name of the Availability Zone in which the node is located.
5954
6603
  # @return [String]
5955
6604
  #
6605
+ # @!attribute [rw] preferred_outpost_arn
6606
+ # The outpost ARN of the node group member.
6607
+ # @return [String]
6608
+ #
5956
6609
  # @!attribute [rw] current_role
5957
6610
  # The role that is currently assigned to the node - `primary` or
5958
6611
  # `replica`. This member is only applicable for Redis (cluster mode
@@ -5966,6 +6619,7 @@ module Aws::ElastiCache
5966
6619
  :cache_node_id,
5967
6620
  :read_endpoint,
5968
6621
  :preferred_availability_zone,
6622
+ :preferred_outpost_arn,
5969
6623
  :current_role)
5970
6624
  SENSITIVE = []
5971
6625
  include Aws::Structure
@@ -6689,6 +7343,10 @@ module Aws::ElastiCache
6689
7343
  # Default: `false`
6690
7344
  # @return [Boolean]
6691
7345
  #
7346
+ # @!attribute [rw] member_clusters_outpost_arns
7347
+ # The outpost ARNs of the replication group's member clusters.
7348
+ # @return [Array<String>]
7349
+ #
6692
7350
  # @!attribute [rw] kms_key_id
6693
7351
  # The ID of the KMS key used to encrypt the disk in the cluster.
6694
7352
  # @return [String]
@@ -6697,6 +7355,11 @@ module Aws::ElastiCache
6697
7355
  # The ARN (Amazon Resource Name) of the replication group.
6698
7356
  # @return [String]
6699
7357
  #
7358
+ # @!attribute [rw] user_group_ids
7359
+ # The list of user group IDs that have access to the replication
7360
+ # group.
7361
+ # @return [Array<String>]
7362
+ #
6700
7363
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ReplicationGroup AWS API Documentation
6701
7364
  #
6702
7365
  class ReplicationGroup < Struct.new(
@@ -6719,8 +7382,10 @@ module Aws::ElastiCache
6719
7382
  :auth_token_last_modified_date,
6720
7383
  :transit_encryption_enabled,
6721
7384
  :at_rest_encryption_enabled,
7385
+ :member_clusters_outpost_arns,
6722
7386
  :kms_key_id,
6723
- :arn)
7387
+ :arn,
7388
+ :user_group_ids)
6724
7389
  SENSITIVE = []
6725
7390
  include Aws::Structure
6726
7391
  end
@@ -6791,13 +7456,18 @@ module Aws::ElastiCache
6791
7456
  # The auth token status
6792
7457
  # @return [String]
6793
7458
  #
7459
+ # @!attribute [rw] user_groups
7460
+ # The user groups being modified.
7461
+ # @return [Types::UserGroupsUpdateStatus]
7462
+ #
6794
7463
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ReplicationGroupPendingModifiedValues AWS API Documentation
6795
7464
  #
6796
7465
  class ReplicationGroupPendingModifiedValues < Struct.new(
6797
7466
  :primary_cluster_id,
6798
7467
  :automatic_failover_status,
6799
7468
  :resharding,
6800
- :auth_token_status)
7469
+ :auth_token_status,
7470
+ :user_groups)
6801
7471
  SENSITIVE = []
6802
7472
  include Aws::Structure
6803
7473
  end
@@ -6825,6 +7495,19 @@ module Aws::ElastiCache
6825
7495
  #
6826
7496
  # * Current generation:
6827
7497
  #
7498
+ # **M6g node types** (available only for Redis engine version
7499
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
7500
+ #
7501
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
7502
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
7503
+ # `cache.m6g.16xlarge`
7504
+ #
7505
+ # <note markdown="1"> At this time, M6g node types are available in the following
7506
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
7507
+ # eu-west-1 and ap-northeast-1.
7508
+ #
7509
+ # </note>
7510
+ #
6828
7511
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
6829
7512
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
6830
7513
  # `cache.m5.24xlarge`
@@ -6858,6 +7541,19 @@ module Aws::ElastiCache
6858
7541
  #
6859
7542
  # * Current generation:
6860
7543
  #
7544
+ # **R6g node types** (available only for Redis engine version
7545
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
7546
+ #
7547
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
7548
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
7549
+ # `cache.r6g.16xlarge`
7550
+ #
7551
+ # <note markdown="1"> At this time, R6g node types are available in the following
7552
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
7553
+ # eu-west-1 and ap-northeast-1.
7554
+ #
7555
+ # </note>
7556
+ #
6861
7557
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
6862
7558
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
6863
7559
  # `cache.r5.24xlarge`
@@ -7009,6 +7705,19 @@ module Aws::ElastiCache
7009
7705
  #
7010
7706
  # * Current generation:
7011
7707
  #
7708
+ # **M6g node types** (available only for Redis engine version
7709
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
7710
+ #
7711
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
7712
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
7713
+ # `cache.m6g.16xlarge`
7714
+ #
7715
+ # <note markdown="1"> At this time, M6g node types are available in the following
7716
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
7717
+ # eu-west-1 and ap-northeast-1.
7718
+ #
7719
+ # </note>
7720
+ #
7012
7721
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
7013
7722
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
7014
7723
  # `cache.m5.24xlarge`
@@ -7042,6 +7751,19 @@ module Aws::ElastiCache
7042
7751
  #
7043
7752
  # * Current generation:
7044
7753
  #
7754
+ # **R6g node types** (available only for Redis engine version
7755
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
7756
+ #
7757
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
7758
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
7759
+ # `cache.r6g.16xlarge`
7760
+ #
7761
+ # <note markdown="1"> At this time, R6g node types are available in the following
7762
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
7763
+ # eu-west-1 and ap-northeast-1.
7764
+ #
7765
+ # </note>
7766
+ #
7045
7767
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
7046
7768
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
7047
7769
  # `cache.r5.24xlarge`
@@ -7470,6 +8192,19 @@ module Aws::ElastiCache
7470
8192
  #
7471
8193
  # * Current generation:
7472
8194
  #
8195
+ # **M6g node types** (available only for Redis engine version
8196
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
8197
+ #
8198
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
8199
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
8200
+ # `cache.m6g.16xlarge`
8201
+ #
8202
+ # <note markdown="1"> At this time, M6g node types are available in the following
8203
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
8204
+ # eu-west-1 and ap-northeast-1.
8205
+ #
8206
+ # </note>
8207
+ #
7473
8208
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
7474
8209
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
7475
8210
  # `cache.m5.24xlarge`
@@ -7503,6 +8238,19 @@ module Aws::ElastiCache
7503
8238
  #
7504
8239
  # * Current generation:
7505
8240
  #
8241
+ # **R6g node types** (available only for Redis engine version
8242
+ # 5.0.6 onward and for Memcached engine version 1.5.16 onward).
8243
+ #
8244
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
8245
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
8246
+ # `cache.r6g.16xlarge`
8247
+ #
8248
+ # <note markdown="1"> At this time, R6g node types are available in the following
8249
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1,
8250
+ # eu-west-1 and ap-northeast-1.
8251
+ #
8252
+ # </note>
8253
+ #
7506
8254
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
7507
8255
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
7508
8256
  # `cache.r5.24xlarge`
@@ -7556,6 +8304,10 @@ module Aws::ElastiCache
7556
8304
  # located.
7557
8305
  # @return [String]
7558
8306
  #
8307
+ # @!attribute [rw] preferred_outpost_arn
8308
+ # The ARN (Amazon Resource Name) of the preferred outpost.
8309
+ # @return [String]
8310
+ #
7559
8311
  # @!attribute [rw] cache_cluster_create_time
7560
8312
  # The date and time when the source cluster was created.
7561
8313
  # @return [Time]
@@ -7669,6 +8421,7 @@ module Aws::ElastiCache
7669
8421
  :engine_version,
7670
8422
  :num_cache_nodes,
7671
8423
  :preferred_availability_zone,
8424
+ :preferred_outpost_arn,
7672
8425
  :cache_cluster_create_time,
7673
8426
  :preferred_maintenance_window,
7674
8427
  :topic_arn,
@@ -7777,11 +8530,16 @@ module Aws::ElastiCache
7777
8530
  # The Availability Zone associated with the subnet.
7778
8531
  # @return [Types::AvailabilityZone]
7779
8532
  #
8533
+ # @!attribute [rw] subnet_outpost
8534
+ # The outpost ARN of the subnet.
8535
+ # @return [Types::SubnetOutpost]
8536
+ #
7780
8537
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/Subnet AWS API Documentation
7781
8538
  #
7782
8539
  class Subnet < Struct.new(
7783
8540
  :subnet_identifier,
7784
- :subnet_availability_zone)
8541
+ :subnet_availability_zone,
8542
+ :subnet_outpost)
7785
8543
  SENSITIVE = []
7786
8544
  include Aws::Structure
7787
8545
  end
@@ -7792,6 +8550,29 @@ module Aws::ElastiCache
7792
8550
  #
7793
8551
  class SubnetInUse < Aws::EmptyStructure; end
7794
8552
 
8553
+ # At least one subnet ID does not match the other subnet IDs. This
8554
+ # mismatch typically occurs when a user sets one subnet ID to a regional
8555
+ # Availability Zone and a different one to an outpost. Or when a user
8556
+ # sets the subnet ID to an Outpost when not subscribed on this service.
8557
+ #
8558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/SubnetNotAllowedFault AWS API Documentation
8559
+ #
8560
+ class SubnetNotAllowedFault < Aws::EmptyStructure; end
8561
+
8562
+ # The ID of the outpost subnet.
8563
+ #
8564
+ # @!attribute [rw] subnet_outpost_arn
8565
+ # The outpost ARN of the subnet.
8566
+ # @return [String]
8567
+ #
8568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/SubnetOutpost AWS API Documentation
8569
+ #
8570
+ class SubnetOutpost < Struct.new(
8571
+ :subnet_outpost_arn)
8572
+ SENSITIVE = []
8573
+ include Aws::Structure
8574
+ end
8575
+
7795
8576
  # A cost allocation Tag that can be added to an ElastiCache cluster or
7796
8577
  # replication group. Tags are composed of a Key/Value pair. A tag with a
7797
8578
  # null Value is permitted.
@@ -8104,5 +8885,170 @@ module Aws::ElastiCache
8104
8885
  include Aws::Structure
8105
8886
  end
8106
8887
 
8888
+ # @!attribute [rw] user_id
8889
+ # The ID of the user.
8890
+ # @return [String]
8891
+ #
8892
+ # @!attribute [rw] user_name
8893
+ # The username of the user.
8894
+ # @return [String]
8895
+ #
8896
+ # @!attribute [rw] status
8897
+ # Indicates the user status. Can be "active", "modifying" or
8898
+ # "deleting".
8899
+ # @return [String]
8900
+ #
8901
+ # @!attribute [rw] engine
8902
+ # Must be Redis.
8903
+ # @return [String]
8904
+ #
8905
+ # @!attribute [rw] access_string
8906
+ # Access permissions string used for this user account.
8907
+ # @return [String]
8908
+ #
8909
+ # @!attribute [rw] user_group_ids
8910
+ # Returns a list of the user group IDs the user belongs to.
8911
+ # @return [Array<String>]
8912
+ #
8913
+ # @!attribute [rw] authentication
8914
+ # Denotes whether the user requires a password to authenticate.
8915
+ # @return [Types::Authentication]
8916
+ #
8917
+ # @!attribute [rw] arn
8918
+ # The Amazon Resource Name (ARN) of the user account.
8919
+ # @return [String]
8920
+ #
8921
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/User AWS API Documentation
8922
+ #
8923
+ class User < Struct.new(
8924
+ :user_id,
8925
+ :user_name,
8926
+ :status,
8927
+ :engine,
8928
+ :access_string,
8929
+ :user_group_ids,
8930
+ :authentication,
8931
+ :arn)
8932
+ SENSITIVE = []
8933
+ include Aws::Structure
8934
+ end
8935
+
8936
+ # A user with this ID already exists.
8937
+ #
8938
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserAlreadyExistsFault AWS API Documentation
8939
+ #
8940
+ class UserAlreadyExistsFault < Aws::EmptyStructure; end
8941
+
8942
+ # @!attribute [rw] user_group_id
8943
+ # The ID of the user group.
8944
+ # @return [String]
8945
+ #
8946
+ # @!attribute [rw] status
8947
+ # Indicates user group status. Can be "creating", "active",
8948
+ # "modifying", "deleting".
8949
+ # @return [String]
8950
+ #
8951
+ # @!attribute [rw] engine
8952
+ # Must be Redis.
8953
+ # @return [String]
8954
+ #
8955
+ # @!attribute [rw] user_ids
8956
+ # The list of user IDs that belong to the user group.
8957
+ # @return [Array<String>]
8958
+ #
8959
+ # @!attribute [rw] pending_changes
8960
+ # A list of updates being applied to the user groups.
8961
+ # @return [Types::UserGroupPendingChanges]
8962
+ #
8963
+ # @!attribute [rw] replication_groups
8964
+ # A list of replication groups that the user group can access.
8965
+ # @return [Array<String>]
8966
+ #
8967
+ # @!attribute [rw] arn
8968
+ # The Amazon Resource Name (ARN) of the user group.
8969
+ # @return [String]
8970
+ #
8971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroup AWS API Documentation
8972
+ #
8973
+ class UserGroup < Struct.new(
8974
+ :user_group_id,
8975
+ :status,
8976
+ :engine,
8977
+ :user_ids,
8978
+ :pending_changes,
8979
+ :replication_groups,
8980
+ :arn)
8981
+ SENSITIVE = []
8982
+ include Aws::Structure
8983
+ end
8984
+
8985
+ # The user group with this ID already exists.
8986
+ #
8987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupAlreadyExistsFault AWS API Documentation
8988
+ #
8989
+ class UserGroupAlreadyExistsFault < Aws::EmptyStructure; end
8990
+
8991
+ # The user group was not found or does not exist
8992
+ #
8993
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupNotFoundFault AWS API Documentation
8994
+ #
8995
+ class UserGroupNotFoundFault < Aws::EmptyStructure; end
8996
+
8997
+ # Returns the updates being applied to the user group.
8998
+ #
8999
+ # @!attribute [rw] user_ids_to_remove
9000
+ # The list of user group IDs ro remove.
9001
+ # @return [Array<String>]
9002
+ #
9003
+ # @!attribute [rw] user_ids_to_add
9004
+ # The list of user IDs to add.
9005
+ # @return [Array<String>]
9006
+ #
9007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupPendingChanges AWS API Documentation
9008
+ #
9009
+ class UserGroupPendingChanges < Struct.new(
9010
+ :user_ids_to_remove,
9011
+ :user_ids_to_add)
9012
+ SENSITIVE = []
9013
+ include Aws::Structure
9014
+ end
9015
+
9016
+ # The number of users exceeds the user group limit.
9017
+ #
9018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupQuotaExceededFault AWS API Documentation
9019
+ #
9020
+ class UserGroupQuotaExceededFault < Aws::EmptyStructure; end
9021
+
9022
+ # The status of the user group update.
9023
+ #
9024
+ # @!attribute [rw] user_group_ids_to_add
9025
+ # The list of user group IDs to add.
9026
+ # @return [Array<String>]
9027
+ #
9028
+ # @!attribute [rw] user_group_ids_to_remove
9029
+ # The list of user group IDs to remove.
9030
+ # @return [Array<String>]
9031
+ #
9032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupsUpdateStatus AWS API Documentation
9033
+ #
9034
+ class UserGroupsUpdateStatus < Struct.new(
9035
+ :user_group_ids_to_add,
9036
+ :user_group_ids_to_remove)
9037
+ SENSITIVE = []
9038
+ include Aws::Structure
9039
+ end
9040
+
9041
+ # The user does not exist or could not be found.
9042
+ #
9043
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserNotFoundFault AWS API Documentation
9044
+ #
9045
+ class UserNotFoundFault < Aws::EmptyStructure; end
9046
+
9047
+ # The quota of users has been exceeded.
9048
+ #
9049
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserQuotaExceededFault AWS API Documentation
9050
+ #
9051
+ class UserQuotaExceededFault < Aws::EmptyStructure; end
9052
+
8107
9053
  end
8108
9054
  end