Class: Google::Apis::CloudassetV1::CloudAssetService
- Inherits:
-
Google::Apis::Core::BaseService
- Object
- Google::Apis::Core::BaseService
- Google::Apis::CloudassetV1::CloudAssetService
- Defined in:
- lib/google/apis/cloudasset_v1/service.rb
Overview
Cloud Asset API
The cloud asset API manages the history and inventory of cloud resources.
Instance Attribute Summary collapse
-
#key ⇒ String
API key.
-
#quota_user ⇒ String
Available to use for quota purposes for server-side applications.
Instance Method Summary collapse
-
#analyze_iam_policy(scope, analysis_query_access_selector_permissions: nil, analysis_query_access_selector_roles: nil, analysis_query_condition_context_access_time: nil, analysis_query_identity_selector_identity: nil, analysis_query_options_analyze_service_account_impersonation: nil, analysis_query_options_expand_groups: nil, analysis_query_options_expand_resources: nil, analysis_query_options_expand_roles: nil, analysis_query_options_output_group_edges: nil, analysis_query_options_output_resource_edges: nil, analysis_query_resource_selector_full_resource_name: nil, execution_timeout: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::AnalyzeIamPolicyResponse
Analyzes IAM policies to answer which identities have what accesses on which resources.
-
#analyze_iam_policy_longrunning(scope, analyze_iam_policy_longrunning_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Analyzes IAM policies asynchronously to answer which identities have what accesses on which resources, and writes the analysis results to a Google Cloud Storage or a BigQuery destination.
-
#analyze_move(resource, destination_parent: nil, view: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::AnalyzeMoveResponse
Analyze moving a resource to a specified destination without kicking off the actual move.
-
#batch_get_assets_history(parent, asset_names: nil, content_type: nil, read_time_window_end_time: nil, read_time_window_start_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::BatchGetAssetsHistoryResponse
Batch gets the update history of assets that overlap a time window.
-
#create_feed(parent, create_feed_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Creates a feed in a parent project/folder/organization to listen to its asset updates.
-
#delete_feed(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Empty
Deletes an asset feed.
-
#export_assets(parent, export_assets_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Exports assets with time and resource types to a given Cloud Storage location/ BigQuery table.
-
#get_feed(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Gets details about an asset feed.
-
#get_operation(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Gets the latest state of a long-running operation.
-
#initialize ⇒ CloudAssetService
constructor
A new instance of CloudAssetService.
-
#list_assets(parent, asset_types: nil, content_type: nil, page_size: nil, page_token: nil, read_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::ListAssetsResponse
Lists assets with time and resource types and returns paged results in response.
-
#list_feeds(parent, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::ListFeedsResponse
Lists all asset feeds in a parent project/folder/organization.
-
#patch_feed(name, update_feed_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Updates an asset feed configuration.
-
#search_all_iam_policies(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::SearchAllIamPoliciesResponse
Searches all IAM policies within the specified scope, such as a project, folder, or organization.
-
#search_all_resources(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, read_mask: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::SearchAllResourcesResponse
Searches all Cloud resources within the specified scope, such as a project, folder, or organization.
Constructor Details
#initialize ⇒ CloudAssetService
Returns a new instance of CloudAssetService.
45 46 47 48 49 50 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 45 def initialize super('https://cloudasset.googleapis.com/', '', client_name: 'google-apis-cloudasset_v1', client_version: Google::Apis::CloudassetV1::GEM_VERSION) @batch_path = 'batch' end |
Instance Attribute Details
#key ⇒ String
Returns API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
38 39 40 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 38 def key @key end |
#quota_user ⇒ String
Returns Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
43 44 45 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 43 def quota_user @quota_user end |
Instance Method Details
#analyze_iam_policy(scope, analysis_query_access_selector_permissions: nil, analysis_query_access_selector_roles: nil, analysis_query_condition_context_access_time: nil, analysis_query_identity_selector_identity: nil, analysis_query_options_analyze_service_account_impersonation: nil, analysis_query_options_expand_groups: nil, analysis_query_options_expand_resources: nil, analysis_query_options_expand_roles: nil, analysis_query_options_output_group_edges: nil, analysis_query_options_output_resource_edges: nil, analysis_query_resource_selector_full_resource_name: nil, execution_timeout: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::AnalyzeIamPolicyResponse
Analyzes IAM policies to answer which identities have what accesses on which resources.
441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 441 def analyze_iam_policy(scope, analysis_query_access_selector_permissions: nil, analysis_query_access_selector_roles: nil, analysis_query_condition_context_access_time: nil, analysis_query_identity_selector_identity: nil, analysis_query_options_analyze_service_account_impersonation: nil, analysis_query_options_expand_groups: nil, analysis_query_options_expand_resources: nil, analysis_query_options_expand_roles: nil, analysis_query_options_output_group_edges: nil, analysis_query_options_output_resource_edges: nil, analysis_query_resource_selector_full_resource_name: nil, execution_timeout: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+scope}:analyzeIamPolicy', ) command.response_representation = Google::Apis::CloudassetV1::AnalyzeIamPolicyResponse::Representation command.response_class = Google::Apis::CloudassetV1::AnalyzeIamPolicyResponse command.params['scope'] = scope unless scope.nil? command.query['analysisQuery.accessSelector.permissions'] = unless .nil? command.query['analysisQuery.accessSelector.roles'] = analysis_query_access_selector_roles unless analysis_query_access_selector_roles.nil? command.query['analysisQuery.conditionContext.accessTime'] = analysis_query_condition_context_access_time unless analysis_query_condition_context_access_time.nil? command.query['analysisQuery.identitySelector.identity'] = analysis_query_identity_selector_identity unless analysis_query_identity_selector_identity.nil? command.query['analysisQuery.options.analyzeServiceAccountImpersonation'] = unless .nil? command.query['analysisQuery.options.expandGroups'] = unless .nil? command.query['analysisQuery.options.expandResources'] = unless .nil? command.query['analysisQuery.options.expandRoles'] = unless .nil? command.query['analysisQuery.options.outputGroupEdges'] = unless .nil? command.query['analysisQuery.options.outputResourceEdges'] = unless .nil? command.query['analysisQuery.resourceSelector.fullResourceName'] = analysis_query_resource_selector_full_resource_name unless analysis_query_resource_selector_full_resource_name.nil? command.query['executionTimeout'] = execution_timeout unless execution_timeout.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#analyze_iam_policy_longrunning(scope, analyze_iam_policy_longrunning_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Analyzes IAM policies asynchronously to answer which identities have what accesses on which resources, and writes the analysis results to a Google Cloud Storage or a BigQuery destination. For Cloud Storage destination, the output format is the JSON format that represents a AnalyzeIamPolicyResponse. This method implements the google.longrunning.Operation, which allows you to track the operation status. We recommend intervals of at least 2 seconds with exponential backoff retry to poll the operation result. The metadata contains the metadata for the long-running operation.
499 500 501 502 503 504 505 506 507 508 509 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 499 def analyze_iam_policy_longrunning(scope, analyze_iam_policy_longrunning_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+scope}:analyzeIamPolicyLongrunning', ) command.request_representation = Google::Apis::CloudassetV1::AnalyzeIamPolicyLongrunningRequest::Representation command.request_object = analyze_iam_policy_longrunning_request_object command.response_representation = Google::Apis::CloudassetV1::Operation::Representation command.response_class = Google::Apis::CloudassetV1::Operation command.params['scope'] = scope unless scope.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#analyze_move(resource, destination_parent: nil, view: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::AnalyzeMoveResponse
Analyze moving a resource to a specified destination without kicking off the actual move. The analysis is best effort depending on the user's permissions of viewing different hierarchical policies and configurations. The policies and configuration are subject to change before the actual resource migration takes place.
546 547 548 549 550 551 552 553 554 555 556 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 546 def analyze_move(resource, destination_parent: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+resource}:analyzeMove', ) command.response_representation = Google::Apis::CloudassetV1::AnalyzeMoveResponse::Representation command.response_class = Google::Apis::CloudassetV1::AnalyzeMoveResponse command.params['resource'] = resource unless resource.nil? command.query['destinationParent'] = destination_parent unless destination_parent.nil? command.query['view'] = view unless view.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#batch_get_assets_history(parent, asset_names: nil, content_type: nil, read_time_window_end_time: nil, read_time_window_start_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::BatchGetAssetsHistoryResponse
Batch gets the update history of assets that overlap a time window. For IAM_POLICY content, this API outputs history when the asset and its attached IAM POLICY both exist. This can create gaps in the output history. Otherwise, this API outputs history with asset in both non-delete or deleted status. If a specified asset does not exist, this API returns an INVALID_ARGUMENT error.
609 610 611 612 613 614 615 616 617 618 619 620 621 622 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 609 def batch_get_assets_history(parent, asset_names: nil, content_type: nil, read_time_window_end_time: nil, read_time_window_start_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+parent}:batchGetAssetsHistory', ) command.response_representation = Google::Apis::CloudassetV1::BatchGetAssetsHistoryResponse::Representation command.response_class = Google::Apis::CloudassetV1::BatchGetAssetsHistoryResponse command.params['parent'] = parent unless parent.nil? command.query['assetNames'] = asset_names unless asset_names.nil? command.query['contentType'] = content_type unless content_type.nil? command.query['readTimeWindow.endTime'] = read_time_window_end_time unless read_time_window_end_time.nil? command.query['readTimeWindow.startTime'] = read_time_window_start_time unless read_time_window_start_time.nil? command.query['relationshipTypes'] = relationship_types unless relationship_types.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#create_feed(parent, create_feed_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Creates a feed in a parent project/folder/organization to listen to its asset updates.
158 159 160 161 162 163 164 165 166 167 168 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 158 def create_feed(parent, create_feed_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+parent}/feeds', ) command.request_representation = Google::Apis::CloudassetV1::CreateFeedRequest::Representation command.request_object = create_feed_request_object command.response_representation = Google::Apis::CloudassetV1::Feed::Representation command.response_class = Google::Apis::CloudassetV1::Feed command.params['parent'] = parent unless parent.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#delete_feed(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Empty
Deletes an asset feed.
192 193 194 195 196 197 198 199 200 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 192 def delete_feed(name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'v1/{+name}', ) command.response_representation = Google::Apis::CloudassetV1::Empty::Representation command.response_class = Google::Apis::CloudassetV1::Empty command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#export_assets(parent, export_assets_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Exports assets with time and resource types to a given Cloud Storage location/ BigQuery table. For Cloud Storage location destinations, the output format is newline-delimited JSON. Each line represents a google.cloud.asset.v1.Asset in the JSON format; for BigQuery table destinations, the output table stores the fields in asset Protobuf as columns. This API implements the google. longrunning.Operation API, which allows you to keep track of the export. We recommend intervals of at least 2 seconds with exponential retry to poll the export operation result. For regular-size resource parent, the export operation usually finishes within 5 minutes.
656 657 658 659 660 661 662 663 664 665 666 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 656 def export_assets(parent, export_assets_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+parent}:exportAssets', ) command.request_representation = Google::Apis::CloudassetV1::ExportAssetsRequest::Representation command.request_object = export_assets_request_object command.response_representation = Google::Apis::CloudassetV1::Operation::Representation command.response_class = Google::Apis::CloudassetV1::Operation command.params['parent'] = parent unless parent.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_feed(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Gets details about an asset feed.
224 225 226 227 228 229 230 231 232 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 224 def get_feed(name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+name}', ) command.response_representation = Google::Apis::CloudassetV1::Feed::Representation command.response_class = Google::Apis::CloudassetV1::Feed command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_operation(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Operation
Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
324 325 326 327 328 329 330 331 332 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 324 def get_operation(name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+name}', ) command.response_representation = Google::Apis::CloudassetV1::Operation::Representation command.response_class = Google::Apis::CloudassetV1::Operation command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#list_assets(parent, asset_types: nil, content_type: nil, page_size: nil, page_token: nil, read_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::ListAssetsResponse
Lists assets with time and resource types and returns paged results in response.
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 117 def list_assets(parent, asset_types: nil, content_type: nil, page_size: nil, page_token: nil, read_time: nil, relationship_types: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+parent}/assets', ) command.response_representation = Google::Apis::CloudassetV1::ListAssetsResponse::Representation command.response_class = Google::Apis::CloudassetV1::ListAssetsResponse command.params['parent'] = parent unless parent.nil? command.query['assetTypes'] = asset_types unless asset_types.nil? command.query['contentType'] = content_type unless content_type.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['readTime'] = read_time unless read_time.nil? command.query['relationshipTypes'] = relationship_types unless relationship_types.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#list_feeds(parent, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::ListFeedsResponse
Lists all asset feeds in a parent project/folder/organization.
256 257 258 259 260 261 262 263 264 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 256 def list_feeds(parent, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+parent}/feeds', ) command.response_representation = Google::Apis::CloudassetV1::ListFeedsResponse::Representation command.response_class = Google::Apis::CloudassetV1::ListFeedsResponse command.params['parent'] = parent unless parent.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#patch_feed(name, update_feed_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::Feed
Updates an asset feed configuration.
291 292 293 294 295 296 297 298 299 300 301 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 291 def patch_feed(name, update_feed_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'v1/{+name}', ) command.request_representation = Google::Apis::CloudassetV1::UpdateFeedRequest::Representation command.request_object = update_feed_request_object command.response_representation = Google::Apis::CloudassetV1::Feed::Representation command.response_class = Google::Apis::CloudassetV1::Feed command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#search_all_iam_policies(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::SearchAllIamPoliciesResponse
Searches all IAM policies within the specified scope, such as a project,
folder, or organization. The caller must be granted the cloudasset.assets.
searchAllIamPolicies permission on the desired scope, otherwise the request
will be rejected.
760 761 762 763 764 765 766 767 768 769 770 771 772 773 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 760 def search_all_iam_policies(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+scope}:searchAllIamPolicies', ) command.response_representation = Google::Apis::CloudassetV1::SearchAllIamPoliciesResponse::Representation command.response_class = Google::Apis::CloudassetV1::SearchAllIamPoliciesResponse command.params['scope'] = scope unless scope.nil? command.query['assetTypes'] = asset_types unless asset_types.nil? command.query['orderBy'] = order_by unless order_by.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['query'] = query unless query.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#search_all_resources(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, read_mask: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudassetV1::SearchAllResourcesResponse
Searches all Cloud resources within the specified scope, such as a project,
folder, or organization. The caller must be granted the cloudasset.assets.
searchAllResources permission on the desired scope, otherwise the request
will be rejected.
875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 875 def search_all_resources(scope, asset_types: nil, order_by: nil, page_size: nil, page_token: nil, query: nil, read_mask: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+scope}:searchAllResources', ) command.response_representation = Google::Apis::CloudassetV1::SearchAllResourcesResponse::Representation command.response_class = Google::Apis::CloudassetV1::SearchAllResourcesResponse command.params['scope'] = scope unless scope.nil? command.query['assetTypes'] = asset_types unless asset_types.nil? command.query['orderBy'] = order_by unless order_by.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['query'] = query unless query.nil? command.query['readMask'] = read_mask unless read_mask.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |