google-cloud-redis-cluster-v1 1.7.0 → 1.9.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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/redis/cluster/v1/bindings_override.rb +1 -1
  4. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/client.rb +1953 -339
  5. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/credentials.rb +1 -1
  6. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/operations.rb +1 -1
  7. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/paths.rb +85 -1
  8. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/rest/client.rb +1842 -333
  9. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/rest/operations.rb +1 -1
  10. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/rest/service_stub.rb +942 -23
  11. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster/rest.rb +1 -1
  12. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster.rb +1 -1
  13. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster_pb.rb +32 -1
  14. data/lib/google/cloud/redis/cluster/v1/cloud_redis_cluster_services_pb.rb +52 -1
  15. data/lib/google/cloud/redis/cluster/v1/rest.rb +1 -1
  16. data/lib/google/cloud/redis/cluster/v1/version.rb +1 -1
  17. data/lib/google/cloud/redis/cluster/v1.rb +1 -1
  18. data/lib/google-cloud-redis-cluster-v1.rb +1 -1
  19. data/proto_docs/google/api/client.rb +1 -1
  20. data/proto_docs/google/api/field_behavior.rb +1 -1
  21. data/proto_docs/google/api/field_info.rb +1 -1
  22. data/proto_docs/google/api/launch_stage.rb +1 -1
  23. data/proto_docs/google/api/resource.rb +1 -1
  24. data/proto_docs/google/cloud/redis/cluster/v1/cloud_redis_cluster.rb +596 -1
  25. data/proto_docs/google/longrunning/operations.rb +1 -1
  26. data/proto_docs/google/protobuf/any.rb +1 -1
  27. data/proto_docs/google/protobuf/duration.rb +1 -1
  28. data/proto_docs/google/protobuf/empty.rb +1 -1
  29. data/proto_docs/google/protobuf/field_mask.rb +1 -1
  30. data/proto_docs/google/protobuf/timestamp.rb +8 -7
  31. data/proto_docs/google/rpc/status.rb +1 -1
  32. data/proto_docs/google/type/dayofweek.rb +1 -1
  33. data/proto_docs/google/type/timeofday.rb +1 -1
  34. metadata +1 -1
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2023 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -49,6 +49,34 @@ module Google
49
49
  extend ::Google::Protobuf::MessageExts::ClassMethods
50
50
  end
51
51
 
52
+ # Request for `CreateAclPolicy`.
53
+ # @!attribute [rw] parent
54
+ # @return [::String]
55
+ # Required. The resource name of the cluster location using the form:
56
+ # `projects/{project_id}/locations/{location_id}`
57
+ # where `location_id` refers to a Google Cloud region.
58
+ # @!attribute [rw] acl_policy_id
59
+ # @return [::String]
60
+ # Required. The logical name of the ACL policy in the customer project
61
+ # with the following restrictions:
62
+ #
63
+ # * Must contain only lowercase letters, numbers, and hyphens.
64
+ # * Must start with a letter.
65
+ # * Must be between 1-63 characters.
66
+ # * Must end with a number or a letter.
67
+ # * Must be unique within the customer project / location
68
+ # @!attribute [rw] acl_policy
69
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicy]
70
+ # Required. The ACL policy that is to be created.
71
+ # @!attribute [rw] request_id
72
+ # @return [::String]
73
+ # Optional. Idempotent request UUID.
74
+ # .
75
+ class CreateAclPolicyRequest
76
+ include ::Google::Protobuf::MessageExts
77
+ extend ::Google::Protobuf::MessageExts::ClassMethods
78
+ end
79
+
52
80
  # Request for [ListClusters][CloudRedis.ListClusters].
53
81
  # @!attribute [rw] parent
54
82
  # @return [::String]
@@ -99,6 +127,86 @@ module Google
99
127
  extend ::Google::Protobuf::MessageExts::ClassMethods
100
128
  end
101
129
 
130
+ # Request for `ListAclPolicies`.
131
+ # @!attribute [rw] parent
132
+ # @return [::String]
133
+ # Required. The resource name of the ACL policy location using the form:
134
+ # `projects/{project_id}/locations/{location_id}`
135
+ # where `location_id` refers to a Google Cloud region.
136
+ # @!attribute [rw] page_size
137
+ # @return [::Integer]
138
+ # Optional. The maximum number of items to return.
139
+ #
140
+ # If not specified, a default value of 1000 will be used by the service.
141
+ # Regardless of the page_size value, the response may include a partial list
142
+ # and a caller should only rely on response's
143
+ # {::Google::Cloud::Redis::Cluster::V1::ListAclPoliciesResponse#next_page_token `next_page_token`}
144
+ # to determine if there are more ACL policies left to be queried.
145
+ #
146
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
147
+ # @!attribute [rw] page_token
148
+ # @return [::String]
149
+ # Optional. The `next_page_token` value returned from a previous
150
+ # `ListAclPolicies` request, if any.
151
+ class ListAclPoliciesRequest
152
+ include ::Google::Protobuf::MessageExts
153
+ extend ::Google::Protobuf::MessageExts::ClassMethods
154
+ end
155
+
156
+ # Response for `ListAclPolicies`.
157
+ # @!attribute [rw] acl_policies
158
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AclPolicy>]
159
+ # A list of ACL policies in the project in the specified location,
160
+ # or across all locations.
161
+ #
162
+ # If the `location_id` in the parent field of the request is "-", all regions
163
+ # available to the project are queried, and the results aggregated.
164
+ # @!attribute [rw] next_page_token
165
+ # @return [::String]
166
+ # Token to retrieve the next page of results, or empty if there are no more
167
+ # results in the list.
168
+ # @!attribute [rw] unreachable
169
+ # @return [::Array<::String>]
170
+ # Unordered list. Locations that could not be reached.
171
+ class ListAclPoliciesResponse
172
+ include ::Google::Protobuf::MessageExts
173
+ extend ::Google::Protobuf::MessageExts::ClassMethods
174
+ end
175
+
176
+ # Request for `ListAclPolicyRevisions`.
177
+ # @!attribute [rw] parent
178
+ # @return [::String]
179
+ # Required. The name of the ACL policy to list revisions for.
180
+ # Format:
181
+ # "projects/\\{project_id}/locations/\\{location_id}/aclPolicies/\\{acl_policy_id}"
182
+ # @!attribute [rw] page_size
183
+ # @return [::Integer]
184
+ # Optional. The maximum number of items to return.
185
+ # @!attribute [rw] page_token
186
+ # @return [::String]
187
+ # Optional. The `next_page_token` value returned from a previous
188
+ # `ListAclPolicyRevisions` request, if any.
189
+ class ListAclPolicyRevisionsRequest
190
+ include ::Google::Protobuf::MessageExts
191
+ extend ::Google::Protobuf::MessageExts::ClassMethods
192
+ end
193
+
194
+ # Response for `ListAclPolicyRevisions`.
195
+ # @!attribute [rw] acl_policy_revisions
196
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AclPolicyRevision>]
197
+ # A list of ACL policy revisions.
198
+ # @!attribute [rw] next_page_token
199
+ # @return [::String]
200
+ # Token to retrieve the next page of results, or empty if there are no more
201
+ # results in the list.
202
+ # @!attribute [rw] unreachable
203
+ # @return [::Array<::String>]
204
+ # Unordered list. Locations that could not be reached.
205
+ class ListAclPolicyRevisionsResponse
206
+ include ::Google::Protobuf::MessageExts
207
+ extend ::Google::Protobuf::MessageExts::ClassMethods
208
+ end
209
+
102
210
  # Request for [UpdateCluster][CloudRedis.UpdateCluster].
103
211
  # @!attribute [rw] update_mask
104
212
  # @return [::Google::Protobuf::FieldMask]
@@ -120,6 +228,25 @@ module Google
120
228
  extend ::Google::Protobuf::MessageExts::ClassMethods
121
229
  end
122
230
 
231
+ # Request for `UpdateAclPolicy`.
232
+ # @!attribute [rw] acl_policy
233
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicy]
234
+ # Required. The ACL policy to be updated.
235
+ # @!attribute [rw] update_mask
236
+ # @return [::Google::Protobuf::FieldMask]
237
+ # Optional. Mask of fields to be updated. At least one path must be supplied
238
+ # in this field. The elements of the repeated paths field may only include
239
+ # these fields from `AclPolicy`:
240
+ #
241
+ # * `rules`
242
+ # @!attribute [rw] request_id
243
+ # @return [::String]
244
+ # Optional. Idempotent request UUID.
245
+ class UpdateAclPolicyRequest
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
123
250
  # Request for [GetCluster][CloudRedis.GetCluster].
124
251
  # @!attribute [rw] name
125
252
  # @return [::String]
@@ -131,6 +258,28 @@ module Google
131
258
  extend ::Google::Protobuf::MessageExts::ClassMethods
132
259
  end
133
260
 
261
+ # Request for `GetAclPolicy`.
262
+ # @!attribute [rw] name
263
+ # @return [::String]
264
+ # Required. Redis ACL policy resource name using the form:
265
+ # `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}`
266
+ # where `location_id` refers to a Google Cloud region.
267
+ class GetAclPolicyRequest
268
+ include ::Google::Protobuf::MessageExts
269
+ extend ::Google::Protobuf::MessageExts::ClassMethods
270
+ end
271
+
272
+ # Request for `GetAclPolicyRevision`.
273
+ # @!attribute [rw] name
274
+ # @return [::String]
275
+ # Required. Redis ACL policy revision resource name using the form:
276
+ # `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}/revisions/{revision_id}`
277
+ # where `location_id` refers to a Google Cloud region.
278
+ class GetAclPolicyRevisionRequest
279
+ include ::Google::Protobuf::MessageExts
280
+ extend ::Google::Protobuf::MessageExts::ClassMethods
281
+ end
282
+
134
283
  # Request for [DeleteCluster][CloudRedis.DeleteCluster].
135
284
  # @!attribute [rw] name
136
285
  # @return [::String]
@@ -145,6 +294,24 @@ module Google
145
294
  extend ::Google::Protobuf::MessageExts::ClassMethods
146
295
  end
147
296
 
297
+ # Request for `DeleteAclPolicy`.
298
+ # @!attribute [rw] name
299
+ # @return [::String]
300
+ # Required. Redis ACL policy resource name using the form:
301
+ # `projects/{project_id}/locations/{location_id}/aclPolicies/{acl_policy_id}`
302
+ # where `location_id` refers to a Google Cloud region.
303
+ # @!attribute [rw] request_id
304
+ # @return [::String]
305
+ # Optional. Idempotent request UUID.
306
+ # @!attribute [rw] etag
307
+ # @return [::String]
308
+ # Optional. Etag of the ACL policy. If this is different from the server's
309
+ # etag, the request will fail with an ABORTED error.
310
+ class DeleteAclPolicyRequest
311
+ include ::Google::Protobuf::MessageExts
312
+ extend ::Google::Protobuf::MessageExts::ClassMethods
313
+ end
314
+
148
315
  # Request for
149
316
  # [GetClusterCertificateAuthorityRequest][CloudRedis.GetClusterCertificateAuthorityRequest].
150
317
  # @!attribute [rw] name
@@ -312,6 +479,190 @@ module Google
312
479
  extend ::Google::Protobuf::MessageExts::ClassMethods
313
480
  end
314
481
 
482
+ # Request message for [ListTokenAuthUsers][].
483
+ # @!attribute [rw] parent
484
+ # @return [::String]
485
+ # Required. The parent resource that this token based auth user will be
486
+ # listed for. Format:
487
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}
488
+ # @!attribute [rw] page_size
489
+ # @return [::Integer]
490
+ # Optional. The maximum number of items to return.
491
+ #
492
+ # If not specified, a default value of 1000 will be used by the service.
493
+ # Regardless of the page_size value, the response may include a partial list
494
+ # and a caller should only rely on response's
495
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
496
+ # {::Google::Cloud::Redis::Cluster::V1::ListTokenAuthUsersResponse#next_page_token `next_page_token`}
497
+ # to determine if there are more clusters left to be queried.
498
+ # @!attribute [rw] page_token
499
+ # @return [::String]
500
+ # Optional. The `next_page_token` value returned from a previous
501
+ # [ListTokenAuthUsers] request, if any.
502
+ # @!attribute [rw] filter
503
+ # @return [::String]
504
+ # Optional. Expression for filtering results.
505
+ # @!attribute [rw] order_by
506
+ # @return [::String]
507
+ # Optional. Sort results by a defined order.
508
+ class ListTokenAuthUsersRequest
509
+ include ::Google::Protobuf::MessageExts
510
+ extend ::Google::Protobuf::MessageExts::ClassMethods
511
+ end
512
+
513
+ # Response message for [ListTokenAuthUsers][].
514
+ # @!attribute [rw] token_auth_users
515
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::TokenAuthUser>]
516
+ # A list of token auth users in the project.
517
+ # @!attribute [rw] next_page_token
518
+ # @return [::String]
519
+ # Token to retrieve the next page of results, or empty if there are no more
520
+ # results in the list.
521
+ # @!attribute [rw] unreachable
522
+ # @return [::Array<::String>]
523
+ # Unordered list. Token auth users that could not be reached.
524
+ class ListTokenAuthUsersResponse
525
+ include ::Google::Protobuf::MessageExts
526
+ extend ::Google::Protobuf::MessageExts::ClassMethods
527
+ end
528
+
529
+ # Request message for [GetTokenAuthUser][].
530
+ # @!attribute [rw] name
531
+ # @return [::String]
532
+ # Required. The name of token auth user for a token based auth enabled
533
+ # cluster. Format:
534
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}
535
+ class GetTokenAuthUserRequest
536
+ include ::Google::Protobuf::MessageExts
537
+ extend ::Google::Protobuf::MessageExts::ClassMethods
538
+ end
539
+
540
+ # Request message for [ListAuthTokens][].
541
+ # @!attribute [rw] parent
542
+ # @return [::String]
543
+ # Required. The parent resource that this auth token will be listed for.
544
+ # Format:
545
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}
546
+ # @!attribute [rw] page_size
547
+ # @return [::Integer]
548
+ # Optional. The maximum number of items to return. The maximum value is 1000;
549
+ # values above 1000 will be coerced to 1000. If not specified, a default
550
+ # value of 1000 will be used by the service. Regardless of the page_size
551
+ # value, the response may include a partial list and a caller should only
552
+ # rely on response's
553
+ # {::Google::Cloud::Redis::Cluster::V1::ListTokenAuthUsersResponse#next_page_token `next_page_token`}
554
+ # to determine if there are more clusters left to be queried.
555
+ # @!attribute [rw] page_token
556
+ # @return [::String]
557
+ # Optional. The `next_page_token` value returned from a previous
558
+ # [ListTokenAuthUsers] request, if any.
559
+ # @!attribute [rw] filter
560
+ # @return [::String]
561
+ # Optional. Expression for filtering results.
562
+ # @!attribute [rw] order_by
563
+ # @return [::String]
564
+ # Optional. Sort results by a defined order.
565
+ class ListAuthTokensRequest
566
+ include ::Google::Protobuf::MessageExts
567
+ extend ::Google::Protobuf::MessageExts::ClassMethods
568
+ end
569
+
570
+ # Response message for [ListAuthTokens][].
571
+ # @!attribute [rw] auth_tokens
572
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AuthToken>]
573
+ # A list of auth tokens in the project.
574
+ # @!attribute [rw] next_page_token
575
+ # @return [::String]
576
+ # Token to retrieve the next page of results, or empty if there are no more
577
+ # results in the list.
578
+ # @!attribute [rw] unreachable
579
+ # @return [::Array<::String>]
580
+ # Unordered list. Auth tokens that could not be reached.
581
+ class ListAuthTokensResponse
582
+ include ::Google::Protobuf::MessageExts
583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
584
+ end
585
+
586
+ # Request message for [GetAuthToken][].
587
+ # @!attribute [rw] name
588
+ # @return [::String]
589
+ # Required. The name of auth token for a token based auth enabled cluster.
590
+ # Format:
591
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}/authTokens/\\{auth_token}
592
+ class GetAuthTokenRequest
593
+ include ::Google::Protobuf::MessageExts
594
+ extend ::Google::Protobuf::MessageExts::ClassMethods
595
+ end
596
+
597
+ # Request message for [AddTokenAuthUser][].
598
+ # @!attribute [rw] cluster
599
+ # @return [::String]
600
+ # Required. The cluster resource that this token auth user will be added for.
601
+ # Format: projects/\\{project}/locations/\\{location}/clusters/\\{cluster}
602
+ # @!attribute [rw] token_auth_user
603
+ # @return [::String]
604
+ # Required. The id of the token auth user to add.
605
+ class AddTokenAuthUserRequest
606
+ include ::Google::Protobuf::MessageExts
607
+ extend ::Google::Protobuf::MessageExts::ClassMethods
608
+ end
609
+
610
+ # Request message for [DeleteTokenAuthUser][].
611
+ # @!attribute [rw] name
612
+ # @return [::String]
613
+ # Required. The name of the token auth user to delete.
614
+ # Format:
615
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}
616
+ # @!attribute [rw] request_id
617
+ # @return [::String]
618
+ # Optional. An optional request ID to identify requests. Specify a unique
619
+ # request ID so that if you must retry your request, the server will know to
620
+ # ignore the request if it has already been completed. The server will
621
+ # guarantee that for at least 60 minutes after the first request.
622
+ #
623
+ # For example, consider a situation where you make an initial request and the
624
+ # request times out. If you make the request again with the same request
625
+ # ID, the server can check if original operation with the same request ID
626
+ # was received, and if so, will ignore the second request. This prevents
627
+ # clients from accidentally creating duplicate commitments.
628
+ #
629
+ # The request ID must be a valid UUID with the exception that zero UUID is
630
+ # not supported (00000000-0000-0000-0000-000000000000).
631
+ # @!attribute [rw] force
632
+ # @return [::Boolean]
633
+ # Optional. If set to true, any child auth tokens of this user will also be
634
+ # deleted. Otherwise, the request will only work if the user has no auth
635
+ # tokens.
636
+ class DeleteTokenAuthUserRequest
637
+ include ::Google::Protobuf::MessageExts
638
+ extend ::Google::Protobuf::MessageExts::ClassMethods
639
+ end
640
+
641
+ # Request message for [AddAuthToken][].
642
+ # @!attribute [rw] token_auth_user
643
+ # @return [::String]
644
+ # Required. The name of the token auth user resource that this auth token
645
+ # will be added for. Format:
646
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}
647
+ # @!attribute [rw] auth_token
648
+ # @return [::Google::Cloud::Redis::Cluster::V1::AuthToken]
649
+ # Required. The auth token to add.
650
+ class AddAuthTokenRequest
651
+ include ::Google::Protobuf::MessageExts
652
+ extend ::Google::Protobuf::MessageExts::ClassMethods
653
+ end
654
+
655
+ # Request message for [DeleteAuthToken][].
656
+ # @!attribute [rw] name
657
+ # @return [::String]
658
+ # Required. The name of the token auth user resource that this auth token
659
+ # will be deleted from. Format:
660
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}/authTokens/\\{auth_token}
661
+ class DeleteAuthTokenRequest
662
+ include ::Google::Protobuf::MessageExts
663
+ extend ::Google::Protobuf::MessageExts::ClassMethods
664
+ end
665
+
315
666
  # A cluster instance.
316
667
  # @!attribute [rw] gcs_source
317
668
  # @return [::Google::Cloud::Redis::Cluster::V1::Cluster::GcsBackupSource]
@@ -426,6 +777,12 @@ module Google
426
777
  # @!attribute [r] encryption_info
427
778
  # @return [::Google::Cloud::Redis::Cluster::V1::EncryptionInfo]
428
779
  # Output only. Encryption information of the data at rest of the cluster.
780
+ # @!attribute [rw] async_cluster_endpoints_deletion_enabled
781
+ # @return [::Boolean]
782
+ # Optional. If true, cluster endpoints that are created and registered by
783
+ # customers can be deleted asynchronously. That is, such a cluster endpoint
784
+ # can be de-registered before the forwarding rules in the cluster endpoint
785
+ # are deleted.
429
786
  # @!attribute [rw] server_ca_mode
430
787
  # @return [::Google::Cloud::Redis::Cluster::V1::ServerCaMode]
431
788
  # Optional. Server CA mode for the cluster.
@@ -437,6 +794,12 @@ module Google
437
794
  # @!attribute [rw] rotate_server_certificate
438
795
  # @return [::Boolean]
439
796
  # Optional. Input only. Rotate the server certificates.
797
+ # @!attribute [rw] acl_policy
798
+ # @return [::String]
799
+ # Optional. The ACL policy to be applied to the cluster.
800
+ # @!attribute [r] acl_policy_info
801
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicyInfo]
802
+ # Output only. Details of the applied ACL policy.
440
803
  class Cluster
441
804
  include ::Google::Protobuf::MessageExts
442
805
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -515,6 +878,165 @@ module Google
515
878
  end
516
879
  end
517
880
 
881
+ # Details of the applied ACL policy.
882
+ # @!attribute [r] applied_acl_policy
883
+ # @return [::String]
884
+ # Output only. The resource name of the applied ACL policy.
885
+ # Format: "projects/\\{project}/locations/\\{location}/aclPolicies/\\{acl_policy}"
886
+ # @!attribute [r] applied_acl_policy_revision
887
+ # @return [::String]
888
+ # Output only. The resource name of the applied ACL policy revision.
889
+ # Format:
890
+ # "projects/\\{project}/locations/\\{location}/aclPolicies/\\{acl_policy}/revisions/\\{revision}"
891
+ # @!attribute [r] applied_acl_policy_revision_number
892
+ # @return [::Integer]
893
+ # Output only. The revision number of the applied ACL policy revision.
894
+ # @!attribute [r] acl_policy_revision_statuses
895
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AclPolicyRevisionStatus>]
896
+ # Output only. A list of status for various revisions of this ACL policy on
897
+ # the cluster.
898
+ class AclPolicyInfo
899
+ include ::Google::Protobuf::MessageExts
900
+ extend ::Google::Protobuf::MessageExts::ClassMethods
901
+ end
902
+
903
+ # The ACL policy resource.
904
+ # @!attribute [rw] name
905
+ # @return [::String]
906
+ # Identifier. Full resource path of the ACL policy.
907
+ # @!attribute [rw] rules
908
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AclRule>]
909
+ # Required. The ACL rules within the ACL policy.
910
+ # @!attribute [r] state
911
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicy::State]
912
+ # Output only. The state of the ACL policy.
913
+ # @!attribute [r] etag
914
+ # @return [::String]
915
+ # Output only. Etag for the ACL policy.
916
+ # @!attribute [r] cluster_acl_policy_attachments
917
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::ClusterAclPolicyAttachment>]
918
+ # Output only. The ACL policy attachment status for each attached cluster.
919
+ # @!attribute [r] create_time
920
+ # @return [::Google::Protobuf::Timestamp]
921
+ # Output only. The timestamp that the ACL policy was created.
922
+ # @!attribute [r] update_time
923
+ # @return [::Google::Protobuf::Timestamp]
924
+ # Output only. The timestamp that the ACL policy was last updated.
925
+ class AclPolicy
926
+ include ::Google::Protobuf::MessageExts
927
+ extend ::Google::Protobuf::MessageExts::ClassMethods
928
+
929
+ # Represents the different states of an ACL policy.
930
+ module State
931
+ # Not set.
932
+ STATE_UNSPECIFIED = 0
933
+
934
+ # ACL policy has been created and is fully usable. Since ACL policy
935
+ # creation is synchronous and not an LRO, there is no CREATING state.
936
+ ACTIVE = 1
937
+
938
+ # ACL policy is being updated.
939
+ UPDATING = 2
940
+
941
+ # ACL policy is being deleted.
942
+ DELETING = 3
943
+ end
944
+ end
945
+
946
+ # AclPolicyRevisionStatus stores the per-revision status for an attached
947
+ # cluster.
948
+ # @!attribute [r] acl_policy_revision
949
+ # @return [::String]
950
+ # Output only. The resource name of the ACL policy revision this status
951
+ # refers to. Format:
952
+ # "projects/\\{project}/locations/\\{location}/aclPolicies/\\{acl_policy}/revisions/\\{revision}"
953
+ # @!attribute [r] acl_policy_revision_number
954
+ # @return [::Integer]
955
+ # Output only. The revision number of the ACL policy revision this status
956
+ # refers to.
957
+ # @!attribute [r] state
958
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicyRevisionStatus::State]
959
+ # Output only. AclPolicyRevision state.
960
+ # @!attribute [r] error_message
961
+ # @return [::String]
962
+ # Output only. Human-readable error message providing more details for FAILED
963
+ # states.
964
+ class AclPolicyRevisionStatus
965
+ include ::Google::Protobuf::MessageExts
966
+ extend ::Google::Protobuf::MessageExts::ClassMethods
967
+
968
+ # Enum indicating the status of this ACL policy revision on the cluster.
969
+ module State
970
+ # Not set.
971
+ STATE_UNSPECIFIED = 0
972
+
973
+ # The cluster is attempting to apply this revision.
974
+ APPLYING = 1
975
+
976
+ # The cluster has successfully applied this revision.
977
+ APPLIED = 2
978
+
979
+ # The cluster failed to apply this revision.
980
+ FAILED = 3
981
+ end
982
+ end
983
+
984
+ # ClusterAclPolicyAttachment stores the ACL policy status for an attached
985
+ # cluster for the revisions successfully applied, under application or failed.
986
+ # @!attribute [r] cluster
987
+ # @return [::String]
988
+ # Output only. The resource name of the attached Cluster.
989
+ # Format:
990
+ # "projects/\\{project}/locations/\\{location}/clusters/\\{cluster}"
991
+ # @!attribute [r] acl_policy_revision_statuses
992
+ # @return [::Array<::Google::Cloud::Redis::Cluster::V1::AclPolicyRevisionStatus>]
993
+ # Output only. A list of status for various revisions of this ACL policy on
994
+ # the cluster.
995
+ class ClusterAclPolicyAttachment
996
+ include ::Google::Protobuf::MessageExts
997
+ extend ::Google::Protobuf::MessageExts::ClassMethods
998
+ end
999
+
1000
+ # The ACL policy revision resource.
1001
+ # @!attribute [rw] name
1002
+ # @return [::String]
1003
+ # Identifier. The name of the ACL policy revision.
1004
+ # Format:
1005
+ # "projects/\\{project}/locations/\\{location}/aclPolicies/\\{acl_policy}/revisions/\\{revision}"
1006
+ # @!attribute [r] revision_number
1007
+ # @return [::Integer]
1008
+ # Output only. The revision number of the ACL policy revision.
1009
+ # @!attribute [r] snapshot
1010
+ # @return [::Google::Cloud::Redis::Cluster::V1::AclPolicy]
1011
+ # Output only. The snapshot of the ACL policy at the time of revision
1012
+ # creation.
1013
+ # @!attribute [r] create_time
1014
+ # @return [::Google::Protobuf::Timestamp]
1015
+ # Output only. The timestamp that the revision was created.
1016
+ # @!attribute [r] attached_clusters
1017
+ # @return [::Array<::String>]
1018
+ # Output only. A list of clusters that are attached to this ACL policy
1019
+ # revision.
1020
+ class AclPolicyRevision
1021
+ include ::Google::Protobuf::MessageExts
1022
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1023
+ end
1024
+
1025
+ # A single ACL rule which defines the policy for a user.
1026
+ # @!attribute [rw] username
1027
+ # @return [::String]
1028
+ # Required. Specifies the IAM user or service account to be added to the ACL
1029
+ # policy. This username will be directly set on the Redis OSS.
1030
+ # @!attribute [rw] rule
1031
+ # @return [::String]
1032
+ # Required. The rule to be applied to the username. Ex: "on >password123 ~*
1033
+ # +@all" The format of the rule is defined by Redis OSS:
1034
+ # https://redis.io/docs/latest/operate/oss_and_stack/management/security/acl/
1035
+ class AclRule
1036
+ include ::Google::Protobuf::MessageExts
1037
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1038
+ end
1039
+
518
1040
  # The automated backup config for a cluster.
519
1041
  # @!attribute [rw] fixed_frequency_schedule
520
1042
  # @return [::Google::Cloud::Redis::Cluster::V1::AutomatedBackupConfig::FixedFrequencySchedule]
@@ -1037,6 +1559,76 @@ module Google
1037
1559
  extend ::Google::Protobuf::MessageExts::ClassMethods
1038
1560
  end
1039
1561
 
1562
+ # Represents a token based auth user for the cluster.
1563
+ # @!attribute [rw] name
1564
+ # @return [::String]
1565
+ # Identifier. The resource name of the token based auth user.
1566
+ # Format:
1567
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}
1568
+ # @!attribute [r] state
1569
+ # @return [::Google::Cloud::Redis::Cluster::V1::TokenAuthUser::State]
1570
+ # Output only. The state of the token based auth user.
1571
+ class TokenAuthUser
1572
+ include ::Google::Protobuf::MessageExts
1573
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1574
+
1575
+ # Represents the different states of a token based auth user.
1576
+ # New values may be added in the future.
1577
+ module State
1578
+ # Not set.
1579
+ STATE_UNSPECIFIED = 0
1580
+
1581
+ # The auth user is active.
1582
+ ACTIVE = 1
1583
+
1584
+ # The auth user is being created.
1585
+ CREATING = 2
1586
+
1587
+ # The auth user is being updated.
1588
+ UPDATING = 3
1589
+
1590
+ # The auth user is being deleted.
1591
+ DELETING = 4
1592
+ end
1593
+ end
1594
+
1595
+ # Auth token for the cluster.
1596
+ # @!attribute [rw] name
1597
+ # @return [::String]
1598
+ # Identifier. Name of the auth token.
1599
+ # Format:
1600
+ # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/tokenAuthUsers/\\{token_auth_user}/authTokens/\\{auth_token}
1601
+ # @!attribute [r] token
1602
+ # @return [::String]
1603
+ # Output only. The service generated authentication token used to connect to
1604
+ # the Redis cluster.
1605
+ # @!attribute [r] create_time
1606
+ # @return [::Google::Protobuf::Timestamp]
1607
+ # Output only. Create time of the auth token.
1608
+ # @!attribute [r] state
1609
+ # @return [::Google::Cloud::Redis::Cluster::V1::AuthToken::State]
1610
+ # Output only. State of the auth token.
1611
+ class AuthToken
1612
+ include ::Google::Protobuf::MessageExts
1613
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1614
+
1615
+ # Represents the different states of an auth token.
1616
+ # New values may be added in the future.
1617
+ module State
1618
+ # Not set.
1619
+ STATE_UNSPECIFIED = 0
1620
+
1621
+ # The auth token is active.
1622
+ ACTIVE = 1
1623
+
1624
+ # The auth token is being created.
1625
+ CREATING = 2
1626
+
1627
+ # The auth token is being deleted.
1628
+ DELETING = 3
1629
+ end
1630
+ end
1631
+
1040
1632
  # Redis cluster certificate authority
1041
1633
  # @!attribute [rw] managed_server_ca
1042
1634
  # @return [::Google::Cloud::Redis::Cluster::V1::CertificateAuthority::ManagedCertificateAuthority]
@@ -1304,6 +1896,9 @@ module Google
1304
1896
 
1305
1897
  # Authorization disabled mode
1306
1898
  AUTH_MODE_DISABLED = 2
1899
+
1900
+ # Token based authorization mode
1901
+ AUTH_MODE_TOKEN_AUTH = 3
1307
1902
  end
1308
1903
 
1309
1904
  # NodeType of a redis cluster node,
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2023 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.