google-apis-cloudasset_v1 0.27.0 → 0.28.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 07face41ede5d125a3ace22750bf2cec71f77340195774ecf5e14525a616d7b4
4
- data.tar.gz: 054e3870c2ce695576273da3e85972165ab1c114ae6b31d61b5a84fa2d1c34f6
3
+ metadata.gz: d6d1413abc624c212f5d07a5d16d606cc56694af0e785a2f07c62d82ba651aea
4
+ data.tar.gz: 61ec011e8f7da6a95aaaa73419ae333cb21eca868ea2706d5e6629e53090201e
5
5
  SHA512:
6
- metadata.gz: d5159a1c22b39d86d61fb1e7110aa8a8b832315ba12a87bae41b6daf327e3e77d11d3615bd2837d5591edb0cdc2756f7dfffb3133402bfe073b4b1300d3b3128
7
- data.tar.gz: c5c663ffd9980e70c78e5b94f8175fb0b1184a9dd82a4471ef2eb5392e2ec9756a6eb6d953b2d5822dc61621cb152f171211fa94c9b29df31eb96d8ee27643b7
6
+ metadata.gz: 2e2255b8e8e5eec1ed8cb2bbbee564acdd8438a9be82e00a517b819d349d34730e8616c3ad0c507d67913c574e01a95aa0bd5a92cf0cf72bc53617fb09e0e634
7
+ data.tar.gz: c4b9abfe59dec198240a83b47127297c41495057c55acb2bb4c278a43564c9d32b81c7f487deaf36c449a480f1ffb54109fe7a4f1c1f0c72df3e039c314a0b54
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-cloudasset_v1
2
2
 
3
+ ### v0.28.0 (2022-02-16)
4
+
5
+ * Regenerated from discovery document revision 20220211
6
+
3
7
  ### v0.27.0 (2022-02-03)
4
8
 
5
9
  * Regenerated from discovery document revision 20220131
@@ -449,6 +449,28 @@ module Google
449
449
  end
450
450
  end
451
451
 
452
+ # A response message for AssetService.BatchGetEffectiveIamPolicies.
453
+ class BatchGetEffectiveIamPoliciesResponse
454
+ include Google::Apis::Core::Hashable
455
+
456
+ # The effective policies for a batch of resources. Note that the results order
457
+ # is the same as the order of BatchGetEffectiveIamPoliciesRequest.names. When a
458
+ # resource does not have any effective IAM policies, its corresponding
459
+ # policy_result will contain empty EffectiveIamPolicy.policies.
460
+ # Corresponds to the JSON property `policyResults`
461
+ # @return [Array<Google::Apis::CloudassetV1::EffectiveIamPolicy>]
462
+ attr_accessor :policy_results
463
+
464
+ def initialize(**args)
465
+ update!(**args)
466
+ end
467
+
468
+ # Update properties of this object
469
+ def update!(**args)
470
+ @policy_results = args[:policy_results] if args.key?(:policy_results)
471
+ end
472
+ end
473
+
452
474
  # A BigQuery destination for exporting assets to.
453
475
  class BigQueryDestination
454
476
  include Google::Apis::Core::Hashable
@@ -701,6 +723,40 @@ module Google
701
723
  end
702
724
  end
703
725
 
726
+ # The effective IAM policies on one resource.
727
+ class EffectiveIamPolicy
728
+ include Google::Apis::Core::Hashable
729
+
730
+ # The [full_resource_name] (https://cloud.google.com/asset-inventory/docs/
731
+ # resource-name-format) for which the policies are computed. This is one of the
732
+ # BatchGetEffectiveIamPoliciesRequest.names the caller provides in the request.
733
+ # Corresponds to the JSON property `fullResourceName`
734
+ # @return [String]
735
+ attr_accessor :full_resource_name
736
+
737
+ # The effective policies for the full_resource_name. These policies include the
738
+ # policy set on the full_resource_name and those set on its parents and
739
+ # ancestors up to the BatchGetEffectiveIamPoliciesRequest.scope. Note that these
740
+ # policies are not filtered according to the resource type of the
741
+ # full_resource_name. These policies are hierarchically ordered by PolicyInfo.
742
+ # attached_resource starting from full_resource_name itself to its parents and
743
+ # ancestors, such that policies[i]'s PolicyInfo.attached_resource is the child
744
+ # of policies[i+1]'s PolicyInfo.attached_resource, if policies[i+1] exists.
745
+ # Corresponds to the JSON property `policies`
746
+ # @return [Array<Google::Apis::CloudassetV1::PolicyInfo>]
747
+ attr_accessor :policies
748
+
749
+ def initialize(**args)
750
+ update!(**args)
751
+ end
752
+
753
+ # Update properties of this object
754
+ def update!(**args)
755
+ @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name)
756
+ @policies = args[:policies] if args.key?(:policies)
757
+ end
758
+ end
759
+
704
760
  # A generic empty message that you can re-use to avoid defining duplicated empty
705
761
  # messages in your APIs. A typical example is to use it as the request or the
706
762
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -3711,6 +3767,57 @@ module Google
3711
3767
  end
3712
3768
  end
3713
3769
 
3770
+ # The IAM policy and its attached resource.
3771
+ class PolicyInfo
3772
+ include Google::Apis::Core::Hashable
3773
+
3774
+ # The full resource name the policy is directly attached to.
3775
+ # Corresponds to the JSON property `attachedResource`
3776
+ # @return [String]
3777
+ attr_accessor :attached_resource
3778
+
3779
+ # An Identity and Access Management (IAM) policy, which specifies access
3780
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
3781
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
3782
+ # Principals can be user accounts, service accounts, Google groups, and domains (
3783
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
3784
+ # an IAM predefined role or a user-created custom role. For some types of Google
3785
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
3786
+ # logical expression that allows access to a resource only if the expression
3787
+ # evaluates to `true`. A condition can add constraints based on attributes of
3788
+ # the request, the resource, or both. To learn which resources support
3789
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
3790
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
3791
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
3792
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
3793
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
3794
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
3795
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
3796
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
3797
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
3798
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
3799
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
3800
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
3801
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
3802
+ # access description: Does not grant access after Sep 2020 expression: request.
3803
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
3804
+ # a description of IAM and its features, see the [IAM documentation](https://
3805
+ # cloud.google.com/iam/docs/).
3806
+ # Corresponds to the JSON property `policy`
3807
+ # @return [Google::Apis::CloudassetV1::Policy]
3808
+ attr_accessor :policy
3809
+
3810
+ def initialize(**args)
3811
+ update!(**args)
3812
+ end
3813
+
3814
+ # Update properties of this object
3815
+ def update!(**args)
3816
+ @attached_resource = args[:attached_resource] if args.key?(:attached_resource)
3817
+ @policy = args[:policy] if args.key?(:policy)
3818
+ end
3819
+ end
3820
+
3714
3821
  # A Pub/Sub destination.
3715
3822
  class PubsubDestination
3716
3823
  include Google::Apis::Core::Hashable
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module CloudassetV1
18
18
  # Version of the google-apis-cloudasset_v1 gem
19
- GEM_VERSION = "0.27.0"
19
+ GEM_VERSION = "0.28.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.4.1"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20220131"
25
+ REVISION = "20220211"
26
26
  end
27
27
  end
28
28
  end
@@ -88,6 +88,12 @@ module Google
88
88
  include Google::Apis::Core::JsonObjectSupport
89
89
  end
90
90
 
91
+ class BatchGetEffectiveIamPoliciesResponse
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ include Google::Apis::Core::JsonObjectSupport
95
+ end
96
+
91
97
  class BigQueryDestination
92
98
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
99
 
@@ -124,6 +130,12 @@ module Google
124
130
  include Google::Apis::Core::JsonObjectSupport
125
131
  end
126
132
 
133
+ class EffectiveIamPolicy
134
+ class Representation < Google::Apis::Core::JsonRepresentation; end
135
+
136
+ include Google::Apis::Core::JsonObjectSupport
137
+ end
138
+
127
139
  class Empty
128
140
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
141
 
@@ -514,6 +526,12 @@ module Google
514
526
  include Google::Apis::Core::JsonObjectSupport
515
527
  end
516
528
 
529
+ class PolicyInfo
530
+ class Representation < Google::Apis::Core::JsonRepresentation; end
531
+
532
+ include Google::Apis::Core::JsonObjectSupport
533
+ end
534
+
517
535
  class PubsubDestination
518
536
  class Representation < Google::Apis::Core::JsonRepresentation; end
519
537
 
@@ -775,6 +793,14 @@ module Google
775
793
  end
776
794
  end
777
795
 
796
+ class BatchGetEffectiveIamPoliciesResponse
797
+ # @private
798
+ class Representation < Google::Apis::Core::JsonRepresentation
799
+ collection :policy_results, as: 'policyResults', class: Google::Apis::CloudassetV1::EffectiveIamPolicy, decorator: Google::Apis::CloudassetV1::EffectiveIamPolicy::Representation
800
+
801
+ end
802
+ end
803
+
778
804
  class BigQueryDestination
779
805
  # @private
780
806
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -829,6 +855,15 @@ module Google
829
855
  end
830
856
  end
831
857
 
858
+ class EffectiveIamPolicy
859
+ # @private
860
+ class Representation < Google::Apis::Core::JsonRepresentation
861
+ property :full_resource_name, as: 'fullResourceName'
862
+ collection :policies, as: 'policies', class: Google::Apis::CloudassetV1::PolicyInfo, decorator: Google::Apis::CloudassetV1::PolicyInfo::Representation
863
+
864
+ end
865
+ end
866
+
832
867
  class Empty
833
868
  # @private
834
869
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1514,6 +1549,15 @@ module Google
1514
1549
  end
1515
1550
  end
1516
1551
 
1552
+ class PolicyInfo
1553
+ # @private
1554
+ class Representation < Google::Apis::Core::JsonRepresentation
1555
+ property :attached_resource, as: 'attachedResource'
1556
+ property :policy, as: 'policy', class: Google::Apis::CloudassetV1::Policy, decorator: Google::Apis::CloudassetV1::Policy::Representation
1557
+
1558
+ end
1559
+ end
1560
+
1517
1561
  class PubsubDestination
1518
1562
  # @private
1519
1563
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -131,6 +131,50 @@ module Google
131
131
  execute_or_queue_command(command, &block)
132
132
  end
133
133
 
134
+ # Gets effective IAM policies for a batch of resources.
135
+ # @param [String] scope
136
+ # Required. Only IAM policies on or below the scope will be returned. This can
137
+ # only be an organization number (such as "organizations/123"), a folder number (
138
+ # such as "folders/123"), a project ID (such as "projects/my-project-id"), or a
139
+ # project number (such as "projects/12345"). To know how to get organization id,
140
+ # visit [here ](https://cloud.google.com/resource-manager/docs/creating-managing-
141
+ # organization#retrieving_your_organization_id). To know how to get folder or
142
+ # project id, visit [here ](https://cloud.google.com/resource-manager/docs/
143
+ # creating-managing-folders#viewing_or_listing_folders_and_projects).
144
+ # @param [Array<String>, String] names
145
+ # Required. The names refer to the [full_resource_names] (https://cloud.google.
146
+ # com/asset-inventory/docs/resource-name-format) of [searchable asset types](
147
+ # https://cloud.google.com/asset-inventory/docs/supported-asset-types#
148
+ # searchable_asset_types). A maximum of 20 resources' effective policies can be
149
+ # retrieved in a batch.
150
+ # @param [String] fields
151
+ # Selector specifying which fields to include in a partial response.
152
+ # @param [String] quota_user
153
+ # Available to use for quota purposes for server-side applications. Can be any
154
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
155
+ # @param [Google::Apis::RequestOptions] options
156
+ # Request-specific options
157
+ #
158
+ # @yield [result, err] Result & error if block supplied
159
+ # @yieldparam result [Google::Apis::CloudassetV1::BatchGetEffectiveIamPoliciesResponse] parsed result object
160
+ # @yieldparam err [StandardError] error object if request failed
161
+ #
162
+ # @return [Google::Apis::CloudassetV1::BatchGetEffectiveIamPoliciesResponse]
163
+ #
164
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
165
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
166
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
167
+ def batch_effective_iam_policy_get(scope, names: nil, fields: nil, quota_user: nil, options: nil, &block)
168
+ command = make_simple_command(:get, 'v1/{+scope}/effectiveIamPolicies:batchGet', options)
169
+ command.response_representation = Google::Apis::CloudassetV1::BatchGetEffectiveIamPoliciesResponse::Representation
170
+ command.response_class = Google::Apis::CloudassetV1::BatchGetEffectiveIamPoliciesResponse
171
+ command.params['scope'] = scope unless scope.nil?
172
+ command.query['names'] = names unless names.nil?
173
+ command.query['fields'] = fields unless fields.nil?
174
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
175
+ execute_or_queue_command(command, &block)
176
+ end
177
+
134
178
  # Creates a feed in a parent project/folder/organization to listen to its asset
135
179
  # updates.
136
180
  # @param [String] parent
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-cloudasset_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.0
4
+ version: 0.28.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-07 00:00:00.000000000 Z
11
+ date: 2022-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudasset_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-cloudasset_v1/v0.27.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-cloudasset_v1/v0.28.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudasset_v1
63
63
  post_install_message:
64
64
  rdoc_options: []