google-iam-v3 0.a → 0.1.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.
- checksums.yaml +4 -4
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +122 -0
- data/README.md +154 -8
- data/lib/google/iam/v3/operation_metadata_pb.rb +44 -0
- data/lib/google/iam/v3/policy_binding_resources_pb.rb +50 -0
- data/lib/google/iam/v3/policy_bindings/client.rb +1130 -0
- data/lib/google/iam/v3/policy_bindings/credentials.rb +45 -0
- data/lib/google/iam/v3/policy_bindings/operations.rb +811 -0
- data/lib/google/iam/v3/policy_bindings/paths.rb +140 -0
- data/lib/google/iam/v3/policy_bindings/rest/client.rb +1062 -0
- data/lib/google/iam/v3/policy_bindings/rest/operations.rb +926 -0
- data/lib/google/iam/v3/policy_bindings/rest/service_stub.rb +535 -0
- data/lib/google/iam/v3/policy_bindings/rest.rb +52 -0
- data/lib/google/iam/v3/policy_bindings.rb +55 -0
- data/lib/google/iam/v3/policy_bindings_service_pb.rb +59 -0
- data/lib/google/iam/v3/policy_bindings_service_services_pb.rb +63 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/client.rb +1083 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/credentials.rb +45 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/operations.rb +811 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/paths.rb +67 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/rest/client.rb +1015 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/rest/operations.rb +926 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/rest/service_stub.rb +447 -0
- data/lib/google/iam/v3/principal_access_boundary_policies/rest.rb +52 -0
- data/lib/google/iam/v3/principal_access_boundary_policies.rb +55 -0
- data/lib/google/iam/v3/principal_access_boundary_policies_service_pb.rb +61 -0
- data/lib/google/iam/v3/principal_access_boundary_policies_service_services_pb.rb +56 -0
- data/lib/google/iam/v3/principal_access_boundary_policy_resources_pb.rb +49 -0
- data/lib/google/iam/v3/rest.rb +36 -0
- data/lib/google/iam/v3/version.rb +7 -2
- data/lib/google/iam/v3.rb +44 -0
- data/lib/google-iam-v3.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +473 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/field_info.rb +88 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +227 -0
- data/proto_docs/google/iam/v3/operation_metadata.rb +55 -0
- data/proto_docs/google/iam/v3/policy_binding_resources.rb +171 -0
- data/proto_docs/google/iam/v3/policy_bindings_service.rb +232 -0
- data/proto_docs/google/iam/v3/principal_access_boundary_policies_service.rb +191 -0
- data/proto_docs/google/iam/v3/principal_access_boundary_policy_resources.rb +127 -0
- data/proto_docs/google/longrunning/operations.rb +173 -0
- data/proto_docs/google/protobuf/any.rb +145 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +34 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/timestamp.rb +127 -0
- data/proto_docs/google/rpc/status.rb +48 -0
- data/proto_docs/google/type/expr.rb +75 -0
- metadata +107 -10
@@ -0,0 +1,232 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Iam
|
22
|
+
module V3
|
23
|
+
# Request message for CreatePolicyBinding method.
|
24
|
+
# @!attribute [rw] parent
|
25
|
+
# @return [::String]
|
26
|
+
# Required. The parent resource where this policy binding will be created.
|
27
|
+
# The binding parent is the closest Resource Manager resource (project,
|
28
|
+
# folder or organization) to the binding target.
|
29
|
+
#
|
30
|
+
# Format:
|
31
|
+
#
|
32
|
+
# * `projects/{project_id}/locations/{location}`
|
33
|
+
# * `projects/{project_number}/locations/{location}`
|
34
|
+
# * `folders/{folder_id}/locations/{location}`
|
35
|
+
# * `organizations/{organization_id}/locations/{location}`
|
36
|
+
# @!attribute [rw] policy_binding_id
|
37
|
+
# @return [::String]
|
38
|
+
# Required. The ID to use for the policy binding, which will become the final
|
39
|
+
# component of the policy binding's resource name.
|
40
|
+
#
|
41
|
+
# This value must start with a lowercase letter followed by up to 62
|
42
|
+
# lowercase letters, numbers, hyphens, or dots. Pattern,
|
43
|
+
# /[a-z][a-z0-9-\.]\\{2,62}/.
|
44
|
+
# @!attribute [rw] policy_binding
|
45
|
+
# @return [::Google::Iam::V3::PolicyBinding]
|
46
|
+
# Required. The policy binding to create.
|
47
|
+
# @!attribute [rw] validate_only
|
48
|
+
# @return [::Boolean]
|
49
|
+
# Optional. If set, validate the request and preview the creation, but do not
|
50
|
+
# actually post it.
|
51
|
+
class CreatePolicyBindingRequest
|
52
|
+
include ::Google::Protobuf::MessageExts
|
53
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
54
|
+
end
|
55
|
+
|
56
|
+
# Request message for GetPolicyBinding method.
|
57
|
+
# @!attribute [rw] name
|
58
|
+
# @return [::String]
|
59
|
+
# Required. The name of the policy binding to retrieve.
|
60
|
+
#
|
61
|
+
# Format:
|
62
|
+
#
|
63
|
+
# * `projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
64
|
+
# * `projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}`
|
65
|
+
# * `folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
66
|
+
# * `organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
67
|
+
class GetPolicyBindingRequest
|
68
|
+
include ::Google::Protobuf::MessageExts
|
69
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
70
|
+
end
|
71
|
+
|
72
|
+
# Request message for UpdatePolicyBinding method.
|
73
|
+
# @!attribute [rw] policy_binding
|
74
|
+
# @return [::Google::Iam::V3::PolicyBinding]
|
75
|
+
# Required. The policy binding to update.
|
76
|
+
#
|
77
|
+
# The policy binding's `name` field is used to identify the policy binding to
|
78
|
+
# update.
|
79
|
+
# @!attribute [rw] validate_only
|
80
|
+
# @return [::Boolean]
|
81
|
+
# Optional. If set, validate the request and preview the update, but do not
|
82
|
+
# actually post it.
|
83
|
+
# @!attribute [rw] update_mask
|
84
|
+
# @return [::Google::Protobuf::FieldMask]
|
85
|
+
# Optional. The list of fields to update
|
86
|
+
class UpdatePolicyBindingRequest
|
87
|
+
include ::Google::Protobuf::MessageExts
|
88
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
89
|
+
end
|
90
|
+
|
91
|
+
# Request message for DeletePolicyBinding method.
|
92
|
+
# @!attribute [rw] name
|
93
|
+
# @return [::String]
|
94
|
+
# Required. The name of the policy binding to delete.
|
95
|
+
#
|
96
|
+
# Format:
|
97
|
+
#
|
98
|
+
# * `projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
99
|
+
# * `projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id}`
|
100
|
+
# * `folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
101
|
+
# * `organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}`
|
102
|
+
# @!attribute [rw] etag
|
103
|
+
# @return [::String]
|
104
|
+
# Optional. The etag of the policy binding.
|
105
|
+
# If this is provided, it must match the server's etag.
|
106
|
+
# @!attribute [rw] validate_only
|
107
|
+
# @return [::Boolean]
|
108
|
+
# Optional. If set, validate the request and preview the deletion, but do not
|
109
|
+
# actually post it.
|
110
|
+
class DeletePolicyBindingRequest
|
111
|
+
include ::Google::Protobuf::MessageExts
|
112
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
113
|
+
end
|
114
|
+
|
115
|
+
# Request message for ListPolicyBindings method.
|
116
|
+
# @!attribute [rw] parent
|
117
|
+
# @return [::String]
|
118
|
+
# Required. The parent resource, which owns the collection of policy
|
119
|
+
# bindings.
|
120
|
+
#
|
121
|
+
# Format:
|
122
|
+
#
|
123
|
+
# * `projects/{project_id}/locations/{location}`
|
124
|
+
# * `projects/{project_number}/locations/{location}`
|
125
|
+
# * `folders/{folder_id}/locations/{location}`
|
126
|
+
# * `organizations/{organization_id}/locations/{location}`
|
127
|
+
# @!attribute [rw] page_size
|
128
|
+
# @return [::Integer]
|
129
|
+
# Optional. The maximum number of policy bindings to return. The service may
|
130
|
+
# return fewer than this value.
|
131
|
+
#
|
132
|
+
# If unspecified, at most 50 policy bindings will be returned.
|
133
|
+
# The maximum value is 1000; values above 1000 will be coerced to 1000.
|
134
|
+
# @!attribute [rw] page_token
|
135
|
+
# @return [::String]
|
136
|
+
# Optional. A page token, received from a previous `ListPolicyBindings` call.
|
137
|
+
# Provide this to retrieve the subsequent page.
|
138
|
+
#
|
139
|
+
# When paginating, all other parameters provided to `ListPolicyBindings` must
|
140
|
+
# match the call that provided the page token.
|
141
|
+
# @!attribute [rw] filter
|
142
|
+
# @return [::String]
|
143
|
+
# Optional. An expression for filtering the results of the request. Filter
|
144
|
+
# rules are case insensitive. Some eligible fields for filtering are:
|
145
|
+
#
|
146
|
+
# + `target`
|
147
|
+
# + `policy`
|
148
|
+
#
|
149
|
+
# Some examples of filter queries:
|
150
|
+
#
|
151
|
+
# * `target:ex*`: The binding target's name starts with "ex".
|
152
|
+
# * `target:example`: The binding target's name is `example`.
|
153
|
+
# * `policy:example`: The binding policy's name is `example`.
|
154
|
+
class ListPolicyBindingsRequest
|
155
|
+
include ::Google::Protobuf::MessageExts
|
156
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
157
|
+
end
|
158
|
+
|
159
|
+
# Response message for ListPolicyBindings method.
|
160
|
+
# @!attribute [rw] policy_bindings
|
161
|
+
# @return [::Array<::Google::Iam::V3::PolicyBinding>]
|
162
|
+
# The policy bindings from the specified parent.
|
163
|
+
# @!attribute [rw] next_page_token
|
164
|
+
# @return [::String]
|
165
|
+
# Optional. A token, which can be sent as `page_token` to retrieve the next
|
166
|
+
# page. If this field is omitted, there are no subsequent pages.
|
167
|
+
class ListPolicyBindingsResponse
|
168
|
+
include ::Google::Protobuf::MessageExts
|
169
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
170
|
+
end
|
171
|
+
|
172
|
+
# Request message for SearchTargetPolicyBindings method.
|
173
|
+
# @!attribute [rw] target
|
174
|
+
# @return [::String]
|
175
|
+
# Required. The target resource, which is bound to the policy in the binding.
|
176
|
+
#
|
177
|
+
# Format:
|
178
|
+
#
|
179
|
+
# * `//iam.googleapis.com/locations/global/workforcePools/POOL_ID`
|
180
|
+
# * `//iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID`
|
181
|
+
# * `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID`
|
182
|
+
# * `//cloudresourcemanager.googleapis.com/projects/{project_number}`
|
183
|
+
# * `//cloudresourcemanager.googleapis.com/folders/{folder_id}`
|
184
|
+
# * `//cloudresourcemanager.googleapis.com/organizations/{organization_id}`
|
185
|
+
# @!attribute [rw] page_size
|
186
|
+
# @return [::Integer]
|
187
|
+
# Optional. The maximum number of policy bindings to return. The service may
|
188
|
+
# return fewer than this value.
|
189
|
+
#
|
190
|
+
# If unspecified, at most 50 policy bindings will be returned.
|
191
|
+
# The maximum value is 1000; values above 1000 will be coerced to 1000.
|
192
|
+
# @!attribute [rw] page_token
|
193
|
+
# @return [::String]
|
194
|
+
# Optional. A page token, received from a previous
|
195
|
+
# `SearchTargetPolicyBindingsRequest` call. Provide this to retrieve the
|
196
|
+
# subsequent page.
|
197
|
+
#
|
198
|
+
# When paginating, all other parameters provided to
|
199
|
+
# `SearchTargetPolicyBindingsRequest` must match the call that provided the
|
200
|
+
# page token.
|
201
|
+
# @!attribute [rw] parent
|
202
|
+
# @return [::String]
|
203
|
+
# Required. The parent resource where this search will be performed. This
|
204
|
+
# should be the nearest Resource Manager resource (project, folder, or
|
205
|
+
# organization) to the target.
|
206
|
+
#
|
207
|
+
# Format:
|
208
|
+
#
|
209
|
+
# * `projects/{project_id}/locations/{location}`
|
210
|
+
# * `projects/{project_number}/locations/{location}`
|
211
|
+
# * `folders/{folder_id}/locations/{location}`
|
212
|
+
# * `organizations/{organization_id}/locations/{location}`
|
213
|
+
class SearchTargetPolicyBindingsRequest
|
214
|
+
include ::Google::Protobuf::MessageExts
|
215
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
216
|
+
end
|
217
|
+
|
218
|
+
# Response message for SearchTargetPolicyBindings method.
|
219
|
+
# @!attribute [rw] policy_bindings
|
220
|
+
# @return [::Array<::Google::Iam::V3::PolicyBinding>]
|
221
|
+
# The policy bindings bound to the specified target.
|
222
|
+
# @!attribute [rw] next_page_token
|
223
|
+
# @return [::String]
|
224
|
+
# Optional. A token, which can be sent as `page_token` to retrieve the next
|
225
|
+
# page. If this field is omitted, there are no subsequent pages.
|
226
|
+
class SearchTargetPolicyBindingsResponse
|
227
|
+
include ::Google::Protobuf::MessageExts
|
228
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
229
|
+
end
|
230
|
+
end
|
231
|
+
end
|
232
|
+
end
|
@@ -0,0 +1,191 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Iam
|
22
|
+
module V3
|
23
|
+
# Request message for CreatePrincipalAccessBoundaryPolicyRequest method.
|
24
|
+
# @!attribute [rw] parent
|
25
|
+
# @return [::String]
|
26
|
+
# Required. The parent resource where this principal access boundary policy
|
27
|
+
# will be created. Only organizations are supported.
|
28
|
+
#
|
29
|
+
# Format:
|
30
|
+
# `organizations/{organization_id}/locations/{location}`
|
31
|
+
# @!attribute [rw] principal_access_boundary_policy_id
|
32
|
+
# @return [::String]
|
33
|
+
# Required. The ID to use for the principal access boundary policy, which
|
34
|
+
# will become the final component of the principal access boundary policy's
|
35
|
+
# resource name.
|
36
|
+
#
|
37
|
+
# This value must start with a lowercase letter followed by up to 62
|
38
|
+
# lowercase letters, numbers, hyphens, or dots. Pattern,
|
39
|
+
# /[a-z][a-z0-9-\.]\\{2,62}/.
|
40
|
+
# @!attribute [rw] principal_access_boundary_policy
|
41
|
+
# @return [::Google::Iam::V3::PrincipalAccessBoundaryPolicy]
|
42
|
+
# Required. The principal access boundary policy to create.
|
43
|
+
# @!attribute [rw] validate_only
|
44
|
+
# @return [::Boolean]
|
45
|
+
# Optional. If set, validate the request and preview the creation, but do not
|
46
|
+
# actually post it.
|
47
|
+
class CreatePrincipalAccessBoundaryPolicyRequest
|
48
|
+
include ::Google::Protobuf::MessageExts
|
49
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
50
|
+
end
|
51
|
+
|
52
|
+
# Request message for GetPrincipalAccessBoundaryPolicy method.
|
53
|
+
# @!attribute [rw] name
|
54
|
+
# @return [::String]
|
55
|
+
# Required. The name of the principal access boundary policy to retrieve.
|
56
|
+
#
|
57
|
+
# Format:
|
58
|
+
# `organizations/{organization_id}/locations/{location}/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}`
|
59
|
+
class GetPrincipalAccessBoundaryPolicyRequest
|
60
|
+
include ::Google::Protobuf::MessageExts
|
61
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
62
|
+
end
|
63
|
+
|
64
|
+
# Request message for UpdatePrincipalAccessBoundaryPolicy method.
|
65
|
+
# @!attribute [rw] principal_access_boundary_policy
|
66
|
+
# @return [::Google::Iam::V3::PrincipalAccessBoundaryPolicy]
|
67
|
+
# Required. The principal access boundary policy to update.
|
68
|
+
#
|
69
|
+
# The principal access boundary policy's `name` field is used to identify the
|
70
|
+
# policy to update.
|
71
|
+
# @!attribute [rw] validate_only
|
72
|
+
# @return [::Boolean]
|
73
|
+
# Optional. If set, validate the request and preview the update, but do not
|
74
|
+
# actually post it.
|
75
|
+
# @!attribute [rw] update_mask
|
76
|
+
# @return [::Google::Protobuf::FieldMask]
|
77
|
+
# Optional. The list of fields to update
|
78
|
+
class UpdatePrincipalAccessBoundaryPolicyRequest
|
79
|
+
include ::Google::Protobuf::MessageExts
|
80
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
81
|
+
end
|
82
|
+
|
83
|
+
# Request message for DeletePrincipalAccessBoundaryPolicy method.
|
84
|
+
# @!attribute [rw] name
|
85
|
+
# @return [::String]
|
86
|
+
# Required. The name of the principal access boundary policy to delete.
|
87
|
+
#
|
88
|
+
# Format:
|
89
|
+
# `organizations/{organization_id}/locations/{location}/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}`
|
90
|
+
# @!attribute [rw] etag
|
91
|
+
# @return [::String]
|
92
|
+
# Optional. The etag of the principal access boundary policy.
|
93
|
+
# If this is provided, it must match the server's etag.
|
94
|
+
# @!attribute [rw] validate_only
|
95
|
+
# @return [::Boolean]
|
96
|
+
# Optional. If set, validate the request and preview the deletion, but do not
|
97
|
+
# actually post it.
|
98
|
+
# @!attribute [rw] force
|
99
|
+
# @return [::Boolean]
|
100
|
+
# Optional. If set to true, the request will force the deletion of the policy
|
101
|
+
# even if the policy is referenced in policy bindings.
|
102
|
+
class DeletePrincipalAccessBoundaryPolicyRequest
|
103
|
+
include ::Google::Protobuf::MessageExts
|
104
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
105
|
+
end
|
106
|
+
|
107
|
+
# Request message for ListPrincipalAccessBoundaryPolicies method.
|
108
|
+
# @!attribute [rw] parent
|
109
|
+
# @return [::String]
|
110
|
+
# Required. The parent resource, which owns the collection of principal
|
111
|
+
# access boundary policies.
|
112
|
+
#
|
113
|
+
# Format:
|
114
|
+
# `organizations/{organization_id}/locations/{location}`
|
115
|
+
# @!attribute [rw] page_size
|
116
|
+
# @return [::Integer]
|
117
|
+
# Optional. The maximum number of principal access boundary policies to
|
118
|
+
# return. The service may return fewer than this value.
|
119
|
+
#
|
120
|
+
# If unspecified, at most 50 principal access boundary policies will be
|
121
|
+
# returned. The maximum value is 1000; values above 1000 will be coerced to
|
122
|
+
# 1000.
|
123
|
+
# @!attribute [rw] page_token
|
124
|
+
# @return [::String]
|
125
|
+
# Optional. A page token, received from a previous
|
126
|
+
# `ListPrincipalAccessBoundaryPolicies` call. Provide this to retrieve the
|
127
|
+
# subsequent page.
|
128
|
+
#
|
129
|
+
# When paginating, all other parameters provided to
|
130
|
+
# `ListPrincipalAccessBoundaryPolicies` must match the call that provided the
|
131
|
+
# page token.
|
132
|
+
class ListPrincipalAccessBoundaryPoliciesRequest
|
133
|
+
include ::Google::Protobuf::MessageExts
|
134
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
135
|
+
end
|
136
|
+
|
137
|
+
# Response message for ListPrincipalAccessBoundaryPolicies method.
|
138
|
+
# @!attribute [rw] principal_access_boundary_policies
|
139
|
+
# @return [::Array<::Google::Iam::V3::PrincipalAccessBoundaryPolicy>]
|
140
|
+
# The principal access boundary policies from the specified parent.
|
141
|
+
# @!attribute [rw] next_page_token
|
142
|
+
# @return [::String]
|
143
|
+
# Optional. A token, which can be sent as `page_token` to retrieve the next
|
144
|
+
# page. If this field is omitted, there are no subsequent pages.
|
145
|
+
class ListPrincipalAccessBoundaryPoliciesResponse
|
146
|
+
include ::Google::Protobuf::MessageExts
|
147
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
148
|
+
end
|
149
|
+
|
150
|
+
# Request message for SearchPrincipalAccessBoundaryPolicyBindings rpc.
|
151
|
+
# @!attribute [rw] name
|
152
|
+
# @return [::String]
|
153
|
+
# Required. The name of the principal access boundary policy.
|
154
|
+
# Format:
|
155
|
+
# `organizations/{organization_id}/locations/{location}/principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}`
|
156
|
+
# @!attribute [rw] page_size
|
157
|
+
# @return [::Integer]
|
158
|
+
# Optional. The maximum number of policy bindings to return. The service may
|
159
|
+
# return fewer than this value.
|
160
|
+
#
|
161
|
+
# If unspecified, at most 50 policy bindings will be returned.
|
162
|
+
# The maximum value is 1000; values above 1000 will be coerced to 1000.
|
163
|
+
# @!attribute [rw] page_token
|
164
|
+
# @return [::String]
|
165
|
+
# Optional. A page token, received from a previous
|
166
|
+
# `SearchPrincipalAccessBoundaryPolicyBindingsRequest` call. Provide this to
|
167
|
+
# retrieve the subsequent page.
|
168
|
+
#
|
169
|
+
# When paginating, all other parameters provided to
|
170
|
+
# `SearchPrincipalAccessBoundaryPolicyBindingsRequest` must match the call
|
171
|
+
# that provided the page token.
|
172
|
+
class SearchPrincipalAccessBoundaryPolicyBindingsRequest
|
173
|
+
include ::Google::Protobuf::MessageExts
|
174
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
175
|
+
end
|
176
|
+
|
177
|
+
# Response message for SearchPrincipalAccessBoundaryPolicyBindings rpc.
|
178
|
+
# @!attribute [rw] policy_bindings
|
179
|
+
# @return [::Array<::Google::Iam::V3::PolicyBinding>]
|
180
|
+
# The policy bindings that reference the specified policy.
|
181
|
+
# @!attribute [rw] next_page_token
|
182
|
+
# @return [::String]
|
183
|
+
# Optional. A token, which can be sent as `page_token` to retrieve the next
|
184
|
+
# page. If this field is omitted, there are no subsequent pages.
|
185
|
+
class SearchPrincipalAccessBoundaryPolicyBindingsResponse
|
186
|
+
include ::Google::Protobuf::MessageExts
|
187
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
end
|
@@ -0,0 +1,127 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Iam
|
22
|
+
module V3
|
23
|
+
# An IAM principal access boundary policy resource.
|
24
|
+
# @!attribute [rw] name
|
25
|
+
# @return [::String]
|
26
|
+
# Identifier. The resource name of the principal access boundary policy.
|
27
|
+
#
|
28
|
+
# The following format is supported:
|
29
|
+
# `organizations/{organization_id}/locations/{location}/principalAccessBoundaryPolicies/{policy_id}`
|
30
|
+
# @!attribute [r] uid
|
31
|
+
# @return [::String]
|
32
|
+
# Output only. The globally unique ID of the principal access boundary
|
33
|
+
# policy.
|
34
|
+
# @!attribute [rw] etag
|
35
|
+
# @return [::String]
|
36
|
+
# Optional. The etag for the principal access boundary.
|
37
|
+
# If this is provided on update, it must match the server's etag.
|
38
|
+
# @!attribute [rw] display_name
|
39
|
+
# @return [::String]
|
40
|
+
# Optional. The description of the principal access boundary policy. Must be
|
41
|
+
# less than or equal to 63 characters.
|
42
|
+
# @!attribute [rw] annotations
|
43
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
44
|
+
# Optional. User defined annotations. See
|
45
|
+
# https://google.aip.dev/148#annotations for more details such as format and
|
46
|
+
# size limitations
|
47
|
+
# @!attribute [r] create_time
|
48
|
+
# @return [::Google::Protobuf::Timestamp]
|
49
|
+
# Output only. The time when the principal access boundary policy was
|
50
|
+
# created.
|
51
|
+
# @!attribute [r] update_time
|
52
|
+
# @return [::Google::Protobuf::Timestamp]
|
53
|
+
# Output only. The time when the principal access boundary policy was most
|
54
|
+
# recently updated.
|
55
|
+
# @!attribute [rw] details
|
56
|
+
# @return [::Google::Iam::V3::PrincipalAccessBoundaryPolicyDetails]
|
57
|
+
# Optional. The details for the principal access boundary policy.
|
58
|
+
class PrincipalAccessBoundaryPolicy
|
59
|
+
include ::Google::Protobuf::MessageExts
|
60
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
61
|
+
|
62
|
+
# @!attribute [rw] key
|
63
|
+
# @return [::String]
|
64
|
+
# @!attribute [rw] value
|
65
|
+
# @return [::String]
|
66
|
+
class AnnotationsEntry
|
67
|
+
include ::Google::Protobuf::MessageExts
|
68
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
# Principal access boundary policy details
|
73
|
+
# @!attribute [rw] rules
|
74
|
+
# @return [::Array<::Google::Iam::V3::PrincipalAccessBoundaryPolicyRule>]
|
75
|
+
# Required. A list of principal access boundary policy rules. The number of
|
76
|
+
# rules in a policy is limited to 500.
|
77
|
+
# @!attribute [rw] enforcement_version
|
78
|
+
# @return [::String]
|
79
|
+
# Optional.
|
80
|
+
# The version number (for example, `1` or `latest`) that indicates which
|
81
|
+
# permissions are able to be blocked by the policy. If empty, the PAB policy
|
82
|
+
# version will be set to the most recent version number at the time of the
|
83
|
+
# policy's creation.
|
84
|
+
class PrincipalAccessBoundaryPolicyDetails
|
85
|
+
include ::Google::Protobuf::MessageExts
|
86
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
87
|
+
end
|
88
|
+
|
89
|
+
# Principal access boundary policy rule that defines the resource boundary.
|
90
|
+
# @!attribute [rw] description
|
91
|
+
# @return [::String]
|
92
|
+
# Optional. The description of the principal access boundary policy rule.
|
93
|
+
# Must be less than or equal to 256 characters.
|
94
|
+
# @!attribute [rw] resources
|
95
|
+
# @return [::Array<::String>]
|
96
|
+
# Required. A list of Resource Manager resources. If a resource is listed in
|
97
|
+
# the rule, then the rule applies for that resource and its descendants. The
|
98
|
+
# number of resources in a policy is limited to 500 across all rules in the
|
99
|
+
# policy.
|
100
|
+
#
|
101
|
+
# The following resource types are supported:
|
102
|
+
#
|
103
|
+
# * Organizations, such as
|
104
|
+
# `//cloudresourcemanager.googleapis.com/organizations/123`.
|
105
|
+
# * Folders, such as `//cloudresourcemanager.googleapis.com/folders/123`.
|
106
|
+
# * Projects, such as `//cloudresourcemanager.googleapis.com/projects/123`
|
107
|
+
# or `//cloudresourcemanager.googleapis.com/projects/my-project-id`.
|
108
|
+
# @!attribute [rw] effect
|
109
|
+
# @return [::Google::Iam::V3::PrincipalAccessBoundaryPolicyRule::Effect]
|
110
|
+
# Required. The access relationship of principals to the resources in this
|
111
|
+
# rule.
|
112
|
+
class PrincipalAccessBoundaryPolicyRule
|
113
|
+
include ::Google::Protobuf::MessageExts
|
114
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
115
|
+
|
116
|
+
# An effect to describe the access relationship.
|
117
|
+
module Effect
|
118
|
+
# Effect unspecified.
|
119
|
+
EFFECT_UNSPECIFIED = 0
|
120
|
+
|
121
|
+
# Allows access to the resources in this rule.
|
122
|
+
ALLOW = 1
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|