Types for Google Cloud Asset v1 API¶
- class google.cloud.asset_v1.types.AnalyzeIamPolicyLongrunningMetadata(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Represents the metadata of the longrunning operation for the AnalyzeIamPolicyLongrunning RPC.
- create_time¶
Output only. The time the operation was created.
- class google.cloud.asset_v1.types.AnalyzeIamPolicyLongrunningRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.AnalyzeIamPolicyLongrunning][google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning].
- analysis_query¶
Required. The request query.
- saved_analysis_query¶
Optional. The name of a saved query, which must be in the format of:
projects/project_number/savedQueries/saved_query_id
folders/folder_number/savedQueries/saved_query_id
organizations/organization_number/savedQueries/saved_query_id
If both
analysis_query
andsaved_analysis_query
are provided, they will be merged together with thesaved_analysis_query
as base and theanalysis_query
as overrides. For more details of the merge behavior, refer to the MergeFrom doc.Note that you cannot override primitive fields with default value, such as 0 or empty string, etc., because we use proto3, which doesn’t support field presence yet.
- Type
- output_config¶
Required. Output configuration indicating where the results will be output to.
- class google.cloud.asset_v1.types.AnalyzeIamPolicyLongrunningResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A response message for [AssetService.AnalyzeIamPolicyLongrunning][google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning].
- class google.cloud.asset_v1.types.AnalyzeIamPolicyRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.AnalyzeIamPolicy][google.cloud.asset.v1.AssetService.AnalyzeIamPolicy].
- analysis_query¶
Required. The request query.
- saved_analysis_query¶
Optional. The name of a saved query, which must be in the format of:
projects/project_number/savedQueries/saved_query_id
folders/folder_number/savedQueries/saved_query_id
organizations/organization_number/savedQueries/saved_query_id
If both
analysis_query
andsaved_analysis_query
are provided, they will be merged together with thesaved_analysis_query
as base and theanalysis_query
as overrides. For more details of the merge behavior, refer to the MergeFrom page.Note that you cannot override primitive fields with default value, such as 0 or empty string, etc., because we use proto3, which doesn’t support field presence yet.
- Type
- execution_timeout¶
Optional. Amount of time executable has to complete. See JSON representation of Duration.
If this field is set with a value less than the RPC deadline, and the execution of your query hasn’t finished in the specified execution timeout, you will get a response with partial result. Otherwise, your query’s execution will continue until the RPC deadline. If it’s not finished until then, you will get a DEADLINE_EXCEEDED error.
Default is empty.
- class google.cloud.asset_v1.types.AnalyzeIamPolicyResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A response message for [AssetService.AnalyzeIamPolicy][google.cloud.asset.v1.AssetService.AnalyzeIamPolicy].
- main_analysis¶
The main analysis that matches the original request.
- service_account_impersonation_analysis¶
The service account impersonation analysis if [AnalyzeIamPolicyRequest.analyze_service_account_impersonation][] is enabled.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzeIamPolicyResponse.IamPolicyAnalysis]
- fully_explored¶
Represents whether all entries in the [main_analysis][google.cloud.asset.v1.AnalyzeIamPolicyResponse.main_analysis] and [service_account_impersonation_analysis][google.cloud.asset.v1.AnalyzeIamPolicyResponse.service_account_impersonation_analysis] have been fully explored to answer the query in the request.
- Type
- class IamPolicyAnalysis(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An analysis message to group the query and results.
- analysis_query¶
The analysis query.
- analysis_results¶
A list of [IamPolicyAnalysisResult][google.cloud.asset.v1.IamPolicyAnalysisResult] that matches the analysis query, or empty if no result is found.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult]
- fully_explored¶
Represents whether all entries in the [analysis_results][google.cloud.asset.v1.AnalyzeIamPolicyResponse.IamPolicyAnalysis.analysis_results] have been fully explored to answer the query.
- Type
- non_critical_errors¶
A list of non-critical errors happened during the query handling.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisState]
- class google.cloud.asset_v1.types.AnalyzeMoveRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The request message for performing resource move analysis.
- resource¶
Required. Name of the resource to perform the analysis against. Only Google Cloud projects are supported as of today. Hence, this can only be a project ID (such as “projects/my-project-id”) or a project number (such as “projects/12345”).
- Type
- destination_parent¶
Required. Name of the Google Cloud folder or organization to reparent the target resource. The analysis will be performed against hypothetically moving the resource to this specified desitination parent. This can only be a folder number (such as “folders/123”) or an organization number (such as “organizations/123”).
- Type
- view¶
Analysis view indicating what information should be included in the analysis response. If unspecified, the default view is FULL.
- class AnalysisView(value)[source]¶
Bases:
proto.enums.Enum
View enum for supporting partial analysis responses.
- Values:
- ANALYSIS_VIEW_UNSPECIFIED (0):
The default/unset value. The API will default to the FULL view.
- FULL (1):
Full analysis including all level of impacts of the specified resource move.
- BASIC (2):
Basic analysis only including blockers which will prevent the specified resource move at runtime.
- class google.cloud.asset_v1.types.AnalyzeMoveResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The response message for resource move analysis.
- move_analysis¶
The list of analyses returned from performing the intended resource move analysis. The analysis is grouped by different Google Cloud services.
- Type
MutableSequence[google.cloud.asset_v1.types.MoveAnalysis]
- class google.cloud.asset_v1.types.AnalyzeOrgPoliciesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.AnalyzeOrgPolicies][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicies].
- scope¶
Required. The organization to scope the request. Only organization policies within the scope will be analyzed.
organizations/{ORGANIZATION_NUMBER} (e.g., “organizations/123456”)
- Type
- constraint¶
Required. The name of the constraint to analyze organization policies for. The response only contains analyzed organization policies for the provided constraint.
- Type
- filter¶
The expression to filter [AnalyzeOrgPoliciesResponse.org_policy_results][google.cloud.asset.v1.AnalyzeOrgPoliciesResponse.org_policy_results]. Filtering is currently available for bare literal values and the following fields:
consolidated_policy.attached_resource
consolidated_policy.rules.enforce
When filtering by a specific field, the only supported operator is
=
. For example, filtering by consolidated_policy.attached_resource=”//cloudresourcemanager.googleapis.com/folders/001” will return all the Organization Policy results attached to “folders/001”.- Type
- class google.cloud.asset_v1.types.AnalyzeOrgPoliciesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The response message for [AssetService.AnalyzeOrgPolicies][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicies].
- org_policy_results¶
The organization policies under the [AnalyzeOrgPoliciesRequest.scope][google.cloud.asset.v1.AnalyzeOrgPoliciesRequest.scope] with the [AnalyzeOrgPoliciesRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPoliciesRequest.constraint].
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzeOrgPoliciesResponse.OrgPolicyResult]
- constraint¶
The definition of the constraint in the request.
- next_page_token¶
The page token to fetch the next page for [AnalyzeOrgPoliciesResponse.org_policy_results][google.cloud.asset.v1.AnalyzeOrgPoliciesResponse.org_policy_results].
- Type
- class OrgPolicyResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The organization policy result to the query.
- consolidated_policy¶
The consolidated organization policy for the analyzed resource. The consolidated organization policy is computed by merging and evaluating [AnalyzeOrgPoliciesResponse.policy_bundle][]. The evaluation will respect the organization policy hierarchy rules.
- policy_bundle¶
The ordered list of all organization policies from the [AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource][]. to the scope specified in the request.
If the constraint is defined with default policy, it will also appear in the list.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzerOrgPolicy]
- project¶
The project that this consolidated policy belongs to, in the format of projects/{PROJECT_NUMBER}. This field is available when the consolidated policy belongs to a project.
- Type
- class google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedAssetsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.AnalyzeOrgPolicyGovernedAssets][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicyGovernedAssets].
- scope¶
Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output assets will also be limited to the ones governed by those in-scope organization policies.
organizations/{ORGANIZATION_NUMBER} (e.g., “organizations/123456”)
- Type
- constraint¶
Required. The name of the constraint to analyze governed assets for. The analysis only contains analyzed organization policies for the provided constraint.
- Type
- filter¶
The expression to filter [AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets].
For governed resources, filtering is currently available for bare literal values and the following fields:
governed_resource.project
governed_resource.folders
consolidated_policy.rules.enforce When filtering by
governed_resource.project
orconsolidated_policy.rules.enforce
, the only supported operator is=
. When filtering bygoverned_resource.folders
, the supported operators are=
and:
. For example, filtering bygoverned_resource.project="projects/12345678"
will return all the governed resources under “projects/12345678”, including the project itself if applicable.
For governed IAM policies, filtering is currently available for bare literal values and the following fields:
governed_iam_policy.project
governed_iam_policy.folders
consolidated_policy.rules.enforce When filtering by
governed_iam_policy.project
orconsolidated_policy.rules.enforce
, the only supported operator is=
. When filtering bygoverned_iam_policy.folders
, the supported operators are=
and:
. For example, filtering bygoverned_iam_policy.folders:"folders/12345678"
will return all the governed IAM policies under “folders/001”.
- Type
- page_size¶
The maximum number of items to return per page. If unspecified, [AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets] will contain 100 items with a maximum of 200.
This field is a member of oneof
_page_size
.- Type
- class google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedAssetsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The response message for [AssetService.AnalyzeOrgPolicyGovernedAssets][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicyGovernedAssets].
- governed_assets¶
The list of the analyzed governed assets.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset]
- constraint¶
The definition of the constraint in the request.
- next_page_token¶
The page token to fetch the next page for [AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets].
- Type
- class GovernedAsset(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Represents a Google Cloud asset(resource or IAM policy) governed by the organization policies of the [AnalyzeOrgPolicyGovernedAssetsRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest.constraint].
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- governed_resource¶
A Google Cloud resource governed by the organization policies of the [AnalyzeOrgPolicyGovernedAssetsRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest.constraint].
This field is a member of oneof
governed_asset
.
- governed_iam_policy¶
An IAM policy governed by the organization policies of the [AnalyzeOrgPolicyGovernedAssetsRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest.constraint].
This field is a member of oneof
governed_asset
.
- consolidated_policy¶
The consolidated policy for the analyzed asset. The consolidated policy is computed by merging and evaluating [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.policy_bundle][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.policy_bundle]. The evaluation will respect the organization policy hierarchy rules.
- policy_bundle¶
The ordered list of all organization policies from the [AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource][] to the scope specified in the request.
If the constraint is defined with default policy, it will also appear in the list.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzerOrgPolicy]
- class GovernedIamPolicy(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The IAM policies governed by the organization policies of the [AnalyzeOrgPolicyGovernedAssetsRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest.constraint].
- attached_resource¶
The full resource name of the resource on which this IAM policy is set. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
. See Cloud Asset Inventory Resource Name Format for more information.- Type
- policy¶
The IAM policy directly set on the given resource.
- Type
google.iam.v1.policy_pb2.Policy
- project¶
The project that this IAM policy belongs to, in the format of projects/{PROJECT_NUMBER}. This field is available when the IAM policy belongs to a project.
- Type
- folders¶
The folder(s) that this IAM policy belongs to, in the format of folders/{FOLDER_NUMBER}. This field is available when the IAM policy belongs (directly or cascadingly) to one or more folders.
- Type
MutableSequence[str]
- organization¶
The organization that this IAM policy belongs to, in the format of organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM policy belongs (directly or cascadingly) to an organization.
- Type
- asset_type¶
The asset type of the [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy.attached_resource][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy.attached_resource]. Example:
cloudresourcemanager.googleapis.com/Project
See Cloud Asset Inventory Supported Asset Types for all supported asset types.- Type
- class GovernedResource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The Google Cloud resources governed by the organization policies of the [AnalyzeOrgPolicyGovernedAssetsRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest.constraint].
- full_resource_name¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the Google Cloud resource.
- Type
- parent¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the parent of [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name].
- Type
- project¶
The project that this resource belongs to, in the format of projects/{PROJECT_NUMBER}. This field is available when the resource belongs to a project.
- Type
- folders¶
The folder(s) that this resource belongs to, in the format of folders/{FOLDER_NUMBER}. This field is available when the resource belongs (directly or cascadingly) to one or more folders.
- Type
MutableSequence[str]
- organization¶
The organization that this resource belongs to, in the format of organizations/{ORGANIZATION_NUMBER}. This field is available when the resource belongs (directly or cascadingly) to an organization.
- Type
- asset_type¶
The asset type of the [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name] Example:
cloudresourcemanager.googleapis.com/Project
See Cloud Asset Inventory Supported Asset Types for all supported asset types.- Type
- effective_tags¶
The effective tags on this resource.
- Type
MutableSequence[google.cloud.asset_v1.types.EffectiveTagDetails]
- class google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedContainersRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.AnalyzeOrgPolicyGovernedContainers][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicyGovernedContainers].
- scope¶
Required. The organization to scope the request. Only organization policies within the scope will be analyzed. The output containers will also be limited to the ones governed by those in-scope organization policies.
organizations/{ORGANIZATION_NUMBER} (e.g., “organizations/123456”)
- Type
- constraint¶
Required. The name of the constraint to analyze governed containers for. The analysis only contains organization policies for the provided constraint.
- Type
- filter¶
The expression to filter [AnalyzeOrgPolicyGovernedContainersResponse.governed_containers][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.governed_containers]. Filtering is currently available for bare literal values and the following fields:
parent
consolidated_policy.rules.enforce
When filtering by a specific field, the only supported operator is
=
. For example, filtering by parent=”//cloudresourcemanager.googleapis.com/folders/001” will return all the containers under “folders/001”.- Type
- page_size¶
The maximum number of items to return per page. If unspecified, [AnalyzeOrgPolicyGovernedContainersResponse.governed_containers][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.governed_containers] will contain 100 items with a maximum of 200.
This field is a member of oneof
_page_size
.- Type
- class google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedContainersResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The response message for [AssetService.AnalyzeOrgPolicyGovernedContainers][google.cloud.asset.v1.AssetService.AnalyzeOrgPolicyGovernedContainers].
- governed_containers¶
The list of the analyzed governed containers.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer]
- constraint¶
The definition of the constraint in the request.
- next_page_token¶
The page token to fetch the next page for [AnalyzeOrgPolicyGovernedContainersResponse.governed_containers][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.governed_containers].
- Type
- class GovernedContainer(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The organization/folder/project resource governed by organization policies of [AnalyzeOrgPolicyGovernedContainersRequest.constraint][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersRequest.constraint].
- full_resource_name¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource.
- Type
- parent¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the parent of [AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.full_resource_name][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.full_resource_name].
- Type
- consolidated_policy¶
The consolidated organization policy for the analyzed resource. The consolidated organization policy is computed by merging and evaluating [AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.policy_bundle][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.policy_bundle]. The evaluation will respect the organization policy hierarchy rules.
- policy_bundle¶
The ordered list of all organization policies from the [AnalyzeOrgPoliciesResponse.OrgPolicyResult.consolidated_policy.attached_resource][]. to the scope specified in the request.
If the constraint is defined with default policy, it will also appear in the list.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzerOrgPolicy]
- project¶
The project that this resource belongs to, in the format of projects/{PROJECT_NUMBER}. This field is available when the resource belongs to a project.
- Type
- folders¶
The folder(s) that this resource belongs to, in the format of folders/{FOLDER_NUMBER}. This field is available when the resource belongs (directly or cascadingly) to one or more folders.
- Type
MutableSequence[str]
- organization¶
The organization that this resource belongs to, in the format of organizations/{ORGANIZATION_NUMBER}. This field is available when the resource belongs (directly or cascadingly) to an organization.
- Type
- effective_tags¶
The effective tags on this resource.
- Type
MutableSequence[google.cloud.asset_v1.types.EffectiveTagDetails]
- class google.cloud.asset_v1.types.AnalyzerOrgPolicy(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
This organization policy message is a modified version of the one defined in the Organization Policy system. This message contains several fields defined in the original organization policy with some new fields for analysis purpose.
- attached_resource¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource where this organization policy is set.
Notice that some type of constraints are defined with default policy. This field will be empty for them.
- Type
- applied_resource¶
The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of an organization/folder/project resource where this organization policy applies to.
For any user defined org policies, this field has the same value as the [attached_resource] field. Only for default policy, this field has the different value.
- Type
- rules¶
List of rules for this organization policy.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzerOrgPolicy.Rule]
- inherit_from_parent¶
If
inherit_from_parent
is true, Rules set higher up in the hierarchy (up to the closest root) are inherited and present in the effective policy. If it is false, then no rules are inherited, and this policy becomes the effective root for evaluation.- Type
- reset¶
Ignores policies set above this resource and restores the default behavior of the constraint at this resource. This field can be set in policies for either list or boolean constraints. If set,
rules
must be empty andinherit_from_parent
must be set to false.- Type
- class Rule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
This rule message is a customized version of the one defined in the Organization Policy system. In addition to the fields defined in the original organization policy, it contains additional field(s) under specific circumstances to support analysis results.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- values¶
List of values to be used for this policy rule. This field can be set only in policies for list constraints.
This field is a member of oneof
kind
.
- allow_all¶
Setting this to true means that all values are allowed. This field can be set only in Policies for list constraints.
This field is a member of oneof
kind
.- Type
- deny_all¶
Setting this to true means that all values are denied. This field can be set only in Policies for list constraints.
This field is a member of oneof
kind
.- Type
- enforce¶
If
true
, then thePolicy
is enforced. Iffalse
, then any configuration is acceptable. This field can be set only in Policies for boolean constraints.This field is a member of oneof
kind
.- Type
- condition¶
The evaluating condition for this rule.
- Type
google.type.expr_pb2.Expr
- condition_evaluation¶
The condition evaluation result for this rule. Only populated if it meets all the following criteria:
There is a [condition][google.cloud.asset.v1.AnalyzerOrgPolicy.Rule.condition] defined for this rule.
This rule is within [AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.consolidated_policy][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.consolidated_policy], or [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.consolidated_policy][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.consolidated_policy] when the [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset] has [AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.governed_resource][google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.governed_resource].
- class StringValues(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The string values for the list constraints.
- class google.cloud.asset_v1.types.AnalyzerOrgPolicyConstraint(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The organization policy constraint definition.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- google_defined_constraint¶
The definition of the canned constraint defined by Google.
This field is a member of oneof
constraint_definition
.
- custom_constraint¶
The definition of the custom constraint.
This field is a member of oneof
constraint_definition
.
- class Constraint(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The definition of a constraint.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- name¶
The unique name of the constraint. Format of the name should be
constraints/{constraint_name}
For example,
constraints/compute.disableSerialPortAccess
.- Type
- description¶
Detailed description of what this
Constraint
controls as well as how and where it is enforced.- Type
- constraint_default¶
The evaluation behavior of this constraint in the absence of ‘Policy’.
- list_constraint¶
Defines this constraint as being a ListConstraint.
This field is a member of oneof
constraint_type
.
- boolean_constraint¶
Defines this constraint as being a BooleanConstraint.
This field is a member of oneof
constraint_type
.
- class BooleanConstraint(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A
Constraint
that is either enforced or not.For example a constraint
constraints/compute.disableSerialPortAccess
. If it is enforced on a VM instance, serial port connections will not be opened to that instance.
- class ConstraintDefault(value)[source]¶
Bases:
proto.enums.Enum
Specifies the default behavior in the absence of any
Policy
for theConstraint
. This must not beCONSTRAINT_DEFAULT_UNSPECIFIED
.- Values:
- CONSTRAINT_DEFAULT_UNSPECIFIED (0):
This is only used for distinguishing unset values and should never be used.
- ALLOW (1):
Indicate that all values are allowed for list constraints. Indicate that enforcement is off for boolean constraints.
- DENY (2):
Indicate that all values are denied for list constraints. Indicate that enforcement is on for boolean constraints.
- class ListConstraint(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A
Constraint
that allows or disallows a list of string values, which are configured by an organization’s policy administrator with aPolicy
.- supports_in¶
Indicates whether values grouped into categories can be used in
Policy.allowed_values
andPolicy.denied_values
. For example,"in:Python"
would match any value in the ‘Python’ group.- Type
- class CustomConstraint(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The definition of a custom constraint.
- name¶
Name of the constraint. This is unique within the organization. Format of the name should be
organizations/{organization_id}/customConstraints/{custom_constraint_id}
Example : “organizations/123/customConstraints/custom.createOnlyE2TypeVms”.
- Type
- resource_types¶
The Resource Instance type on which this policy applies to. Format will be of the form : “/” Example:
compute.googleapis.com/Instance
.
- Type
MutableSequence[str]
- method_types¶
All the operations being applied for this constraint.
- Type
MutableSequence[google.cloud.asset_v1.types.AnalyzerOrgPolicyConstraint.CustomConstraint.MethodType]
- condition¶
Organization Policy condition/expression. For example:
resource.instanceName.matches("[production|test]_.*_(\d)+")'
or,resource.management.auto_upgrade == true
- Type
- action_type¶
Allow or deny type.
- class ActionType(value)[source]¶
Bases:
proto.enums.Enum
Allow or deny type.
- Values:
- ACTION_TYPE_UNSPECIFIED (0):
Unspecified. Will results in user error.
- ALLOW (1):
Allowed action type.
- DENY (2):
Deny action type.
- class MethodType(value)[source]¶
Bases:
proto.enums.Enum
The operation in which this constraint will be applied. For example: If the constraint applies only when create VMs, the method_types will be “CREATE” only. If the constraint applied when create or delete VMs, the method_types will be “CREATE” and “DELETE”.
- Values:
- METHOD_TYPE_UNSPECIFIED (0):
Unspecified. Will results in user error.
- CREATE (1):
Constraint applied when creating the resource.
- UPDATE (2):
Constraint applied when updating the resource.
- DELETE (3):
Constraint applied when deleting the resource.
- class google.cloud.asset_v1.types.Asset(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An asset in Google Cloud. An asset can be any resource in the Google Cloud resource hierarchy, a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. IAM policy), or a relationship (e.g. an INSTANCE_TO_INSTANCEGROUP relationship). See Supported asset types for more information.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- update_time¶
The last update timestamp of an asset. update_time is updated when create/update/delete operation is performed.
- name¶
The full name of the asset. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
See Resource names for more information.
- Type
- asset_type¶
The type of the asset. Example:
compute.googleapis.com/Disk
See Supported asset types for more information.
- Type
- resource¶
A representation of the resource.
- iam_policy¶
A representation of the IAM policy set on a Google Cloud resource. There can be a maximum of one IAM policy set on any given resource. In addition, IAM policies inherit their granted access scope from any policies set on parent resources in the resource hierarchy. Therefore, the effectively policy is the union of both the policy set on this resource and each policy set on all of the resource’s ancestry resource levels in the hierarchy. See this topic for more information.
- Type
google.iam.v1.policy_pb2.Policy
- org_policy¶
A representation of an organization policy. There can be more than one organization policy with different constraints set on a given resource.
- Type
MutableSequence[google.cloud.orgpolicy.v1.orgpolicy_pb2.Policy]
- access_policy¶
Also refer to the access policy user guide.
This field is a member of oneof
access_context_policy
.- Type
google.identity.accesscontextmanager.v1.access_policy_pb2.AccessPolicy
- access_level¶
Also refer to the access level user guide.
This field is a member of oneof
access_context_policy
.- Type
google.identity.accesscontextmanager.v1.access_level_pb2.AccessLevel
- service_perimeter¶
Also refer to the service perimeter user guide.
This field is a member of oneof
access_context_policy
.- Type
google.identity.accesscontextmanager.v1.service_perimeter_pb2.ServicePerimeter
- os_inventory¶
A representation of runtime OS Inventory information. See this topic for more information.
- Type
google.cloud.osconfig_v1.types.Inventory
DEPRECATED. This field only presents for the purpose of backward-compatibility. The server will never generate responses with this field. The related assets of the asset of one relationship type. One asset only represents one type of relationship.
One related asset of the current asset.
- ancestors¶
The ancestry path of an asset in Google Cloud resource hierarchy, represented as a list of relative resource names. An ancestry path starts with the closest ancestor in the hierarchy and ends at root. If the asset is a project, folder, or organization, the ancestry path starts from the asset itself.
Example:
["projects/123456789", "folders/5432", "organizations/1234"]
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.AttachedResource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Attached resource representation, which is defined by the corresponding service provider. It represents an attached resource’s payload.
- asset_type¶
The type of this attached resource.
Example:
osconfig.googleapis.com/Inventory
You can find the supported attached asset types of each resource in this table:
https://cloud.google.com/asset-inventory/docs/supported-asset-types
- Type
- versioned_resources¶
Versioned resource representations of this attached resource. This is repeated because there could be multiple versions of the attached resource representations during version migration.
- Type
MutableSequence[google.cloud.asset_v1.types.VersionedResource]
- class google.cloud.asset_v1.types.BatchGetAssetsHistoryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Batch get assets history request.
- parent¶
Required. The relative name of the root asset. It can only be an organization number (such as “organizations/123”), a project ID (such as “projects/my-project-id”)”, or a project number (such as “projects/12345”).
- Type
- asset_names¶
A list of the full names of the assets. See: https://cloud.google.com/asset-inventory/docs/resource-name-format Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
.The request becomes a no-op if the asset name list is empty, and the max size of the asset name list is 100 in one request.
- Type
MutableSequence[str]
- content_type¶
Optional. The content type.
- read_time_window¶
Optional. The time window for the asset history. Both start_time and end_time are optional and if set, it must be after the current time minus 35 days. If end_time is not set, it is default to current timestamp. If start_time is not set, the snapshot of the assets at end_time will be returned. The returned results contain all temporal assets whose time window overlap with read_time_window.
- relationship_types¶
Optional. A list of relationship types to output, for example:
INSTANCE_TO_INSTANCEGROUP
. This field should only be specified if content_type=RELATIONSHIP.If specified: it outputs specified relationships’ history on the [asset_names]. It returns an error if any of the [relationship_types] doesn’t belong to the supported relationship types of the [asset_names] or if any of the [asset_names]’s types doesn’t belong to the source types of the [relationship_types].
Otherwise: it outputs the supported relationships’ history on the [asset_names] or returns an error if any of the [asset_names]’s types has no relationship support. See Introduction to Cloud Asset Inventory for all supported asset types and relationship types.
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.BatchGetAssetsHistoryResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Batch get assets history response.
- assets¶
A list of assets with valid time windows.
- Type
MutableSequence[google.cloud.asset_v1.types.TemporalAsset]
- class google.cloud.asset_v1.types.BatchGetEffectiveIamPoliciesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A request message for [AssetService.BatchGetEffectiveIamPolicies][google.cloud.asset.v1.AssetService.BatchGetEffectiveIamPolicies].
- scope¶
Required. Only IAM policies on or below the scope will be returned.
This can only be an organization number (such as “organizations/123”), a folder number (such as “folders/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”).
To know how to get organization ID, visit here.
To know how to get folder or project ID, visit here.
- Type
- names¶
Required. The names refer to the [full_resource_names] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of the asset types supported by search APIs. A maximum of 20 resources’ effective policies can be retrieved in a batch.
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.BatchGetEffectiveIamPoliciesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A response message for [AssetService.BatchGetEffectiveIamPolicies][google.cloud.asset.v1.AssetService.BatchGetEffectiveIamPolicies].
- policy_results¶
The effective policies for a batch of resources. Note that the results order is the same as the order of [BatchGetEffectiveIamPoliciesRequest.names][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesRequest.names]. When a resource does not have any effective IAM policies, its corresponding policy_result will contain empty [EffectiveIamPolicy.policies][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.policies].
- Type
MutableSequence[google.cloud.asset_v1.types.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy]
- class EffectiveIamPolicy(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The effective IAM policies on one resource.
- full_resource_name¶
The [full_resource_name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) for which the [policies][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.policies] are computed. This is one of the [BatchGetEffectiveIamPoliciesRequest.names][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesRequest.names] the caller provides in the request.
- Type
- policies¶
The effective policies for the [full_resource_name][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.full_resource_name].
These policies include the policy set on the [full_resource_name][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.full_resource_name] and those set on its parents and ancestors up to the [BatchGetEffectiveIamPoliciesRequest.scope][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesRequest.scope]. Note that these policies are not filtered according to the resource type of the [full_resource_name][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.full_resource_name].
These policies are hierarchically ordered by [PolicyInfo.attached_resource][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo.attached_resource] starting from [full_resource_name][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.full_resource_name] itself to its parents and ancestors, such that policies[i]’s [PolicyInfo.attached_resource][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo.attached_resource] is the child of policies[i+1]’s [PolicyInfo.attached_resource][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo.attached_resource], if policies[i+1] exists.
- class PolicyInfo(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The IAM policy and its attached resource.
- attached_resource¶
The full resource name the [policy][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo.policy] is directly attached to.
- Type
- policy¶
The IAM policy that’s directly attached to the [attached_resource][google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo.attached_resource].
- Type
google.iam.v1.policy_pb2.Policy
- class google.cloud.asset_v1.types.BigQueryDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A BigQuery destination for exporting assets to.
- dataset¶
Required. The BigQuery dataset in format “projects/projectId/datasets/datasetId”, to which the snapshot result should be exported. If this dataset does not exist, the export call returns an INVALID_ARGUMENT error. Setting the
contentType
forexportAssets
determines the schema of the BigQuery table. SettingseparateTablesPerAssetType
toTRUE
also influences the schema.- Type
- table¶
Required. The BigQuery table to which the snapshot result should be written. If this table does not exist, a new table with the given name will be created.
- Type
- force¶
If the destination table already exists and this flag is
TRUE
, the table will be overwritten by the contents of assets snapshot. If the flag isFALSE
or unset and the destination table already exists, the export call returns an INVALID_ARGUMEMT error.- Type
- partition_spec¶
[partition_spec] determines whether to export to partitioned table(s) and how to partition the data.
If [partition_spec] is unset or [partition_spec.partition_key] is unset or
PARTITION_KEY_UNSPECIFIED
, the snapshot results will be exported to non-partitioned table(s). [force] will decide whether to overwrite existing table(s).If [partition_spec] is specified. First, the snapshot results will be written to partitioned table(s) with two additional timestamp columns, readTime and requestTime, one of which will be the partition key. Secondly, in the case when any destination table already exists, it will first try to update existing table’s schema as necessary by appending additional columns. Then, if [force] is
TRUE
, the corresponding partition will be overwritten by the snapshot results (data in different partitions will remain intact); if [force] is unset orFALSE
, it will append the data. An error will be returned if the schema update or data appension fails.
- separate_tables_per_asset_type¶
If this flag is
TRUE
, the snapshot results will be written to one or multiple tables, each of which contains results of one asset type. The [force] and [partition_spec] fields will apply to each of them.Field [table] will be concatenated with “*” and the asset type names (see https://cloud.google.com/asset-inventory/docs/supported-asset-types for supported asset types) to construct per-asset-type table names, in which all non-alphanumeric characters like “.” and “/” will be substituted by “*”. Example: if field [table] is “mytable” and snapshot results contain “storage.googleapis.com/Bucket” assets, the corresponding table name will be “mytable_storage_googleapis_com_Bucket”. If any of these tables does not exist, a new table with the concatenated name will be created.
When [content_type] in the ExportAssetsRequest is
RESOURCE
, the schema of each table will include RECORD-type columns mapped to the nested fields in the Asset.resource.data field of that asset type (up to the 15 nested level BigQuery supports (https://cloud.google.com/bigquery/docs/nested-repeated#limitations)). The fields in >15 nested levels will be stored in JSON format string as a child column of its parent RECORD column.If error occurs when exporting to any table, the whole export call will return an error but the export results that already succeed will persist. Example: if exporting to table_type_A succeeds when exporting to table_type_B fails during one export call, the results in table_type_A will persist and there will not be partial results persisting in a table.
- Type
- class google.cloud.asset_v1.types.ConditionEvaluation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The condition evaluation.
- evaluation_value¶
The evaluation result.
- class EvaluationValue(value)[source]¶
Bases:
proto.enums.Enum
Value of this expression.
- Values:
- EVALUATION_VALUE_UNSPECIFIED (0):
Reserved for future use.
- TRUE (1):
The evaluation result is
true
.- FALSE (2):
The evaluation result is
false
.- CONDITIONAL (3):
The evaluation result is
conditional
when the condition expression contains variables that are either missing input values or have not been supported by Policy Analyzer yet.
- class google.cloud.asset_v1.types.ContentType(value)[source]¶
Bases:
proto.enums.Enum
Asset content type.
- Values:
- CONTENT_TYPE_UNSPECIFIED (0):
Unspecified content type.
- RESOURCE (1):
Resource metadata.
- IAM_POLICY (2):
The actual IAM policy set on a resource.
- ORG_POLICY (4):
The organization policy set on an asset.
- ACCESS_POLICY (5):
The Access Context Manager policy set on an asset.
- OS_INVENTORY (6):
The runtime OS Inventory information.
- RELATIONSHIP (7):
The related resources.
- class google.cloud.asset_v1.types.CreateFeedRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Create asset feed request.
- parent¶
Required. The name of the project/folder/organization where this feed should be created in. It can only be an organization number (such as “organizations/123”), a folder number (such as “folders/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”).
- Type
- feed_id¶
Required. This is the client-assigned asset feed identifier and it needs to be unique under a specific parent project/folder/organization.
- Type
- feed¶
Required. The feed details. The field
name
must be empty and it will be generated in the format of: projects/project_number/feeds/feed_id folders/folder_number/feeds/feed_id organizations/organization_number/feeds/feed_id
- class google.cloud.asset_v1.types.CreateSavedQueryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Request to create a saved query.
- parent¶
Required. The name of the project/folder/organization where this saved_query should be created in. It can only be an organization number (such as “organizations/123”), a folder number (such as “folders/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”).
- Type
- saved_query¶
Required. The saved_query details. The
name
field must be empty as it will be generated based on the parent and saved_query_id.
- saved_query_id¶
Required. The ID to use for the saved query, which must be unique in the specified parent. It will become the final component of the saved query’s resource name.
This value should be 4-63 characters, and valid characters are
[a-z][0-9]-
.Notice that this field is required in the saved query creation, and the
name
field of thesaved_query
will be ignored.- Type
- class google.cloud.asset_v1.types.DeleteFeedRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
- class google.cloud.asset_v1.types.DeleteSavedQueryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Request to delete a saved query.
- class google.cloud.asset_v1.types.EffectiveTagDetails(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The effective tags and the ancestor resources from which they were inherited.
- attached_resource¶
The full resource name of the ancestor from which an [effective_tag][] is inherited, according to tag inheritance.
This field is a member of oneof
_attached_resource
.- Type
- effective_tags¶
The effective tags inherited from the [attached_resource][google.cloud.asset.v1.EffectiveTagDetails.attached_resource]. Note that tags with the same key but different values may attach to resources at a different hierarchy levels. The lower hierarchy tag value will overwrite the higher hierarchy tag value of the same tag key. In this case, the tag value at the higher hierarchy level will be removed. For more information, see tag inheritance.
- Type
MutableSequence[google.cloud.asset_v1.types.Tag]
- class google.cloud.asset_v1.types.ExportAssetsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Export asset request.
- parent¶
Required. The relative name of the root asset. This can only be an organization number (such as “organizations/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”), or a folder number (such as “folders/123”).
- Type
- read_time¶
Timestamp to take an asset snapshot. This can only be set to a timestamp between the current time and the current time minus 35 days (inclusive). If not specified, the current time will be used. Due to delays in resource data collection and indexing, there is a volatile window during which running the same query may get different results.
- asset_types¶
A list of asset types to take a snapshot for. For example: “compute.googleapis.com/Disk”.
Regular expressions are also supported. For example:
“compute.googleapis.com.*” snapshots resources whose asset type starts with “compute.googleapis.com”.
“.*Instance” snapshots resources whose asset type ends with “Instance”.
“.*Instance.*” snapshots resources whose asset type contains “Instance”.
See RE2 for all supported regular expression syntax. If the regular expression does not match any supported asset type, an INVALID_ARGUMENT error will be returned.
If specified, only matching assets will be returned, otherwise, it will snapshot all asset types. See Introduction to Cloud Asset Inventory for all supported asset types.
- Type
MutableSequence[str]
- content_type¶
Asset content type. If not specified, no content but the asset name will be returned.
- output_config¶
Required. Output configuration indicating where the results will be output to.
- relationship_types¶
A list of relationship types to export, for example:
INSTANCE_TO_INSTANCEGROUP
. This field should only be specified if content_type=RELATIONSHIP.If specified: it snapshots specified relationships. It returns an error if any of the [relationship_types] doesn’t belong to the supported relationship types of the [asset_types] or if any of the [asset_types] doesn’t belong to the source types of the [relationship_types].
Otherwise: it snapshots the supported relationships for all [asset_types] or returns an error if any of the [asset_types] has no relationship support. An unspecified asset types field means all supported asset_types. See Introduction to Cloud Asset Inventory for all supported asset types and relationship types.
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.ExportAssetsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The export asset response. This message is returned by the [google.longrunning.Operations.GetOperation][google.longrunning.Operations.GetOperation] method in the returned [google.longrunning.Operation.response][google.longrunning.Operation.response] field.
- read_time¶
Time the snapshot was taken.
- output_config¶
Output configuration indicating where the results were output to.
- output_result¶
Output result indicating where the assets were exported to. For example, a set of actual Cloud Storage object URIs where the assets are exported to. The URIs can be different from what [output_config] has specified, as the service will split the output object into multiple ones once it exceeds a single Cloud Storage object limit.
- class google.cloud.asset_v1.types.Feed(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An asset feed used to export asset updates to a destinations. An asset feed filter controls what updates are exported. The asset feed must be created within a project, organization, or folder. Supported destinations are:
Pub/Sub topics.
- name¶
Required. The format will be projects/{project_number}/feeds/{client-assigned_feed_identifier} or folders/{folder_number}/feeds/{client-assigned_feed_identifier} or organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
The client-assigned feed identifier must be unique within the parent project/folder/organization.
- Type
- asset_names¶
A list of the full names of the assets to receive updates. You must specify either or both of asset_names and asset_types. Only asset updates matching specified asset_names or asset_types are exported to the feed. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
. For a list of the full names for supported asset types, see Resource name format.- Type
MutableSequence[str]
- asset_types¶
A list of types of the assets to receive updates. You must specify either or both of asset_names and asset_types. Only asset updates matching specified asset_names or asset_types are exported to the feed. Example:
"compute.googleapis.com/Disk"
For a list of all supported asset types, see Supported asset types.
- Type
MutableSequence[str]
- content_type¶
Asset content type. If not specified, no content but the asset name and type will be returned.
- feed_output_config¶
Required. Feed output configuration defining where the asset updates are published to.
- condition¶
A condition which determines whether an asset update should be published. If specified, an asset will be returned only when the expression evaluates to true. When set,
expression
field in theExpr
must be a valid [CEL expression] (https://github.com/google/cel-spec) on a TemporalAsset with nametemporal_asset
. Example: a Feed with expression (“temporal_asset.deleted == true”) will only publish Asset deletions. Other fields ofExpr
are optional.See our user guide for detailed instructions.
- Type
google.type.expr_pb2.Expr
- relationship_types¶
A list of relationship types to output, for example:
INSTANCE_TO_INSTANCEGROUP
. This field should only be specified if content_type=RELATIONSHIP.If specified: it outputs specified relationship updates on the [asset_names] or the [asset_types]. It returns an error if any of the [relationship_types] doesn’t belong to the supported relationship types of the [asset_names] or [asset_types], or any of the [asset_names] or the [asset_types] doesn’t belong to the source types of the [relationship_types].
Otherwise: it outputs the supported relationships of the types of [asset_names] and [asset_types] or returns an error if any of the [asset_names] or the [asset_types] has no replationship support. See Introduction to Cloud Asset Inventory for all supported asset types and relationship types.
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.FeedOutputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Output configuration for asset feed destination.
- class google.cloud.asset_v1.types.GcsDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A Cloud Storage location.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- uri¶
The URI of the Cloud Storage object. It’s the same URI that is used by gsutil. Example: “gs://bucket_name/object_name”. See Viewing and Editing Object Metadata for more information.
If the specified Cloud Storage object already exists and there is no hold, it will be overwritten with the exported result.
This field is a member of oneof
object_uri
.- Type
- uri_prefix¶
The URI prefix of all generated Cloud Storage objects. Example: “gs://bucket_name/object_name_prefix”. Each object URI is in format: “gs://bucket_name/object_name_prefix// and only contains assets for that type. starts from 0. Example: “gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0” is the first shard of output objects containing all compute.googleapis.com/Disk assets. An INVALID_ARGUMENT error will be returned if file with the same name “gs://bucket_name/object_name_prefix” already exists.
This field is a member of oneof
object_uri
.- Type
- class google.cloud.asset_v1.types.GcsOutputResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A Cloud Storage output result.
- class google.cloud.asset_v1.types.GetFeedRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Get asset feed request.
- class google.cloud.asset_v1.types.GetSavedQueryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Request to get a saved query.
- class google.cloud.asset_v1.types.IamPolicyAnalysisOutputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Output configuration for export IAM policy analysis destination.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- class BigQueryDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A BigQuery destination.
- dataset¶
Required. The BigQuery dataset in format “projects/projectId/datasets/datasetId”, to which the analysis results should be exported. If this dataset does not exist, the export call will return an INVALID_ARGUMENT error.
- Type
- table_prefix¶
Required. The prefix of the BigQuery tables to which the analysis results will be written. Tables will be created based on this table_prefix if not exist:
<table_prefix>_analysis table will contain export operation’s metadata.
<table_prefix>_analysis_result will contain all the [IamPolicyAnalysisResult][google.cloud.asset.v1.IamPolicyAnalysisResult]. When [partition_key] is specified, both tables will be partitioned based on the [partition_key].
- Type
- partition_key¶
The partition key for BigQuery partitioned table.
- write_disposition¶
Optional. Specifies the action that occurs if the destination table or partition already exists. The following values are supported:
WRITE_TRUNCATE: If the table or partition already exists, BigQuery overwrites the entire table or all the partitions data.
WRITE_APPEND: If the table or partition already exists, BigQuery appends the data to the table or the latest partition.
WRITE_EMPTY: If the table already exists and contains data, an error is returned.
The default value is WRITE_APPEND. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Details are at https://cloud.google.com/bigquery/docs/loading-data-local#appending_to_or_overwriting_a_table_using_a_local_file.
- Type
- class PartitionKey(value)[source]¶
Bases:
proto.enums.Enum
This enum determines the partition key column for the bigquery tables. Partitioning can improve query performance and reduce query cost by filtering partitions. Refer to https://cloud.google.com/bigquery/docs/partitioned-tables for details.
- Values:
- PARTITION_KEY_UNSPECIFIED (0):
Unspecified partition key. Tables won’t be partitioned using this option.
- REQUEST_TIME (1):
The time when the request is received. If specified as partition key, the result table(s) is partitoned by the RequestTime column, an additional timestamp column representing when the request was received.
- class GcsDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A Cloud Storage location.
- uri¶
Required. The URI of the Cloud Storage object. It’s the same URI that is used by gsutil. Example: “gs://bucket_name/object_name”. See Viewing and Editing Object Metadata for more information.
If the specified Cloud Storage object already exists and there is no hold, it will be overwritten with the analysis result.
- Type
- class google.cloud.asset_v1.types.IamPolicyAnalysisQuery(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
IAM policy analysis query message.
- scope¶
Required. The relative name of the root asset. Only resources and IAM policies within the scope will be analyzed.
This can only be an organization number (such as “organizations/123”), a folder number (such as “folders/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”).
To know how to get organization ID, visit here.
To know how to get folder or project ID, visit here.
- Type
- resource_selector¶
Optional. Specifies a resource for analysis.
- identity_selector¶
Optional. Specifies an identity for analysis.
- access_selector¶
Optional. Specifies roles or permissions for analysis. This is optional.
- options¶
Optional. The query options.
- condition_context¶
Optional. The hypothetical context for IAM conditions evaluation.
- class AccessSelector(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Specifies roles and/or permissions to analyze, to determine both the identities possessing them and the resources they control. If multiple values are specified, results will include roles or permissions matching any of them. The total number of roles and permissions should be equal or less than 10.
- class ConditionContext(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The IAM conditions context.
- class IdentitySelector(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Specifies an identity for which to determine resource access, based on roles assigned either directly to them or to the groups they belong to, directly or indirectly.
- identity¶
Required. The identity appear in the form of principals in IAM policy binding.
The examples of supported forms are: “user:mike@example.com”, “group:admins@example.com”, “domain:google.com”, “serviceAccount:my-project-id@appspot.gserviceaccount.com”.
Notice that wildcard characters (such as * and ?) are not supported. You must give a specific identity.
- Type
- class Options(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Contains query options.
- expand_groups¶
Optional. If true, the identities section of the result will expand any Google groups appearing in an IAM policy binding.
If [IamPolicyAnalysisQuery.identity_selector][google.cloud.asset.v1.IamPolicyAnalysisQuery.identity_selector] is specified, the identity in the result will be determined by the selector, and this flag is not allowed to set.
If true, the default max expansion per group is 1000 for AssetService.AnalyzeIamPolicy][].
Default is false.
- Type
- expand_roles¶
Optional. If true, the access section of result will expand any roles appearing in IAM policy bindings to include their permissions.
If [IamPolicyAnalysisQuery.access_selector][google.cloud.asset.v1.IamPolicyAnalysisQuery.access_selector] is specified, the access section of the result will be determined by the selector, and this flag is not allowed to set.
Default is false.
- Type
- expand_resources¶
Optional. If true and [IamPolicyAnalysisQuery.resource_selector][google.cloud.asset.v1.IamPolicyAnalysisQuery.resource_selector] is not specified, the resource section of the result will expand any resource attached to an IAM policy to include resources lower in the resource hierarchy.
For example, if the request analyzes for which resources user A has permission P, and the results include an IAM policy with P on a Google Cloud folder, the results will also include resources in that folder with permission P.
If true and [IamPolicyAnalysisQuery.resource_selector][google.cloud.asset.v1.IamPolicyAnalysisQuery.resource_selector] is specified, the resource section of the result will expand the specified resource to include resources lower in the resource hierarchy. Only project or lower resources are supported. Folder and organization resources cannot be used together with this option.
For example, if the request analyzes for which users have permission P on a Google Cloud project with this option enabled, the results will include all users who have permission P on that project or any lower resource.
If true, the default max expansion per resource is 1000 for AssetService.AnalyzeIamPolicy][] and 100000 for AssetService.AnalyzeIamPolicyLongrunning][].
Default is false.
- Type
- output_resource_edges¶
Optional. If true, the result will output the relevant parent/child relationships between resources. Default is false.
- Type
- output_group_edges¶
Optional. If true, the result will output the relevant membership relationships between groups and other groups, and between groups and principals. Default is false.
- Type
- analyze_service_account_impersonation¶
Optional. If true, the response will include access analysis from identities to resources via service account impersonation. This is a very expensive operation, because many derived queries will be executed. We highly recommend you use [AssetService.AnalyzeIamPolicyLongrunning][google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning] RPC instead.
For example, if the request analyzes for which resources user A has permission P, and there’s an IAM policy states user A has iam.serviceAccounts.getAccessToken permission to a service account SA, and there’s another IAM policy states service account SA has permission P to a Google Cloud folder F, then user A potentially has access to the Google Cloud folder F. And those advanced analysis results will be included in [AnalyzeIamPolicyResponse.service_account_impersonation_analysis][google.cloud.asset.v1.AnalyzeIamPolicyResponse.service_account_impersonation_analysis].
Another example, if the request analyzes for who has permission P to a Google Cloud folder F, and there’s an IAM policy states user A has iam.serviceAccounts.actAs permission to a service account SA, and there’s another IAM policy states service account SA has permission P to the Google Cloud folder F, then user A potentially has access to the Google Cloud folder F. And those advanced analysis results will be included in [AnalyzeIamPolicyResponse.service_account_impersonation_analysis][google.cloud.asset.v1.AnalyzeIamPolicyResponse.service_account_impersonation_analysis].
Only the following permissions are considered in this analysis:
iam.serviceAccounts.actAs
iam.serviceAccounts.signBlob
iam.serviceAccounts.signJwt
iam.serviceAccounts.getAccessToken
iam.serviceAccounts.getOpenIdToken
iam.serviceAccounts.implicitDelegation
Default is false.
- Type
- class ResourceSelector(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Specifies the resource to analyze for access policies, which may be set directly on the resource, or on ancestors such as organizations, folders or projects.
- full_resource_name¶
Required. The [full resource name] (https://cloud.google.com/asset-inventory/docs/resource-name-format) of a resource of supported resource types.
- Type
- class google.cloud.asset_v1.types.IamPolicyAnalysisResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
IAM Policy analysis result, consisting of one IAM policy binding and derived access control lists.
- attached_resource_full_name¶
The full resource name of the resource to which the [iam_binding][google.cloud.asset.v1.IamPolicyAnalysisResult.iam_binding] policy attaches.
- Type
- iam_binding¶
The IAM policy binding under analysis.
- Type
google.iam.v1.policy_pb2.Binding
- access_control_lists¶
The access control lists derived from the [iam_binding][google.cloud.asset.v1.IamPolicyAnalysisResult.iam_binding] that match or potentially match resource and access selectors specified in the request.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.AccessControlList]
- identity_list¶
The identity list derived from members of the [iam_binding][google.cloud.asset.v1.IamPolicyAnalysisResult.iam_binding] that match or potentially match identity selector specified in the request.
- fully_explored¶
Represents whether all analyses on the [iam_binding][google.cloud.asset.v1.IamPolicyAnalysisResult.iam_binding] have successfully finished.
- Type
- class Access(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An IAM role or permission under analysis.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- analysis_state¶
The analysis state of this access.
- class AccessControlList(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An access control list, derived from the above IAM policy binding, which contains a set of resources and accesses. May include one item from each set to compose an access control entry.
NOTICE that there could be multiple access control lists for one IAM policy binding. The access control lists are created based on resource and access combinations.
For example, assume we have the following cases in one IAM policy binding:
Permission P1 and P2 apply to resource R1 and R2;
Permission P3 applies to resource R2 and R3;
This will result in the following access control lists:
AccessControlList 1: [R1, R2], [P1, P2]
AccessControlList 2: [R2, R3], [P3]
- resources¶
The resources that match one of the following conditions:
The resource_selector, if it is specified in request;
Otherwise, resources reachable from the policy attached resource.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.Resource]
- accesses¶
The accesses that match one of the following conditions:
The access_selector, if it is specified in request;
Otherwise, access specifiers reachable from the policy binding’s role.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.Access]
- resource_edges¶
Resource edges of the graph starting from the policy attached resource to any descendant resources. The [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node] contains the full resource name of a parent resource and [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node] contains the full resource name of a child resource. This field is present only if the output_resource_edges option is enabled in request.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.Edge]
- condition_evaluation¶
Condition evaluation for this AccessControlList, if there is a condition defined in the above IAM policy binding.
- class Edge(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A directional edge.
- source_node¶
The source node of the edge. For example, it could be a full resource name for a resource node or an email of an identity.
- Type
- class Identity(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An identity under analysis.
- name¶
The identity of members, formatted as appear in an IAM policy binding. For example, they might be formatted like the following:
user:foo@google.com
group:group1@google.com
serviceAccount:s1@prj1.iam.gserviceaccount.com
projectOwner:some_project_id
domain:google.com
allUsers
- Type
- analysis_state¶
The analysis state of this identity.
- class IdentityList(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The identities and group edges.
- identities¶
Only the identities that match one of the following conditions will be presented:
The identity_selector, if it is specified in request;
Otherwise, identities reachable from the policy binding’s members.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.Identity]
- group_edges¶
Group identity edges of the graph starting from the binding’s group members to any node of the [identities][google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList.identities]. The [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node] contains a group, such as
group:parent@google.com
. The [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node] contains a member of the group, such asgroup:child@google.com
oruser:foo@google.com
. This field is present only if the output_group_edges option is enabled in request.- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicyAnalysisResult.Edge]
- class Resource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A Google Cloud resource under analysis.
- full_resource_name¶
-
- Type
- analysis_state¶
The analysis state of this resource.
- class google.cloud.asset_v1.types.IamPolicyAnalysisState(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Represents the detailed state of an entity under analysis, such as a resource, an identity or an access.
- code¶
The Google standard error code that best describes the state. For example:
OK means the analysis on this entity has been successfully finished;
PERMISSION_DENIED means an access denied error is encountered;
DEADLINE_EXCEEDED means the analysis on this entity hasn’t been started in time;
- Type
google.rpc.code_pb2.Code
- class google.cloud.asset_v1.types.IamPolicySearchResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A result of IAM Policy search, containing information of an IAM policy.
- resource¶
The full resource name of the resource associated with this IAM policy. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
. See Cloud Asset Inventory Resource Name Format for more information.To search against the
resource
:use a field query. Example:
resource:organizations/123
- Type
- asset_type¶
The type of the resource associated with this IAM policy. Example:
compute.googleapis.com/Disk
.To search against the
asset_type
:specify the
asset_types
field in your search request.
- Type
- project¶
The project that the associated Google Cloud resource belongs to, in the form of projects/{PROJECT_NUMBER}. If an IAM policy is set on a resource (like VM instance, Cloud Storage bucket), the project field will indicate the project that contains the resource. If an IAM policy is set on a folder or orgnization, this field will be empty.
To search against the
project
:specify the
scope
field as this project in your search request.
- Type
- folders¶
The folder(s) that the IAM policy belongs to, in the form of folders/{FOLDER_NUMBER}. This field is available when the IAM policy belongs to one or more folders.
To search against
folders
:use a field query. Example:
folders:(123 OR 456)
use a free text query. Example:
123
specify the
scope
field as this folder in your search request.
- Type
MutableSequence[str]
- organization¶
The organization that the IAM policy belongs to, in the form of organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM policy belongs to an organization.
To search against
organization
:use a field query. Example:
organization:123
use a free text query. Example:
123
specify the
scope
field as this organization in your search request.
- Type
- policy¶
The IAM policy directly set on the given resource. Note that the original IAM policy can contain multiple bindings. This only contains the bindings that match the given query. For queries that don’t contain a constrain on policies (e.g., an empty query), this contains all the bindings.
To search against the
policy
bindings:use a field query:
query by the policy contained members. Example:
policy:amy@gmail.com
query by the policy contained roles. Example:
policy:roles/compute.admin
query by the policy contained roles’ included permissions. Example:
policy.role.permissions:compute.instances.create
- Type
google.iam.v1.policy_pb2.Policy
- explanation¶
Explanation about the IAM policy search result. It contains additional information to explain why the search result matches the query.
- class Explanation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Explanation about the IAM policy search result.
- matched_permissions¶
The map from roles to their included permissions that match the permission query (i.e., a query containing
policy.role.permissions:
). Example: if querypolicy.role.permissions:compute.disk.get
matches a policy binding that contains owner role, the matched_permissions will be{"roles/owner": ["compute.disk.get"]}
. The roles can also be found in the returnedpolicy
bindings. Note that the map is populated only for requests with permission queries.- Type
MutableMapping[str, google.cloud.asset_v1.types.IamPolicySearchResult.Explanation.Permissions]
- class MatchedPermissionsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)¶
Bases:
proto.message.Message
- class Permissions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
IAM permissions
- class google.cloud.asset_v1.types.ListAssetsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
ListAssets request.
- parent¶
Required. Name of the organization, folder, or project the assets belong to. Format: “organizations/[organization-number]” (such as “organizations/123”), “projects/[project-id]” (such as “projects/my-project-id”), “projects/[project-number]” (such as “projects/12345”), or “folders/[folder-number]” (such as “folders/12345”).
- Type
- read_time¶
Timestamp to take an asset snapshot. This can only be set to a timestamp between the current time and the current time minus 35 days (inclusive). If not specified, the current time will be used. Due to delays in resource data collection and indexing, there is a volatile window during which running the same query may get different results.
- asset_types¶
A list of asset types to take a snapshot for. For example: “compute.googleapis.com/Disk”.
Regular expression is also supported. For example:
“compute.googleapis.com.*” snapshots resources whose asset type starts with “compute.googleapis.com”.
“.*Instance” snapshots resources whose asset type ends with “Instance”.
“.*Instance.*” snapshots resources whose asset type contains “Instance”.
See RE2 for all supported regular expression syntax. If the regular expression does not match any supported asset type, an INVALID_ARGUMENT error will be returned.
If specified, only matching assets will be returned, otherwise, it will snapshot all asset types. See Introduction to Cloud Asset Inventory for all supported asset types.
- Type
MutableSequence[str]
- content_type¶
Asset content type. If not specified, no content but the asset name will be returned.
- page_size¶
The maximum number of assets to be returned in a single response. Default is 100, minimum is 1, and maximum is 1000.
- Type
- page_token¶
The
next_page_token
returned from the previousListAssetsResponse
, or unspecified for the firstListAssetsRequest
. It is a continuation of a priorListAssets
call, and the API should return the next page of assets.- Type
- relationship_types¶
A list of relationship types to output, for example:
INSTANCE_TO_INSTANCEGROUP
. This field should only be specified if content_type=RELATIONSHIP.If specified: it snapshots specified relationships. It returns an error if any of the [relationship_types] doesn’t belong to the supported relationship types of the [asset_types] or if any of the [asset_types] doesn’t belong to the source types of the [relationship_types].
Otherwise: it snapshots the supported relationships for all [asset_types] or returns an error if any of the [asset_types] has no relationship support. An unspecified asset types field means all supported asset_types. See Introduction to Cloud Asset Inventory for all supported asset types and relationship types.
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.ListAssetsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
ListAssets response.
- read_time¶
Time the snapshot was taken.
- assets¶
Assets.
- Type
MutableSequence[google.cloud.asset_v1.types.Asset]
- class google.cloud.asset_v1.types.ListFeedsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
List asset feeds request.
- class google.cloud.asset_v1.types.ListFeedsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
- feeds¶
A list of feeds.
- Type
MutableSequence[google.cloud.asset_v1.types.Feed]
- class google.cloud.asset_v1.types.ListSavedQueriesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Request to list saved queries.
- parent¶
Required. The parent project/folder/organization whose savedQueries are to be listed. It can only be using project/folder/organization number (such as “folders/12345”)”, or a project ID (such as “projects/my-project-id”).
- Type
- filter¶
Optional. The expression to filter resources. The expression is a list of zero or more restrictions combined via logical operators
AND
andOR
. WhenAND
andOR
are both used in the expression, parentheses must be appropriately used to group the combinations. The expression may also contain regular expressions.See https://google.aip.dev/160 for more information on the grammar.
- Type
- page_size¶
Optional. The maximum number of saved queries to return per page. The service may return fewer than this value. If unspecified, at most 50 will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
- Type
- class google.cloud.asset_v1.types.ListSavedQueriesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Response of listing saved queries.
- saved_queries¶
A list of savedQueries.
- Type
MutableSequence[google.cloud.asset_v1.types.SavedQuery]
- class google.cloud.asset_v1.types.MoveAnalysis(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A message to group the analysis information.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- display_name¶
The user friendly display name of the analysis. E.g. IAM, organization policy etc.
- Type
- class google.cloud.asset_v1.types.MoveAnalysisResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An analysis result including blockers and warnings.
- blockers¶
Blocking information that would prevent the target resource from moving to the specified destination at runtime.
- Type
MutableSequence[google.cloud.asset_v1.types.MoveImpact]
- warnings¶
Warning information indicating that moving the target resource to the specified destination might be unsafe. This can include important policy information and configuration changes, but will not block moves at runtime.
- Type
MutableSequence[google.cloud.asset_v1.types.MoveImpact]
- class google.cloud.asset_v1.types.MoveImpact(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A message to group impacts of moving the target resource.
- class google.cloud.asset_v1.types.OutputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Output configuration for export assets destination.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- class google.cloud.asset_v1.types.OutputResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Output result of export assets.
- class google.cloud.asset_v1.types.PartitionSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Specifications of BigQuery partitioned table as export destination.
- partition_key¶
The partition key for BigQuery partitioned table.
- class PartitionKey(value)[source]¶
Bases:
proto.enums.Enum
This enum is used to determine the partition key column when exporting assets to BigQuery partitioned table(s). Note that, if the partition key is a timestamp column, the actual partition is based on its date value (expressed in UTC. see details in https://cloud.google.com/bigquery/docs/partitioned-tables#date_timestamp_partitioned_tables).
- Values:
- PARTITION_KEY_UNSPECIFIED (0):
Unspecified partition key. If used, it means using non-partitioned table.
- READ_TIME (1):
The time when the snapshot is taken. If specified as partition key, the result table(s) is partitoned by the additional timestamp column, readTime. If [read_time] in ExportAssetsRequest is specified, the readTime column’s value will be the same as it. Otherwise, its value will be the current time that is used to take the snapshot.
- REQUEST_TIME (2):
The time when the request is received and started to be processed. If specified as partition key, the result table(s) is partitoned by the requestTime column, an additional timestamp column representing when the request was received.
- class google.cloud.asset_v1.types.PubsubDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A Pub/Sub destination.
- class google.cloud.asset_v1.types.QueryAssetsOutputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Output configuration query assets.
- bigquery_destination¶
BigQuery destination where the query results will be saved.
- class BigQueryDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
BigQuery destination.
- dataset¶
Required. The BigQuery dataset where the query results will be saved. It has the format of “projects/{projectId}/datasets/{datasetId}”.
- Type
- table¶
Required. The BigQuery table where the query results will be saved. If this table does not exist, a new table with the given name will be created.
- Type
- write_disposition¶
Specifies the action that occurs if the destination table or partition already exists. The following values are supported:
WRITE_TRUNCATE: If the table or partition already exists, BigQuery overwrites the entire table or all the partitions data.
WRITE_APPEND: If the table or partition already exists, BigQuery appends the data to the table or the latest partition.
WRITE_EMPTY: If the table already exists and contains data, a ‘duplicate’ error is returned in the job result.
The default value is WRITE_EMPTY.
- Type
- class google.cloud.asset_v1.types.QueryAssetsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
QueryAssets request.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- parent¶
Required. The relative name of the root asset. This can only be an organization number (such as “organizations/123”), a project ID (such as “projects/my-project-id”), or a project number (such as “projects/12345”), or a folder number (such as “folders/123”).
Only assets belonging to the
parent
will be returned.- Type
- statement¶
Optional. A SQL statement that’s compatible with BigQuery SQL.
This field is a member of oneof
query
.- Type
- job_reference¶
Optional. Reference to the query job, which is from the
QueryAssetsResponse
of previousQueryAssets
call.This field is a member of oneof
query
.- Type
- page_size¶
Optional. The maximum number of rows to return in the results. Responses are limited to 10 MB and 1000 rows.
By default, the maximum row count is 1000. When the byte or row count limit is reached, the rest of the query results will be paginated.
The field will be ignored when [output_config] is specified.
- Type
- page_token¶
Optional. A page token received from previous
QueryAssets
.The field will be ignored when [output_config] is specified.
- Type
- timeout¶
Optional. Specifies the maximum amount of time that the client is willing to wait for the query to complete. By default, this limit is 5 min for the first query, and 1 minute for the following queries. If the query is complete, the
done
field in theQueryAssetsResponse
is true, otherwise false.Like BigQuery jobs.query API The call is not guaranteed to wait for the specified timeout; it typically returns after around 200 seconds (200,000 milliseconds), even if the query is not complete.
The field will be ignored when [output_config] is specified.
- read_time_window¶
Optional. [start_time] is required. [start_time] must be less than [end_time] Defaults [end_time] to now if [start_time] is set and [end_time] isn’t. Maximum permitted time range is 7 days.
This field is a member of oneof
time
.
- read_time¶
Optional. Queries cloud assets as they appeared at the specified point in time.
This field is a member of oneof
time
.
- output_config¶
Optional. Destination where the query results will be saved.
When this field is specified, the query results won’t be saved in the [QueryAssetsResponse.query_result]. Instead [QueryAssetsResponse.output_config] will be set.
Meanwhile, [QueryAssetsResponse.job_reference] will be set and can be used to check the status of the query job when passed to a following [QueryAssets] API call.
- class google.cloud.asset_v1.types.QueryAssetsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
QueryAssets response.
This message has oneof fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.
- done¶
The query response, which can be either an
error
or a validresponse
.If
done
==false
and the query result is being saved in an output, the output_config field will be set. Ifdone
==true
, exactly one oferror
,query_result
oroutput_config
will be set. [done] is unset unless the [QueryAssetsResponse] contains a [QueryAssetsResponse.job_reference].- Type
- class google.cloud.asset_v1.types.QueryResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Execution results of the query.
The result is formatted as rows represented by BigQuery compatible [schema]. When pagination is necessary, it will contains the page token to retrieve the results of following pages.
- rows¶
Each row hold a query result in the format of
Struct
.- Type
MutableSequence[google.protobuf.struct_pb2.Struct]
- schema¶
Describes the format of the [rows].
- class google.cloud.asset_v1.types.RelatedAsset(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An asset identifier in Google Cloud which contains its name, type and ancestors. An asset can be any resource in the Google Cloud resource hierarchy, a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. IAM policy). See Supported asset types for more information.
- asset¶
The full name of the asset. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
See Resource names for more information.
- Type
- asset_type¶
The type of the asset. Example:
compute.googleapis.com/Disk
See Supported asset types for more information.
- Type
- ancestors¶
The ancestors of an asset in Google Cloud resource hierarchy, represented as a list of relative resource names. An ancestry path starts with the closest ancestor in the hierarchy and ends at root.
Example:
["projects/123456789", "folders/5432", "organizations/1234"]
- Type
MutableSequence[str]
- class google.cloud.asset_v1.types.RelatedAssets(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
DEPRECATED. This message only presents for the purpose of backward-compatibility. The server will never populate this message in responses. The detailed related assets with the
relationship_type
.- relationship_attributes¶
The detailed relationship attributes.
- assets¶
The peer resources of the relationship.
- Type
MutableSequence[google.cloud.asset_v1.types.RelatedAsset]
- class google.cloud.asset_v1.types.RelatedResource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The detailed related resource.
- class google.cloud.asset_v1.types.RelatedResources(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The related resources of the primary resource.
The detailed related resources of the primary resource.
- Type
MutableSequence[google.cloud.asset_v1.types.RelatedResource]
- class google.cloud.asset_v1.types.RelationshipAttributes(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
DEPRECATED. This message only presents for the purpose of backward-compatibility. The server will never populate this message in responses. The relationship attributes which include
type
,source_resource_type
,target_resource_type
andaction
.
- class google.cloud.asset_v1.types.Resource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A representation of a Google Cloud resource.
- discovery_document_uri¶
The URL of the discovery document containing the resource’s JSON schema. Example:
https://www.googleapis.com/discovery/v1/apis/compute/v1/rest
This value is unspecified for resources that do not have an API based on a discovery document, such as Cloud Bigtable.
- Type
- discovery_name¶
The JSON schema name listed in the discovery document. Example:
Project
This value is unspecified for resources that do not have an API based on a discovery document, such as Cloud Bigtable.
- Type
- resource_url¶
The REST URL for accessing the resource. An HTTP
GET
request using this URL returns the resource itself. Example:https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123
This value is unspecified for resources without a REST API.
- Type
- parent¶
The full name of the immediate parent of this resource. See Resource Names for more information.
For Google Cloud assets, this value is the parent resource defined in the IAM policy hierarchy. Example:
//cloudresourcemanager.googleapis.com/projects/my_project_123
- Type
- data¶
The content of the resource, in which some sensitive fields are removed and may not be present.
- location¶
The location of the resource in Google Cloud, such as its zone and region. For more information, see https://cloud.google.com/about/locations/.
- Type
- class google.cloud.asset_v1.types.ResourceSearchResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A result of Resource Search, containing information of a cloud resource.
- name¶
The full resource name of this resource. Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
. See Cloud Asset Inventory Resource Name Format for more information.To search against the
name
:Use a field query. Example:
name:instance1
Use a free text query. Example:
instance1
- Type
- asset_type¶
The type of this resource. Example:
compute.googleapis.com/Disk
.To search against the
asset_type
:Specify the
asset_type
field in your search request.
- Type
- project¶
The project that this resource belongs to, in the form of projects/{PROJECT_NUMBER}. This field is available when the resource belongs to a project.
To search against
project
:Use a field query. Example:
project:12345
Use a free text query. Example:
12345
Specify the
scope
field as this project in your search request.
- Type
- folders¶
The folder(s) that this resource belongs to, in the form of folders/{FOLDER_NUMBER}. This field is available when the resource belongs to one or more folders.
To search against
folders
:Use a field query. Example:
folders:(123 OR 456)
Use a free text query. Example:
123
Specify the
scope
field as this folder in your search request.
- Type
MutableSequence[str]
- organization¶
The organization that this resource belongs to, in the form of organizations/{ORGANIZATION_NUMBER}. This field is available when the resource belongs to an organization.
To search against
organization
:Use a field query. Example:
organization:123
Use a free text query. Example:
123
Specify the
scope
field as this organization in your search request.
- Type
- display_name¶
The display name of this resource. This field is available only when the resource’s Protobuf contains it.
To search against the
display_name
:Use a field query. Example:
displayName:"My Instance"
Use a free text query. Example:
"My Instance"
- Type
- description¶
One or more paragraphs of text description of this resource. Maximum length could be up to 1M bytes. This field is available only when the resource’s Protobuf contains it.
To search against the
description
:Use a field query. Example:
description:"important instance"
Use a free text query. Example:
"important instance"
- Type
- location¶
Location can be
global
, regional likeus-east1
, or zonal likeus-west1-b
. This field is available only when the resource’s Protobuf contains it.To search against the
location
:Use a field query. Example:
location:us-west*
Use a free text query. Example:
us-west*
- Type
- labels¶
User labels associated with this resource. See Labelling and grouping Google Cloud resources for more information. This field is available only when the resource’s Protobuf contains it.
To search against the
labels
:Use a field query:
query on any label’s key or value. Example:
labels:prod
query by a given label. Example:
labels.env:prod
query by a given label’s existence. Example:
labels.env:*
Use a free text query. Example:
prod
- network_tags¶
Network tags associated with this resource. Like labels, network tags are a type of annotations used to group Google Cloud resources. See Labelling Google Cloud resources for more information. This field is available only when the resource’s Protobuf contains it.
To search against the
network_tags
:Use a field query. Example:
networkTags:internal
Use a free text query. Example:
internal
- Type
MutableSequence[str]
- kms_key¶
The Cloud KMS CryptoKey name or CryptoKeyVersion name.
This field only presents for the purpose of backward compatibility. Use the
kms_keys
field to retrieve Cloud KMS key information. This field is available only when the resource’s Protobuf contains it and will only be populated for these resource types for backward compatible purposes.To search against the
kms_key
:Use a field query. Example:
kmsKey:key
Use a free text query. Example:
key
- Type
- kms_keys¶
The Cloud KMS CryptoKey names or CryptoKeyVersion names. This field is available only when the resource’s Protobuf contains it.
To search against the
kms_keys
:Use a field query. Example:
kmsKeys:key
Use a free text query. Example:
key
- Type
MutableSequence[str]
- create_time¶
The create timestamp of this resource, at which the resource was created. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource’s Protobuf contains it.
To search against
create_time
:Use a field query.
value in seconds since unix epoch. Example:
createTime > 1609459200
value in date string. Example:
createTime > 2021-01-01
value in date-time string (must be quoted). Example:
createTime > "2021-01-01T00:00:00"
- update_time¶
The last update timestamp of this resource, at which the resource was last modified or deleted. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource’s Protobuf contains it.
To search against
update_time
:Use a field query.
value in seconds since unix epoch. Example:
updateTime < 1609459200
value in date string. Example:
updateTime < 2021-01-01
value in date-time string (must be quoted). Example:
updateTime < "2021-01-01T00:00:00"
- state¶
The state of this resource. Different resources types have different state definitions that are mapped from various fields of different resource types. This field is available only when the resource’s Protobuf contains it.
Example: If the resource is an instance provided by Compute Engine, its state will include PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. See
status
definition in API Reference. If the resource is a project provided by Resource Manager, its state will include LIFECYCLE_STATE_UNSPECIFIED, ACTIVE, DELETE_REQUESTED and DELETE_IN_PROGRESS. SeelifecycleState
definition in API Reference.To search against the
state
:Use a field query. Example:
state:RUNNING
Use a free text query. Example:
RUNNING
- Type
- additional_attributes¶
The additional searchable attributes of this resource. The attributes may vary from one resource type to another. Examples:
projectId
for Project,dnsName
for DNS ManagedZone. This field contains a subset of the resource metadata fields that are returned by the List or Get APIs provided by the corresponding Google Cloud service (e.g., Compute Engine). see API references and supported searchable attributes to see which fields are included.You can search values of these fields through free text search. However, you should not consume the field programically as the field names and values may change as the Google Cloud service updates to a new incompatible API version.
To search against the
additional_attributes
:Use a free text query to match the attributes values. Example: to search
additional_attributes = { dnsName: "foobar" }
, you can issue a queryfoobar
.
- parent_full_resource_name¶
The full resource name of this resource’s parent, if it has one. To search against the
parent_full_resource_name
:Use a field query. Example:
parentFullResourceName:"project-name"
Use a free text query. Example:
project-name
- Type
- versioned_resources¶
Versioned resource representations of this resource. This is repeated because there could be multiple versions of resource representations during version migration.
This
versioned_resources
field is not searchable. Some attributes of the resource representations are exposed inadditional_attributes
field, so as to allow users to search on them.- Type
MutableSequence[google.cloud.asset_v1.types.VersionedResource]
- attached_resources¶
Attached resources of this resource. For example, an OSConfig Inventory is an attached resource of a Compute Instance. This field is repeated because a resource could have multiple attached resources.
This
attached_resources
field is not searchable. Some attributes of the attached resources are exposed inadditional_attributes
field, so as to allow users to search on them.- Type
MutableSequence[google.cloud.asset_v1.types.AttachedResource]
- relationships¶
A map of related resources of this resource, keyed by the relationship type. A relationship type is in the format of {SourceType}*{ACTION}*{DestType}. Example:
DISK_TO_INSTANCE
,DISK_TO_NETWORK
,INSTANCE_TO_INSTANCEGROUP
. See supported relationship types.- Type
MutableMapping[str, google.cloud.asset_v1.types.RelatedResources]
- tag_keys¶
This field is only present for the purpose of backward compatibility. Use the
tags
field instead.TagKey namespaced names, in the format of {ORG_ID}/{TAG_KEY_SHORT_NAME}. To search against the
tagKeys
:Use a field query. Example:
tagKeys:"123456789/env*"
tagKeys="123456789/env"
tagKeys:"env"
Use a free text query. Example:
env
- Type
MutableSequence[str]
- tag_values¶
This field is only present for the purpose of backward compatibility. Use the
tags
field instead.TagValue namespaced names, in the format of {ORG_ID}/{TAG_KEY_SHORT_NAME}/{TAG_VALUE_SHORT_NAME}. To search against the
tagValues
:Use a field query. Example:
tagValues:"env"
tagValues:"env/prod"
tagValues:"123456789/env/prod*"
tagValues="123456789/env/prod"
Use a free text query. Example:
prod
- Type
MutableSequence[str]
- tag_value_ids¶
This field is only present for the purpose of backward compatibility. Use the
tags
field instead.TagValue IDs, in the format of tagValues/{TAG_VALUE_ID}. To search against the
tagValueIds
:Use a field query. Example:
tagValueIds="tagValues/456"
Use a free text query. Example:
456
- Type
MutableSequence[str]
- tags¶
The tags directly attached to this resource.
To search against the
tags
:Use a field query. Example:
tagKeys:"123456789/env*"
tagKeys="123456789/env"
tagKeys:"env"
tagKeyIds="tagKeys/123"
tagValues:"env"
tagValues:"env/prod"
tagValues:"123456789/env/prod*"
tagValues="123456789/env/prod"
tagValueIds="tagValues/456"
Use a free text query. Example:
env/prod
- Type
MutableSequence[google.cloud.asset_v1.types.Tag]
- effective_tags¶
The effective tags on this resource. All of the tags that are both attached to and inherited by a resource are collectively called the effective tags. For more information, see tag inheritance.
To search against the
effective_tags
:Use a field query. Example:
effectiveTagKeys:"123456789/env*"
effectiveTagKeys="123456789/env"
effectiveTagKeys:"env"
effectiveTagKeyIds="tagKeys/123"
effectiveTagValues:"env"
effectiveTagValues:"env/prod"
effectiveTagValues:"123456789/env/prod*"
effectiveTagValues="123456789/env/prod"
effectiveTagValueIds="tagValues/456"
- Type
MutableSequence[google.cloud.asset_v1.types.EffectiveTagDetails]
- parent_asset_type¶
The type of this resource’s immediate parent, if there is one.
To search against the
parent_asset_type
:Use a field query. Example:
parentAssetType:"cloudresourcemanager.googleapis.com/Project"
Use a free text query. Example:
cloudresourcemanager.googleapis.com/Project
- Type
- scc_security_marks¶
The actual content of Security Command Center security marks associated with the asset.
To search against SCC SecurityMarks field:
Use a field query:
query by a given key value pair. Example:
sccSecurityMarks.foo=bar
query by a given key’s existence. Example:
sccSecurityMarks.foo:*
- class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)¶
Bases:
proto.message.Message
- class RelationshipsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)¶
Bases:
proto.message.Message
- class SccSecurityMarksEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)¶
Bases:
proto.message.Message
- class google.cloud.asset_v1.types.SavedQuery(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A saved query which can be shared with others or used later.
- name¶
The resource name of the saved query. The format must be:
projects/project_number/savedQueries/saved_query_id
folders/folder_number/savedQueries/saved_query_id
organizations/organization_number/savedQueries/saved_query_id
- Type
- description¶
The description of this saved query. This value should be fewer than 255 characters.
- Type
- create_time¶
Output only. The create time of this saved query.
- last_update_time¶
Output only. The last update time of this saved query.
- last_updater¶
Output only. The account’s email address who has updated this saved query most recently.
- Type
- labels¶
Labels applied on the resource. This value should not contain more than 10 entries. The key and value of each entry must be non-empty and fewer than 64 characters.
- content¶
The query content.
- class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)¶
Bases:
proto.message.Message
- class QueryContent(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The query content.
- iam_policy_analysis_query¶
An IAM Policy Analysis query, which could be used in the [AssetService.AnalyzeIamPolicy][google.cloud.asset.v1.AssetService.AnalyzeIamPolicy] RPC or the [AssetService.AnalyzeIamPolicyLongrunning][google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning] RPC.
This field is a member of oneof
query_content
.
- class google.cloud.asset_v1.types.SearchAllIamPoliciesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Search all IAM policies request.
- scope¶
Required. A scope can be a project, a folder, or an organization. The search is limited to the IAM policies within the
scope
. The caller must be granted the`cloudasset.assets.searchAllIamPolicies
<https://cloud.google.com/asset-inventory/docs/access-control#required_permissions>`__ permission on the desired scope.The allowed values are:
projects/{PROJECT_ID} (e.g., “projects/foo-bar”)
projects/{PROJECT_NUMBER} (e.g., “projects/12345678”)
folders/{FOLDER_NUMBER} (e.g., “folders/1234567”)
organizations/{ORGANIZATION_NUMBER} (e.g., “organizations/123456”)
- Type
- query¶
Optional. The query statement. See how to construct a query for more information. If not specified or empty, it will search all the IAM policies within the specified
scope
. Note that the query string is compared against each IAM policy binding, including its principals, roles, and IAM conditions. The returned IAM policies will only contain the bindings that match your query. To learn more about the IAM policy structure, see the IAM policy documentation.Examples:
policy:amy@gmail.com
to find IAM policy bindings that specify user “amy@gmail.com”.policy:roles/compute.admin
to find IAM policy bindings that specify the Compute Admin role.policy:comp*
to find IAM policy bindings that contain “comp” as a prefix of any word in the binding.policy.role.permissions:storage.buckets.update
to find IAM policy bindings that specify a role containing “storage.buckets.update” permission. Note that if callers don’t haveiam.roles.get
access to a role’s included permissions, policy bindings that specify this role will be dropped from the search results.policy.role.permissions:upd*
to find IAM policy bindings that specify a role containing “upd” as a prefix of any word in the role permission. Note that if callers don’t haveiam.roles.get
access to a role’s included permissions, policy bindings that specify this role will be dropped from the search results.resource:organizations/123456
to find IAM policy bindings that are set on “organizations/123456”.resource=//cloudresourcemanager.googleapis.com/projects/myproject
to find IAM policy bindings that are set on the project named “myproject”.Important
to find IAM policy bindings that contain “Important” as a word in any of the searchable fields (except for the included permissions).resource:(instance1 OR instance2) policy:amy
to find IAM policy bindings that are set on resources “instance1” or “instance2” and also specify user “amy”.roles:roles/compute.admin
to find IAM policy bindings that specify the Compute Admin role.memberTypes:user
to find IAM policy bindings that contain the principal type “user”.
- Type
- page_size¶
Optional. The page size for search result pagination. Page size is capped at 500 even if a larger value is given. If set to zero or a negative value, server will pick an appropriate default. Returned results may be fewer than requested. When this happens, there could be more results as long as
next_page_token
is returned.- Type
- page_token¶
Optional. If present, retrieve the next batch of results from the preceding call to this method.
page_token
must be the value ofnext_page_token
from the previous response. The values of all other method parameters must be identical to those in the previous call.- Type
- asset_types¶
Optional. A list of asset types that the IAM policies are attached to. If empty, it will search the IAM policies that are attached to all the asset types supported by search APIs
Regular expressions are also supported. For example:
“compute.googleapis.com.*” snapshots IAM policies attached to asset type starts with “compute.googleapis.com”.
“.*Instance” snapshots IAM policies attached to asset type ends with “Instance”.
“.*Instance.*” snapshots IAM policies attached to asset type contains “Instance”.
See RE2 for all supported regular expression syntax. If the regular expression does not match any supported asset type, an INVALID_ARGUMENT error will be returned.
- Type
MutableSequence[str]
- order_by¶
Optional. A comma-separated list of fields specifying the sorting order of the results. The default order is ascending. Add ” DESC” after the field name to indicate descending order. Redundant space characters are ignored. Example: “assetType DESC, resource”. Only singular primitive fields in the response are sortable:
resource
assetType
project All the other fields such as repeated fields (e.g.,
folders
) and non-primitive fields (e.g.,policy
) are not supported.
- Type
- class google.cloud.asset_v1.types.SearchAllIamPoliciesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Search all IAM policies response.
- results¶
A list of IAM policies that match the search query. Related information such as the associated resource is returned along with the policy.
- Type
MutableSequence[google.cloud.asset_v1.types.IamPolicySearchResult]
- class google.cloud.asset_v1.types.SearchAllResourcesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Search all resources request.
- scope¶
Required. A scope can be a project, a folder, or an organization. The search is limited to the resources within the
scope
. The caller must be granted the`cloudasset.assets.searchAllResources
<https://cloud.google.com/asset-inventory/docs/access-control#required_permissions>`__ permission on the desired scope.The allowed values are:
projects/{PROJECT_ID} (e.g., “projects/foo-bar”)
projects/{PROJECT_NUMBER} (e.g., “projects/12345678”)
folders/{FOLDER_NUMBER} (e.g., “folders/1234567”)
organizations/{ORGANIZATION_NUMBER} (e.g., “organizations/123456”)
- Type
- query¶
Optional. The query statement. See how to construct a query for more information. If not specified or empty, it will search all the resources within the specified
scope
.Examples:
name:Important
to find Google Cloud resources whose name containsImportant
as a word.name=Important
to find the Google Cloud resource whose name is exactlyImportant
.displayName:Impor*
to find Google Cloud resources whose display name containsImpor
as a prefix of any word in the field.location:us-west*
to find Google Cloud resources whose location contains bothus
andwest
as prefixes.labels:prod
to find Google Cloud resources whose labels containprod
as a key or value.labels.env:prod
to find Google Cloud resources that have a labelenv
and its value isprod
.labels.env:*
to find Google Cloud resources that have a labelenv
.tagKeys:env
to find Google Cloud resources that have directly attached tags where the`TagKey.namespacedName
<https://cloud.google.com/resource-manager/reference/rest/v3/tagKeys#resource:-tagkey>`__ containsenv
.tagValues:prod*
to find Google Cloud resources that have directly attached tags where the`TagValue.namespacedName
<https://cloud.google.com/resource-manager/reference/rest/v3/tagValues#resource:-tagvalue>`__ contains a word prefixed byprod
.tagValueIds=tagValues/123
to find Google Cloud resources that have directly attached tags where the`TagValue.name
<https://cloud.google.com/resource-manager/reference/rest/v3/tagValues#resource:-tagvalue>`__ is exactlytagValues/123
.effectiveTagKeys:env
to find Google Cloud resources that have directly attached or inherited tags where the`TagKey.namespacedName
<https://cloud.google.com/resource-manager/reference/rest/v3/tagKeys#resource:-tagkey>`__ containsenv
.effectiveTagValues:prod*
to find Google Cloud resources that have directly attached or inherited tags where the`TagValue.namespacedName
<https://cloud.google.com/resource-manager/reference/rest/v3/tagValues#resource:-tagvalue>`__ contains a word prefixed byprod
.effectiveTagValueIds=tagValues/123
to find Google Cloud resources that have directly attached or inherited tags where the`TagValue.name
<https://cloud.google.com/resource-manager/reference/rest/v3/tagValues#resource:-tagvalue>`__ is exactlytagValues/123
.kmsKey:key
to find Google Cloud resources encrypted with a customer-managed encryption key whose name containskey
as a word. This field is deprecated. Use thekmsKeys
field to retrieve Cloud KMS key information.kmsKeys:key
to find Google Cloud resources encrypted with customer-managed encryption keys whose name contains the wordkey
.relationships:instance-group-1
to find Google Cloud resources that have relationships withinstance-group-1
in the related resource name.relationships:INSTANCE_TO_INSTANCEGROUP
to find Compute Engine instances that have relationships of typeINSTANCE_TO_INSTANCEGROUP
.relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
to find Compute Engine instances that have relationships withinstance-group-1
in the Compute Engine instance group resource name, for relationship typeINSTANCE_TO_INSTANCEGROUP
.sccSecurityMarks.key=value
to find Cloud resources that are attached with security marks whose key iskey
and value isvalue
.sccSecurityMarks.key:*
to find Cloud resources that are attached with security marks whose key iskey
.state:ACTIVE
to find Google Cloud resources whose state containsACTIVE
as a word.NOT state:ACTIVE
to find Google Cloud resources whose state doesn’t containACTIVE
as a word.createTime<1609459200
to find Google Cloud resources that were created before2021-01-01 00:00:00 UTC
.1609459200
is the epoch timestamp of2021-01-01 00:00:00 UTC
in seconds.updateTime>1609459200
to find Google Cloud resources that were updated after2021-01-01 00:00:00 UTC
.1609459200
is the epoch timestamp of2021-01-01 00:00:00 UTC
in seconds.Important
to find Google Cloud resources that containImportant
as a word in any of the searchable fields.Impor*
to find Google Cloud resources that containImpor
as a prefix of any word in any of the searchable fields.Important location:(us-west1 OR global)
to find Google Cloud resources that containImportant
as a word in any of the searchable fields and are also located in theus-west1
region or theglobal
location.
- Type
- asset_types¶
Optional. A list of asset types that this request searches for. If empty, it will search all the asset types supported by search APIs.
Regular expressions are also supported. For example:
“compute.googleapis.com.*” snapshots resources whose asset type starts with “compute.googleapis.com”.
“.*Instance” snapshots resources whose asset type ends with “Instance”.
“.*Instance.*” snapshots resources whose asset type contains “Instance”.
See RE2 for all supported regular expression syntax. If the regular expression does not match any supported asset type, an INVALID_ARGUMENT error will be returned.
- Type
MutableSequence[str]
- page_size¶
Optional. The page size for search result pagination. Page size is capped at 500 even if a larger value is given. If set to zero or a negative value, server will pick an appropriate default. Returned results may be fewer than requested. When this happens, there could be more results as long as
next_page_token
is returned.- Type
- page_token¶
Optional. If present, then retrieve the next batch of results from the preceding call to this method.
page_token
must be the value ofnext_page_token
from the previous response. The values of all other method parameters, must be identical to those in the previous call.- Type
- order_by¶
Optional. A comma-separated list of fields specifying the sorting order of the results. The default order is ascending. Add ” DESC” after the field name to indicate descending order. Redundant space characters are ignored. Example: “location DESC, name”. Only the following fields in the response are sortable:
name
assetType
project
displayName
description
location
createTime
updateTime
state
parentFullResourceName
parentAssetType
- Type
- read_mask¶
Optional. A comma-separated list of fields that you want returned in the results. The following fields are returned by default if not specified:
name
assetType
project
folders
organization
displayName
description
location
labels
tags
effectiveTags
networkTags
kmsKeys
createTime
updateTime
state
additionalAttributes
parentFullResourceName
parentAssetType
Some fields of large size, such as
versionedResources
,attachedResources
,effectiveTags
etc., are not returned by default, but you can specify them in theread_mask
parameter if you want to include them. If"*"
is specified, all available fields are returned. Examples:"name,location"
,"name,versionedResources"
,"*"
. Any invalid field path will trigger INVALID_ARGUMENT error.
- class google.cloud.asset_v1.types.SearchAllResourcesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Search all resources response.
- results¶
A list of Resources that match the search query. It contains the resource standard metadata information.
- Type
MutableSequence[google.cloud.asset_v1.types.ResourceSearchResult]
- class google.cloud.asset_v1.types.TableFieldSchema(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A field in TableSchema.
- field¶
The field name. The name must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum length is 128 characters.
- Type
- type_¶
The field data type. Possible values include
STRING
BYTES
INTEGER
FLOAT
BOOLEAN
TIMESTAMP
DATE
TIME
DATETIME
GEOGRAPHY,
NUMERIC,
BIGNUMERIC,
RECORD (where RECORD indicates that the field contains a nested schema).
- Type
- mode¶
The field mode. Possible values include NULLABLE, REQUIRED and REPEATED. The default value is NULLABLE.
- Type
- fields¶
Describes the nested schema fields if the type property is set to RECORD.
- Type
MutableSequence[google.cloud.asset_v1.types.TableFieldSchema]
- class google.cloud.asset_v1.types.TableSchema(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
BigQuery Compatible table schema.
- fields¶
Describes the fields in a table.
- Type
MutableSequence[google.cloud.asset_v1.types.TableFieldSchema]
- class google.cloud.asset_v1.types.Tag(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
The key and value for a tag.
- tag_key¶
TagKey namespaced name, in the format of {ORG_ID}/{TAG_KEY_SHORT_NAME}.
This field is a member of oneof
_tag_key
.- Type
- tag_key_id¶
TagKey ID, in the format of tagKeys/{TAG_KEY_ID}.
This field is a member of oneof
_tag_key_id
.- Type
- class google.cloud.asset_v1.types.TemporalAsset(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
An asset in Google Cloud and its temporal metadata, including the time window when it was observed and its status during that window.
- window¶
The time window when the asset data and state was observed.
- asset¶
An asset in Google Cloud.
- prior_asset_state¶
State of prior_asset.
- prior_asset¶
Prior copy of the asset. Populated if prior_asset_state is PRESENT. Currently this is only set for responses in Real-Time Feed.
- class PriorAssetState(value)[source]¶
Bases:
proto.enums.Enum
State of prior asset.
- Values:
- PRIOR_ASSET_STATE_UNSPECIFIED (0):
prior_asset is not applicable for the current asset.
- PRESENT (1):
prior_asset is populated correctly.
- INVALID (2):
Failed to set prior_asset.
- DOES_NOT_EXIST (3):
Current asset is the first known state.
- DELETED (4):
prior_asset is a deletion.
- class google.cloud.asset_v1.types.TimeWindow(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
A time window specified by its
start_time
andend_time
.- start_time¶
Start time of the time window (exclusive).
- end_time¶
End time of the time window (inclusive). If not specified, the current timestamp is used instead.
- class google.cloud.asset_v1.types.UpdateFeedRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Update asset feed request.
- feed¶
Required. The new values of feed details. It must match an existing feed and the field
name
must be in the format of: projects/project_number/feeds/feed_id or folders/folder_number/feeds/feed_id or organizations/organization_number/feeds/feed_id.
- update_mask¶
Required. Only updates the
feed
fields indicated by this mask. The field mask must not be empty, and it must not contain fields that are immutable or only set by the server.
- class google.cloud.asset_v1.types.UpdateSavedQueryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Request to update a saved query.
- saved_query¶
Required. The saved query to update.
The saved query’s
name
field is used to identify the one to update, which has format as below:projects/project_number/savedQueries/saved_query_id
folders/folder_number/savedQueries/saved_query_id
organizations/organization_number/savedQueries/saved_query_id
- update_mask¶
Required. The list of fields to update.
- class google.cloud.asset_v1.types.VersionedResource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]¶
Bases:
proto.message.Message
Resource representation as defined by the corresponding service providing the resource for a given API version.
- version¶
API version of the resource.
Example: If the resource is an instance provided by Compute Engine v1 API as defined in
https://cloud.google.com/compute/docs/reference/rest/v1/instances
, version will be “v1”.- Type
- resource¶
JSON representation of the resource as defined by the corresponding service providing this resource.
Example: If the resource is an instance provided by Compute Engine, this field will contain the JSON representation of the instance as defined by Compute Engine:
https://cloud.google.com/compute/docs/reference/rest/v1/instances
.You can find the resource definition for each supported resource type in this table:
https://cloud.google.com/asset-inventory/docs/supported-asset-types