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, 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, 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.
426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 426 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.
484 485 486 487 488 489 490 491 492 493 494 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 484 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.
531 532 533 534 535 536 537 538 539 540 541 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 531 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, 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.
582 583 584 585 586 587 588 589 590 591 592 593 594 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 582 def batch_get_assets_history(parent, asset_names: nil, content_type: nil, read_time_window_end_time: nil, read_time_window_start_time: 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['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.
144 145 146 147 148 149 150 151 152 153 154 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 144 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.
178 179 180 181 182 183 184 185 186 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 178 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 proto 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.
628 629 630 631 632 633 634 635 636 637 638 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 628 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.
210 211 212 213 214 215 216 217 218 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 210 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.
310 311 312 313 314 315 316 317 318 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 310 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, 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.
104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 104 def list_assets(parent, asset_types: nil, content_type: nil, page_size: nil, page_token: nil, read_time: 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['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.
242 243 244 245 246 247 248 249 250 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 242 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.
277 278 279 280 281 282 283 284 285 286 287 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 277 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.
732 733 734 735 736 737 738 739 740 741 742 743 744 745 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 732 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.
847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 |
# File 'lib/google/apis/cloudasset_v1/service.rb', line 847 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 |