google-apis-cloudasset_v1 0.27.0 → 0.28.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 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: []