aws-sdk-elasticache 1.43.0 → 1.44.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
  #
@@ -361,6 +380,10 @@ module Aws::ElastiCache
361
380
  # Availability Zones.
362
381
  # @return [String]
363
382
  #
383
+ # @!attribute [rw] preferred_outpost_arn
384
+ # The outpost ARN in which the cache cluster is created.
385
+ # @return [String]
386
+ #
364
387
  # @!attribute [rw] cache_cluster_create_time
365
388
  # The date and time when the cluster was created.
366
389
  # @return [Time]
@@ -503,6 +526,7 @@ module Aws::ElastiCache
503
526
  :cache_cluster_status,
504
527
  :num_cache_nodes,
505
528
  :preferred_availability_zone,
529
+ :preferred_outpost_arn,
506
530
  :cache_cluster_create_time,
507
531
  :preferred_maintenance_window,
508
532
  :pending_modified_values,
@@ -724,6 +748,10 @@ module Aws::ElastiCache
724
748
  # The Availability Zone where this node was created and now resides.
725
749
  # @return [String]
726
750
  #
751
+ # @!attribute [rw] customer_outpost_arn
752
+ # The customer outpost ARN of the cache node.
753
+ # @return [String]
754
+ #
727
755
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CacheNode AWS API Documentation
728
756
  #
729
757
  class CacheNode < Struct.new(
@@ -733,7 +761,8 @@ module Aws::ElastiCache
733
761
  :endpoint,
734
762
  :parameter_group_status,
735
763
  :source_cache_node_id,
736
- :customer_availability_zone)
764
+ :customer_availability_zone,
765
+ :customer_outpost_arn)
737
766
  SENSITIVE = []
738
767
  include Aws::Structure
739
768
  end
@@ -1049,7 +1078,7 @@ module Aws::ElastiCache
1049
1078
  # @return [Array<Types::EC2SecurityGroup>]
1050
1079
  #
1051
1080
  # @!attribute [rw] arn
1052
- # The ARN (Amazon Resource Name) of the cache security group.
1081
+ # The ARN of the cache security group,
1053
1082
  # @return [String]
1054
1083
  #
1055
1084
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CacheSecurityGroup AWS API Documentation
@@ -1278,6 +1307,7 @@ module Aws::ElastiCache
1278
1307
  # node_group_id: "AllowedNodeGroupId", # required
1279
1308
  # new_replica_count: 1, # required
1280
1309
  # preferred_availability_zones: ["String"],
1310
+ # preferred_outpost_arns: ["String"],
1281
1311
  # }
1282
1312
  #
1283
1313
  # @!attribute [rw] node_group_id
@@ -1318,12 +1348,17 @@ module Aws::ElastiCache
1318
1348
  # selects the availability zone for each of the replicas.
1319
1349
  # @return [Array<String>]
1320
1350
  #
1351
+ # @!attribute [rw] preferred_outpost_arns
1352
+ # The outpost ARNs in which the cache cluster is created.
1353
+ # @return [Array<String>]
1354
+ #
1321
1355
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ConfigureShard AWS API Documentation
1322
1356
  #
1323
1357
  class ConfigureShard < Struct.new(
1324
1358
  :node_group_id,
1325
1359
  :new_replica_count,
1326
- :preferred_availability_zones)
1360
+ :preferred_availability_zones,
1361
+ :preferred_outpost_arns)
1327
1362
  SENSITIVE = []
1328
1363
  include Aws::Structure
1329
1364
  end
@@ -1431,6 +1466,9 @@ module Aws::ElastiCache
1431
1466
  # snapshot_retention_limit: 1,
1432
1467
  # snapshot_window: "String",
1433
1468
  # auth_token: "String",
1469
+ # outpost_mode: "single-outpost", # accepts single-outpost, cross-outpost
1470
+ # preferred_outpost_arn: "String",
1471
+ # preferred_outpost_arns: ["String"],
1434
1472
  # }
1435
1473
  #
1436
1474
  # @!attribute [rw] cache_cluster_id
@@ -1785,6 +1823,19 @@ module Aws::ElastiCache
1785
1823
  # [1]: http://redis.io/commands/AUTH
1786
1824
  # @return [String]
1787
1825
  #
1826
+ # @!attribute [rw] outpost_mode
1827
+ # Specifies whether the nodes in the cluster are created in a single
1828
+ # outpost or across multiple outposts.
1829
+ # @return [String]
1830
+ #
1831
+ # @!attribute [rw] preferred_outpost_arn
1832
+ # The outpost ARN in which the cache cluster is created.
1833
+ # @return [String]
1834
+ #
1835
+ # @!attribute [rw] preferred_outpost_arns
1836
+ # The outpost ARNs in which the cache cluster is created.
1837
+ # @return [Array<String>]
1838
+ #
1788
1839
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateCacheClusterMessage AWS API Documentation
1789
1840
  #
1790
1841
  class CreateCacheClusterMessage < Struct.new(
@@ -1810,7 +1861,10 @@ module Aws::ElastiCache
1810
1861
  :auto_minor_version_upgrade,
1811
1862
  :snapshot_retention_limit,
1812
1863
  :snapshot_window,
1813
- :auth_token)
1864
+ :auth_token,
1865
+ :outpost_mode,
1866
+ :preferred_outpost_arn,
1867
+ :preferred_outpost_arns)
1814
1868
  SENSITIVE = []
1815
1869
  include Aws::Structure
1816
1870
  end
@@ -1992,8 +2046,20 @@ module Aws::ElastiCache
1992
2046
  # }
1993
2047
  #
1994
2048
  # @!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.
2049
+ # The suffix name of a Global Datastore. Amazon ElastiCache
2050
+ # automatically applies a prefix to the Global Datastore ID when it is
2051
+ # created. Each AWS Region has its own prefix. For instance, a Global
2052
+ # Datastore ID created in the US-West-1 region will begin with
2053
+ # "dsdfu" along with the suffix name you provide. The suffix,
2054
+ # combined with the auto-generated prefix, guarantees uniqueness of
2055
+ # the Global Datastore name across multiple regions.
2056
+ #
2057
+ # For a full list of AWS Regions and their respective Global Datastore
2058
+ # iD prefixes, see [Using the AWS CLI with Global Datastores ][1].
2059
+ #
2060
+ #
2061
+ #
2062
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Clusters-CLI.html
1997
2063
  # @return [String]
1998
2064
  #
1999
2065
  # @!attribute [rw] global_replication_group_description
@@ -2059,6 +2125,8 @@ module Aws::ElastiCache
2059
2125
  # replica_count: 1,
2060
2126
  # primary_availability_zone: "String",
2061
2127
  # replica_availability_zones: ["String"],
2128
+ # primary_outpost_arn: "String",
2129
+ # replica_outpost_arns: ["String"],
2062
2130
  # },
2063
2131
  # ],
2064
2132
  # cache_node_type: "String",
@@ -2086,6 +2154,7 @@ module Aws::ElastiCache
2086
2154
  # transit_encryption_enabled: false,
2087
2155
  # at_rest_encryption_enabled: false,
2088
2156
  # kms_key_id: "String",
2157
+ # user_group_ids: ["UserGroupId"],
2089
2158
  # }
2090
2159
  #
2091
2160
  # @!attribute [rw] replication_group_id
@@ -2517,6 +2586,10 @@ module Aws::ElastiCache
2517
2586
  # The ID of the KMS key used to encrypt the disk in the cluster.
2518
2587
  # @return [String]
2519
2588
  #
2589
+ # @!attribute [rw] user_group_ids
2590
+ # The list of user groups to associate with the replication group.
2591
+ # @return [Array<String>]
2592
+ #
2520
2593
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateReplicationGroupMessage AWS API Documentation
2521
2594
  #
2522
2595
  class CreateReplicationGroupMessage < Struct.new(
@@ -2550,7 +2623,8 @@ module Aws::ElastiCache
2550
2623
  :auth_token,
2551
2624
  :transit_encryption_enabled,
2552
2625
  :at_rest_encryption_enabled,
2553
- :kms_key_id)
2626
+ :kms_key_id,
2627
+ :user_group_ids)
2554
2628
  SENSITIVE = []
2555
2629
  include Aws::Structure
2556
2630
  end
@@ -2622,6 +2696,87 @@ module Aws::ElastiCache
2622
2696
  include Aws::Structure
2623
2697
  end
2624
2698
 
2699
+ # @note When making an API call, you may pass CreateUserGroupMessage
2700
+ # data as a hash:
2701
+ #
2702
+ # {
2703
+ # user_group_id: "String", # required
2704
+ # engine: "EngineType", # required
2705
+ # user_ids: ["UserId"],
2706
+ # }
2707
+ #
2708
+ # @!attribute [rw] user_group_id
2709
+ # The ID of the user group.
2710
+ # @return [String]
2711
+ #
2712
+ # @!attribute [rw] engine
2713
+ # Must be Redis.
2714
+ # @return [String]
2715
+ #
2716
+ # @!attribute [rw] user_ids
2717
+ # The list of user IDs that belong to the user group.
2718
+ # @return [Array<String>]
2719
+ #
2720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserGroupMessage AWS API Documentation
2721
+ #
2722
+ class CreateUserGroupMessage < Struct.new(
2723
+ :user_group_id,
2724
+ :engine,
2725
+ :user_ids)
2726
+ SENSITIVE = []
2727
+ include Aws::Structure
2728
+ end
2729
+
2730
+ # @note When making an API call, you may pass CreateUserMessage
2731
+ # data as a hash:
2732
+ #
2733
+ # {
2734
+ # user_id: "UserId", # required
2735
+ # user_name: "UserName", # required
2736
+ # engine: "EngineType", # required
2737
+ # passwords: ["String"],
2738
+ # access_string: "AccessString", # required
2739
+ # no_password_required: false,
2740
+ # }
2741
+ #
2742
+ # @!attribute [rw] user_id
2743
+ # The ID of the user.
2744
+ # @return [String]
2745
+ #
2746
+ # @!attribute [rw] user_name
2747
+ # The username of the user.
2748
+ # @return [String]
2749
+ #
2750
+ # @!attribute [rw] engine
2751
+ # Must be Redis.
2752
+ # @return [String]
2753
+ #
2754
+ # @!attribute [rw] passwords
2755
+ # Passwords used for this user account. You can create up to two
2756
+ # passwords for each user.
2757
+ # @return [Array<String>]
2758
+ #
2759
+ # @!attribute [rw] access_string
2760
+ # Access permissions string used for this user account.
2761
+ # @return [String]
2762
+ #
2763
+ # @!attribute [rw] no_password_required
2764
+ # Indicates a password is not required for this user account.
2765
+ # @return [Boolean]
2766
+ #
2767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserMessage AWS API Documentation
2768
+ #
2769
+ class CreateUserMessage < Struct.new(
2770
+ :user_id,
2771
+ :user_name,
2772
+ :engine,
2773
+ :passwords,
2774
+ :access_string,
2775
+ :no_password_required)
2776
+ SENSITIVE = []
2777
+ include Aws::Structure
2778
+ end
2779
+
2625
2780
  # The endpoint from which data should be migrated.
2626
2781
  #
2627
2782
  # @note When making an API call, you may pass CustomerNodeEndpoint
@@ -2736,6 +2891,7 @@ module Aws::ElastiCache
2736
2891
  # node_group_id: "AllowedNodeGroupId", # required
2737
2892
  # new_replica_count: 1, # required
2738
2893
  # preferred_availability_zones: ["String"],
2894
+ # preferred_outpost_arns: ["String"],
2739
2895
  # },
2740
2896
  # ],
2741
2897
  # replicas_to_remove: ["String"],
@@ -2808,6 +2964,16 @@ module Aws::ElastiCache
2808
2964
  include Aws::Structure
2809
2965
  end
2810
2966
 
2967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DefaultUserAssociatedToUserGroupFault AWS API Documentation
2968
+ #
2969
+ class DefaultUserAssociatedToUserGroupFault < Aws::EmptyStructure; end
2970
+
2971
+ # You must add default user to a user group.
2972
+ #
2973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DefaultUserRequired AWS API Documentation
2974
+ #
2975
+ class DefaultUserRequired < Aws::EmptyStructure; end
2976
+
2811
2977
  # Represents the input of a `DeleteCacheCluster` operation.
2812
2978
  #
2813
2979
  # @note When making an API call, you may pass DeleteCacheClusterMessage
@@ -3058,6 +3224,44 @@ module Aws::ElastiCache
3058
3224
  include Aws::Structure
3059
3225
  end
3060
3226
 
3227
+ # @note When making an API call, you may pass DeleteUserGroupMessage
3228
+ # data as a hash:
3229
+ #
3230
+ # {
3231
+ # user_group_id: "String", # required
3232
+ # }
3233
+ #
3234
+ # @!attribute [rw] user_group_id
3235
+ # The ID of the user group.
3236
+ # @return [String]
3237
+ #
3238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserGroupMessage AWS API Documentation
3239
+ #
3240
+ class DeleteUserGroupMessage < Struct.new(
3241
+ :user_group_id)
3242
+ SENSITIVE = []
3243
+ include Aws::Structure
3244
+ end
3245
+
3246
+ # @note When making an API call, you may pass DeleteUserMessage
3247
+ # data as a hash:
3248
+ #
3249
+ # {
3250
+ # user_id: "UserId", # required
3251
+ # }
3252
+ #
3253
+ # @!attribute [rw] user_id
3254
+ # The ID of the user.
3255
+ # @return [String]
3256
+ #
3257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserMessage AWS API Documentation
3258
+ #
3259
+ class DeleteUserMessage < Struct.new(
3260
+ :user_id)
3261
+ SENSITIVE = []
3262
+ include Aws::Structure
3263
+ end
3264
+
3061
3265
  # Represents the input of a `DescribeCacheClusters` operation.
3062
3266
  #
3063
3267
  # @note When making an API call, you may pass DescribeCacheClustersMessage
@@ -3441,7 +3645,7 @@ module Aws::ElastiCache
3441
3645
  #
3442
3646
  # {
3443
3647
  # source_identifier: "String",
3444
- # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group
3648
+ # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, user, user-group
3445
3649
  # start_time: Time.now,
3446
3650
  # end_time: Time.now,
3447
3651
  # duration: 1,
@@ -4151,6 +4355,137 @@ module Aws::ElastiCache
4151
4355
  include Aws::Structure
4152
4356
  end
4153
4357
 
4358
+ # @note When making an API call, you may pass DescribeUserGroupsMessage
4359
+ # data as a hash:
4360
+ #
4361
+ # {
4362
+ # user_group_id: "String",
4363
+ # max_records: 1,
4364
+ # marker: "String",
4365
+ # }
4366
+ #
4367
+ # @!attribute [rw] user_group_id
4368
+ # The ID of the user group.
4369
+ # @return [String]
4370
+ #
4371
+ # @!attribute [rw] max_records
4372
+ # The maximum number of records to include in the response. If more
4373
+ # records exist than the specified MaxRecords value, a marker is
4374
+ # included in the response so that the remaining results can be
4375
+ # retrieved.
4376
+ # @return [Integer]
4377
+ #
4378
+ # @!attribute [rw] marker
4379
+ # An optional marker returned from a prior request. Use this marker
4380
+ # for pagination of results from this operation. If this parameter is
4381
+ # specified, the response includes only records beyond the marker, up
4382
+ # to the value specified by MaxRecords. &gt;
4383
+ # @return [String]
4384
+ #
4385
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroupsMessage AWS API Documentation
4386
+ #
4387
+ class DescribeUserGroupsMessage < Struct.new(
4388
+ :user_group_id,
4389
+ :max_records,
4390
+ :marker)
4391
+ SENSITIVE = []
4392
+ include Aws::Structure
4393
+ end
4394
+
4395
+ # @!attribute [rw] user_groups
4396
+ # Returns a list of user groups.
4397
+ # @return [Array<Types::UserGroup>]
4398
+ #
4399
+ # @!attribute [rw] marker
4400
+ # An optional marker returned from a prior request. Use this marker
4401
+ # for pagination of results from this operation. If this parameter is
4402
+ # specified, the response includes only records beyond the marker, up
4403
+ # to the value specified by MaxRecords. &gt;
4404
+ # @return [String]
4405
+ #
4406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroupsResult AWS API Documentation
4407
+ #
4408
+ class DescribeUserGroupsResult < Struct.new(
4409
+ :user_groups,
4410
+ :marker)
4411
+ SENSITIVE = []
4412
+ include Aws::Structure
4413
+ end
4414
+
4415
+ # @note When making an API call, you may pass DescribeUsersMessage
4416
+ # data as a hash:
4417
+ #
4418
+ # {
4419
+ # engine: "EngineType",
4420
+ # user_id: "UserId",
4421
+ # filters: [
4422
+ # {
4423
+ # name: "FilterName", # required
4424
+ # values: ["FilterValue"], # required
4425
+ # },
4426
+ # ],
4427
+ # max_records: 1,
4428
+ # marker: "String",
4429
+ # }
4430
+ #
4431
+ # @!attribute [rw] engine
4432
+ # The Redis engine.
4433
+ # @return [String]
4434
+ #
4435
+ # @!attribute [rw] user_id
4436
+ # The ID of the user.
4437
+ # @return [String]
4438
+ #
4439
+ # @!attribute [rw] filters
4440
+ # Filter to determine the list of User IDs to return.
4441
+ # @return [Array<Types::Filter>]
4442
+ #
4443
+ # @!attribute [rw] max_records
4444
+ # The maximum number of records to include in the response. If more
4445
+ # records exist than the specified MaxRecords value, a marker is
4446
+ # included in the response so that the remaining results can be
4447
+ # retrieved.
4448
+ # @return [Integer]
4449
+ #
4450
+ # @!attribute [rw] marker
4451
+ # An optional marker returned from a prior request. Use this marker
4452
+ # for pagination of results from this operation. If this parameter is
4453
+ # specified, the response includes only records beyond the marker, up
4454
+ # to the value specified by MaxRecords. &gt;
4455
+ # @return [String]
4456
+ #
4457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsersMessage AWS API Documentation
4458
+ #
4459
+ class DescribeUsersMessage < Struct.new(
4460
+ :engine,
4461
+ :user_id,
4462
+ :filters,
4463
+ :max_records,
4464
+ :marker)
4465
+ SENSITIVE = []
4466
+ include Aws::Structure
4467
+ end
4468
+
4469
+ # @!attribute [rw] users
4470
+ # A list of users.
4471
+ # @return [Array<Types::User>]
4472
+ #
4473
+ # @!attribute [rw] marker
4474
+ # An optional marker returned from a prior request. Use this marker
4475
+ # for pagination of results from this operation. If this parameter is
4476
+ # specified, the response includes only records beyond the marker, up
4477
+ # to the value specified by MaxRecords. &gt;
4478
+ # @return [String]
4479
+ #
4480
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsersResult AWS API Documentation
4481
+ #
4482
+ class DescribeUsersResult < Struct.new(
4483
+ :users,
4484
+ :marker)
4485
+ SENSITIVE = []
4486
+ include Aws::Structure
4487
+ end
4488
+
4154
4489
  # @note When making an API call, you may pass DisassociateGlobalReplicationGroupMessage
4155
4490
  # data as a hash:
4156
4491
  #
@@ -4205,6 +4540,12 @@ module Aws::ElastiCache
4205
4540
  include Aws::Structure
4206
4541
  end
4207
4542
 
4543
+ # A user with this username already exists.
4544
+ #
4545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DuplicateUserNameFault AWS API Documentation
4546
+ #
4547
+ class DuplicateUserNameFault < Aws::EmptyStructure; end
4548
+
4208
4549
  # Provides ownership and status information for an Amazon EC2 security
4209
4550
  # group.
4210
4551
  #
@@ -4392,6 +4733,34 @@ module Aws::ElastiCache
4392
4733
  include Aws::Structure
4393
4734
  end
4394
4735
 
4736
+ # Used to streamline results of a search based on the property being
4737
+ # filtered.
4738
+ #
4739
+ # @note When making an API call, you may pass Filter
4740
+ # data as a hash:
4741
+ #
4742
+ # {
4743
+ # name: "FilterName", # required
4744
+ # values: ["FilterValue"], # required
4745
+ # }
4746
+ #
4747
+ # @!attribute [rw] name
4748
+ # The property being filtered. For example, UserId.
4749
+ # @return [String]
4750
+ #
4751
+ # @!attribute [rw] values
4752
+ # The property values to filter on. For example, "user-123".
4753
+ # @return [Array<String>]
4754
+ #
4755
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/Filter AWS API Documentation
4756
+ #
4757
+ class Filter < Struct.new(
4758
+ :name,
4759
+ :values)
4760
+ SENSITIVE = []
4761
+ include Aws::Structure
4762
+ end
4763
+
4395
4764
  # Indicates the slot configuration and global identifier for a slice
4396
4765
  # group.
4397
4766
  #
@@ -4665,6 +5034,7 @@ module Aws::ElastiCache
4665
5034
  # node_group_id: "AllowedNodeGroupId", # required
4666
5035
  # new_replica_count: 1, # required
4667
5036
  # preferred_availability_zones: ["String"],
5037
+ # preferred_outpost_arns: ["String"],
4668
5038
  # },
4669
5039
  # ],
4670
5040
  # apply_immediately: false, # required
@@ -4817,6 +5187,18 @@ module Aws::ElastiCache
4817
5187
  #
4818
5188
  class InvalidSubnet < Aws::EmptyStructure; end
4819
5189
 
5190
+ # The user group is not in an active state.
5191
+ #
5192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidUserGroupStateFault AWS API Documentation
5193
+ #
5194
+ class InvalidUserGroupStateFault < Aws::EmptyStructure; end
5195
+
5196
+ # The user is not in active state.
5197
+ #
5198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidUserStateFault AWS API Documentation
5199
+ #
5200
+ class InvalidUserStateFault < Aws::EmptyStructure; end
5201
+
4820
5202
  # The VPC network is in an invalid state.
4821
5203
  #
4822
5204
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/InvalidVPCNetworkStateFault AWS API Documentation
@@ -4918,7 +5300,7 @@ module Aws::ElastiCache
4918
5300
  # snapshot_window: "String",
4919
5301
  # cache_node_type: "String",
4920
5302
  # auth_token: "String",
4921
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
5303
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
4922
5304
  # }
4923
5305
  #
4924
5306
  # @!attribute [rw] cache_cluster_id
@@ -5475,7 +5857,10 @@ module Aws::ElastiCache
5475
5857
  # snapshot_window: "String",
5476
5858
  # cache_node_type: "String",
5477
5859
  # auth_token: "String",
5478
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
5860
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
5861
+ # user_group_ids_to_add: ["UserGroupId"],
5862
+ # user_group_ids_to_remove: ["UserGroupId"],
5863
+ # remove_user_groups: false,
5479
5864
  # }
5480
5865
  #
5481
5866
  # @!attribute [rw] replication_group_id
@@ -5688,6 +6073,19 @@ module Aws::ElastiCache
5688
6073
  # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/auth.html
5689
6074
  # @return [String]
5690
6075
  #
6076
+ # @!attribute [rw] user_group_ids_to_add
6077
+ # A list of user group IDs.
6078
+ # @return [Array<String>]
6079
+ #
6080
+ # @!attribute [rw] user_group_ids_to_remove
6081
+ # A list of users groups to remove, meaning the users in the group no
6082
+ # longer can access thereplication group.
6083
+ # @return [Array<String>]
6084
+ #
6085
+ # @!attribute [rw] remove_user_groups
6086
+ # Removes the user groups that can access this replication group.
6087
+ # @return [Boolean]
6088
+ #
5691
6089
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroupMessage AWS API Documentation
5692
6090
  #
5693
6091
  class ModifyReplicationGroupMessage < Struct.new(
@@ -5711,7 +6109,10 @@ module Aws::ElastiCache
5711
6109
  :snapshot_window,
5712
6110
  :cache_node_type,
5713
6111
  :auth_token,
5714
- :auth_token_update_strategy)
6112
+ :auth_token_update_strategy,
6113
+ :user_group_ids_to_add,
6114
+ :user_group_ids_to_remove,
6115
+ :remove_user_groups)
5715
6116
  SENSITIVE = []
5716
6117
  include Aws::Structure
5717
6118
  end
@@ -5824,6 +6225,81 @@ module Aws::ElastiCache
5824
6225
  include Aws::Structure
5825
6226
  end
5826
6227
 
6228
+ # @note When making an API call, you may pass ModifyUserGroupMessage
6229
+ # data as a hash:
6230
+ #
6231
+ # {
6232
+ # user_group_id: "String", # required
6233
+ # user_ids_to_add: ["UserId"],
6234
+ # user_ids_to_remove: ["UserId"],
6235
+ # }
6236
+ #
6237
+ # @!attribute [rw] user_group_id
6238
+ # The ID of the user group.
6239
+ # @return [String]
6240
+ #
6241
+ # @!attribute [rw] user_ids_to_add
6242
+ # The list of user IDs to add to the user group.
6243
+ # @return [Array<String>]
6244
+ #
6245
+ # @!attribute [rw] user_ids_to_remove
6246
+ # The list of user IDs to remove from the user group.
6247
+ # @return [Array<String>]
6248
+ #
6249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserGroupMessage AWS API Documentation
6250
+ #
6251
+ class ModifyUserGroupMessage < Struct.new(
6252
+ :user_group_id,
6253
+ :user_ids_to_add,
6254
+ :user_ids_to_remove)
6255
+ SENSITIVE = []
6256
+ include Aws::Structure
6257
+ end
6258
+
6259
+ # @note When making an API call, you may pass ModifyUserMessage
6260
+ # data as a hash:
6261
+ #
6262
+ # {
6263
+ # user_id: "UserId", # required
6264
+ # access_string: "AccessString",
6265
+ # append_access_string: "AccessString",
6266
+ # passwords: ["String"],
6267
+ # no_password_required: false,
6268
+ # }
6269
+ #
6270
+ # @!attribute [rw] user_id
6271
+ # The ID of the user.
6272
+ # @return [String]
6273
+ #
6274
+ # @!attribute [rw] access_string
6275
+ # Access permissions string used for this user account.
6276
+ # @return [String]
6277
+ #
6278
+ # @!attribute [rw] append_access_string
6279
+ # Adds additional user permissions to the access string.
6280
+ # @return [String]
6281
+ #
6282
+ # @!attribute [rw] passwords
6283
+ # The passwords belonging to the user account. You are allowed up to
6284
+ # two.
6285
+ # @return [Array<String>]
6286
+ #
6287
+ # @!attribute [rw] no_password_required
6288
+ # Indicates no password is required for the user account.
6289
+ # @return [Boolean]
6290
+ #
6291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserMessage AWS API Documentation
6292
+ #
6293
+ class ModifyUserMessage < Struct.new(
6294
+ :user_id,
6295
+ :access_string,
6296
+ :append_access_string,
6297
+ :passwords,
6298
+ :no_password_required)
6299
+ SENSITIVE = []
6300
+ include Aws::Structure
6301
+ end
6302
+
5827
6303
  # The operation was not performed because no changes were required.
5828
6304
  #
5829
6305
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/NoOperationFault AWS API Documentation
@@ -5890,6 +6366,8 @@ module Aws::ElastiCache
5890
6366
  # replica_count: 1,
5891
6367
  # primary_availability_zone: "String",
5892
6368
  # replica_availability_zones: ["String"],
6369
+ # primary_outpost_arn: "String",
6370
+ # replica_outpost_arns: ["String"],
5893
6371
  # }
5894
6372
  #
5895
6373
  # @!attribute [rw] node_group_id
@@ -5920,6 +6398,14 @@ module Aws::ElastiCache
5920
6398
  # `ReplicaCount` or `ReplicasPerNodeGroup` if not specified.
5921
6399
  # @return [Array<String>]
5922
6400
  #
6401
+ # @!attribute [rw] primary_outpost_arn
6402
+ # The output ARN of the primary node.
6403
+ # @return [String]
6404
+ #
6405
+ # @!attribute [rw] replica_outpost_arns
6406
+ # The outpost ARN of the node replicas.
6407
+ # @return [Array<String>]
6408
+ #
5923
6409
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/NodeGroupConfiguration AWS API Documentation
5924
6410
  #
5925
6411
  class NodeGroupConfiguration < Struct.new(
@@ -5927,7 +6413,9 @@ module Aws::ElastiCache
5927
6413
  :slots,
5928
6414
  :replica_count,
5929
6415
  :primary_availability_zone,
5930
- :replica_availability_zones)
6416
+ :replica_availability_zones,
6417
+ :primary_outpost_arn,
6418
+ :replica_outpost_arns)
5931
6419
  SENSITIVE = []
5932
6420
  include Aws::Structure
5933
6421
  end
@@ -5953,6 +6441,10 @@ module Aws::ElastiCache
5953
6441
  # The name of the Availability Zone in which the node is located.
5954
6442
  # @return [String]
5955
6443
  #
6444
+ # @!attribute [rw] preferred_outpost_arn
6445
+ # The outpost ARN of the node group member.
6446
+ # @return [String]
6447
+ #
5956
6448
  # @!attribute [rw] current_role
5957
6449
  # The role that is currently assigned to the node - `primary` or
5958
6450
  # `replica`. This member is only applicable for Redis (cluster mode
@@ -5966,6 +6458,7 @@ module Aws::ElastiCache
5966
6458
  :cache_node_id,
5967
6459
  :read_endpoint,
5968
6460
  :preferred_availability_zone,
6461
+ :preferred_outpost_arn,
5969
6462
  :current_role)
5970
6463
  SENSITIVE = []
5971
6464
  include Aws::Structure
@@ -6689,6 +7182,10 @@ module Aws::ElastiCache
6689
7182
  # Default: `false`
6690
7183
  # @return [Boolean]
6691
7184
  #
7185
+ # @!attribute [rw] member_clusters_outpost_arns
7186
+ # The outpost ARNs of the replication group's member clusters.
7187
+ # @return [Array<String>]
7188
+ #
6692
7189
  # @!attribute [rw] kms_key_id
6693
7190
  # The ID of the KMS key used to encrypt the disk in the cluster.
6694
7191
  # @return [String]
@@ -6697,6 +7194,11 @@ module Aws::ElastiCache
6697
7194
  # The ARN (Amazon Resource Name) of the replication group.
6698
7195
  # @return [String]
6699
7196
  #
7197
+ # @!attribute [rw] user_group_ids
7198
+ # The list of user group IDs that have access to the replication
7199
+ # group.
7200
+ # @return [Array<String>]
7201
+ #
6700
7202
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ReplicationGroup AWS API Documentation
6701
7203
  #
6702
7204
  class ReplicationGroup < Struct.new(
@@ -6719,8 +7221,10 @@ module Aws::ElastiCache
6719
7221
  :auth_token_last_modified_date,
6720
7222
  :transit_encryption_enabled,
6721
7223
  :at_rest_encryption_enabled,
7224
+ :member_clusters_outpost_arns,
6722
7225
  :kms_key_id,
6723
- :arn)
7226
+ :arn,
7227
+ :user_group_ids)
6724
7228
  SENSITIVE = []
6725
7229
  include Aws::Structure
6726
7230
  end
@@ -6791,13 +7295,18 @@ module Aws::ElastiCache
6791
7295
  # The auth token status
6792
7296
  # @return [String]
6793
7297
  #
7298
+ # @!attribute [rw] user_groups
7299
+ # The user groups being modified.
7300
+ # @return [Types::UserGroupsUpdateStatus]
7301
+ #
6794
7302
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ReplicationGroupPendingModifiedValues AWS API Documentation
6795
7303
  #
6796
7304
  class ReplicationGroupPendingModifiedValues < Struct.new(
6797
7305
  :primary_cluster_id,
6798
7306
  :automatic_failover_status,
6799
7307
  :resharding,
6800
- :auth_token_status)
7308
+ :auth_token_status,
7309
+ :user_groups)
6801
7310
  SENSITIVE = []
6802
7311
  include Aws::Structure
6803
7312
  end
@@ -7556,6 +8065,10 @@ module Aws::ElastiCache
7556
8065
  # located.
7557
8066
  # @return [String]
7558
8067
  #
8068
+ # @!attribute [rw] preferred_outpost_arn
8069
+ # The ARN (Amazon Resource Name) of the preferred outpost.
8070
+ # @return [String]
8071
+ #
7559
8072
  # @!attribute [rw] cache_cluster_create_time
7560
8073
  # The date and time when the source cluster was created.
7561
8074
  # @return [Time]
@@ -7669,6 +8182,7 @@ module Aws::ElastiCache
7669
8182
  :engine_version,
7670
8183
  :num_cache_nodes,
7671
8184
  :preferred_availability_zone,
8185
+ :preferred_outpost_arn,
7672
8186
  :cache_cluster_create_time,
7673
8187
  :preferred_maintenance_window,
7674
8188
  :topic_arn,
@@ -7777,11 +8291,16 @@ module Aws::ElastiCache
7777
8291
  # The Availability Zone associated with the subnet.
7778
8292
  # @return [Types::AvailabilityZone]
7779
8293
  #
8294
+ # @!attribute [rw] subnet_outpost
8295
+ # The outpost ARN of the subnet.
8296
+ # @return [Types::SubnetOutpost]
8297
+ #
7780
8298
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/Subnet AWS API Documentation
7781
8299
  #
7782
8300
  class Subnet < Struct.new(
7783
8301
  :subnet_identifier,
7784
- :subnet_availability_zone)
8302
+ :subnet_availability_zone,
8303
+ :subnet_outpost)
7785
8304
  SENSITIVE = []
7786
8305
  include Aws::Structure
7787
8306
  end
@@ -7792,6 +8311,29 @@ module Aws::ElastiCache
7792
8311
  #
7793
8312
  class SubnetInUse < Aws::EmptyStructure; end
7794
8313
 
8314
+ # At least one subnet ID does not match the other subnet IDs. This
8315
+ # mismatch typically occurs when a user sets one subnet ID to a regional
8316
+ # Availability Zone and a different one to an outpost. Or when a user
8317
+ # sets the subnet ID to an Outpost when not subscribed on this service.
8318
+ #
8319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/SubnetNotAllowedFault AWS API Documentation
8320
+ #
8321
+ class SubnetNotAllowedFault < Aws::EmptyStructure; end
8322
+
8323
+ # The ID of the outpost subnet.
8324
+ #
8325
+ # @!attribute [rw] subnet_outpost_arn
8326
+ # The outpost ARN of the subnet.
8327
+ # @return [String]
8328
+ #
8329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/SubnetOutpost AWS API Documentation
8330
+ #
8331
+ class SubnetOutpost < Struct.new(
8332
+ :subnet_outpost_arn)
8333
+ SENSITIVE = []
8334
+ include Aws::Structure
8335
+ end
8336
+
7795
8337
  # A cost allocation Tag that can be added to an ElastiCache cluster or
7796
8338
  # replication group. Tags are composed of a Key/Value pair. A tag with a
7797
8339
  # null Value is permitted.
@@ -8104,5 +8646,170 @@ module Aws::ElastiCache
8104
8646
  include Aws::Structure
8105
8647
  end
8106
8648
 
8649
+ # @!attribute [rw] user_id
8650
+ # The ID of the user.
8651
+ # @return [String]
8652
+ #
8653
+ # @!attribute [rw] user_name
8654
+ # The username of the user.
8655
+ # @return [String]
8656
+ #
8657
+ # @!attribute [rw] status
8658
+ # Indicates the user status. Can be "active", "modifying" or
8659
+ # "deleting".
8660
+ # @return [String]
8661
+ #
8662
+ # @!attribute [rw] engine
8663
+ # Must be Redis.
8664
+ # @return [String]
8665
+ #
8666
+ # @!attribute [rw] access_string
8667
+ # Access permissions string used for this user account.
8668
+ # @return [String]
8669
+ #
8670
+ # @!attribute [rw] user_group_ids
8671
+ # Returns a list of the user group IDs the user belongs to.
8672
+ # @return [Array<String>]
8673
+ #
8674
+ # @!attribute [rw] authentication
8675
+ # Denotes whether the user requires a password to authenticate.
8676
+ # @return [Types::Authentication]
8677
+ #
8678
+ # @!attribute [rw] arn
8679
+ # The Amazon Resource Name (ARN) of the user account.
8680
+ # @return [String]
8681
+ #
8682
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/User AWS API Documentation
8683
+ #
8684
+ class User < Struct.new(
8685
+ :user_id,
8686
+ :user_name,
8687
+ :status,
8688
+ :engine,
8689
+ :access_string,
8690
+ :user_group_ids,
8691
+ :authentication,
8692
+ :arn)
8693
+ SENSITIVE = []
8694
+ include Aws::Structure
8695
+ end
8696
+
8697
+ # A user with this ID already exists.
8698
+ #
8699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserAlreadyExistsFault AWS API Documentation
8700
+ #
8701
+ class UserAlreadyExistsFault < Aws::EmptyStructure; end
8702
+
8703
+ # @!attribute [rw] user_group_id
8704
+ # The ID of the user group.
8705
+ # @return [String]
8706
+ #
8707
+ # @!attribute [rw] status
8708
+ # Indicates user group status. Can be "creating", "active",
8709
+ # "modifying", "deleting".
8710
+ # @return [String]
8711
+ #
8712
+ # @!attribute [rw] engine
8713
+ # Must be Redis.
8714
+ # @return [String]
8715
+ #
8716
+ # @!attribute [rw] user_ids
8717
+ # The list of user IDs that belong to the user group.
8718
+ # @return [Array<String>]
8719
+ #
8720
+ # @!attribute [rw] pending_changes
8721
+ # A list of updates being applied to the user groups.
8722
+ # @return [Types::UserGroupPendingChanges]
8723
+ #
8724
+ # @!attribute [rw] replication_groups
8725
+ # A list of replication groups that the user group can access.
8726
+ # @return [Array<String>]
8727
+ #
8728
+ # @!attribute [rw] arn
8729
+ # The Amazon Resource Name (ARN) of the user group.
8730
+ # @return [String]
8731
+ #
8732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroup AWS API Documentation
8733
+ #
8734
+ class UserGroup < Struct.new(
8735
+ :user_group_id,
8736
+ :status,
8737
+ :engine,
8738
+ :user_ids,
8739
+ :pending_changes,
8740
+ :replication_groups,
8741
+ :arn)
8742
+ SENSITIVE = []
8743
+ include Aws::Structure
8744
+ end
8745
+
8746
+ # The user group with this ID already exists.
8747
+ #
8748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupAlreadyExistsFault AWS API Documentation
8749
+ #
8750
+ class UserGroupAlreadyExistsFault < Aws::EmptyStructure; end
8751
+
8752
+ # The user group was not found or does not exist
8753
+ #
8754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupNotFoundFault AWS API Documentation
8755
+ #
8756
+ class UserGroupNotFoundFault < Aws::EmptyStructure; end
8757
+
8758
+ # Returns the updates being applied to the user group.
8759
+ #
8760
+ # @!attribute [rw] user_ids_to_remove
8761
+ # The list of user group IDs ro remove.
8762
+ # @return [Array<String>]
8763
+ #
8764
+ # @!attribute [rw] user_ids_to_add
8765
+ # The list of user IDs to add.
8766
+ # @return [Array<String>]
8767
+ #
8768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupPendingChanges AWS API Documentation
8769
+ #
8770
+ class UserGroupPendingChanges < Struct.new(
8771
+ :user_ids_to_remove,
8772
+ :user_ids_to_add)
8773
+ SENSITIVE = []
8774
+ include Aws::Structure
8775
+ end
8776
+
8777
+ # The number of users exceeds the user group limit.
8778
+ #
8779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupQuotaExceededFault AWS API Documentation
8780
+ #
8781
+ class UserGroupQuotaExceededFault < Aws::EmptyStructure; end
8782
+
8783
+ # The status of the user group update.
8784
+ #
8785
+ # @!attribute [rw] user_group_ids_to_add
8786
+ # The list of user group IDs to add.
8787
+ # @return [Array<String>]
8788
+ #
8789
+ # @!attribute [rw] user_group_ids_to_remove
8790
+ # The list of user group IDs to remove.
8791
+ # @return [Array<String>]
8792
+ #
8793
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserGroupsUpdateStatus AWS API Documentation
8794
+ #
8795
+ class UserGroupsUpdateStatus < Struct.new(
8796
+ :user_group_ids_to_add,
8797
+ :user_group_ids_to_remove)
8798
+ SENSITIVE = []
8799
+ include Aws::Structure
8800
+ end
8801
+
8802
+ # The user does not exist or could not be found.
8803
+ #
8804
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserNotFoundFault AWS API Documentation
8805
+ #
8806
+ class UserNotFoundFault < Aws::EmptyStructure; end
8807
+
8808
+ # The quota of users has been exceeded.
8809
+ #
8810
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/UserQuotaExceededFault AWS API Documentation
8811
+ #
8812
+ class UserQuotaExceededFault < Aws::EmptyStructure; end
8813
+
8107
8814
  end
8108
8815
  end