class V1 extends Resource (View source)

The "v1" collection of methods.

Typical usage is:

 $cloudassetService = new Google\Service\CloudAsset(...);
 $v1 = $cloudassetService->v1;

Methods

analyzeIamPolicy(string $scope, array $optParams = [])

Analyzes IAM policies to answer which identities have what accesses on which resources. (v1.analyzeIamPolicy)

analyzeIamPolicyLongrunning(string $scope, AnalyzeIamPolicyLongrunningRequest $postBody, array $optParams = [])

Analyzes IAM policies asynchronously to answer which identities have what accesses on which resources, and writes the analysis results to a Google Cloud Storage or a BigQuery destination. For Cloud Storage destination, the output format is the JSON format that represents a AnalyzeIamPolicyResponse.

analyzeMove(string $resource, array $optParams = [])

Analyze moving a resource to a specified destination without kicking off the actual move. The analysis is best effort depending on the user's permissions of viewing different hierarchical policies and configurations. The policies and configuration are subject to change before the actual resource migration takes place. (v1.analyzeMove)

analyzeOrgPolicies(string $scope, array $optParams = [])

Analyzes organization policies under a scope. (v1.analyzeOrgPolicies)

analyzeOrgPolicyGovernedAssets(string $scope, array $optParams = [])

Analyzes organization policies governed assets (Google Cloud resources or policies) under a scope. This RPC supports custom constraints and the following canned constraints: constraints/ainotebooks.accessMode constraints/ainotebooks.disableFileDownloads constraints/ainotebooks.disableRootAccess constraints/ainotebooks.disableTerminal constraints/ainotebooks.environmentOptions constraints/ainotebooks.requireAutoUpgradeSchedule constraints/ainotebooks.restrictVpcNetworks constraints/compute.disableGuestAttributesAccess constraints/compute.disableInstanceDataAccessApis constraints/compute.disableNestedVirtualization constraints/compute.disableSerialPortAccess constraints/compute.disableSerialPortLogging constraints/compute.disableVpcExternalIpv6 constraints/compute.requireOsLogin constraints/compute.requireShieldedVm constraints/compute.restrictLoadBalancerCreationForTypes constraints/compute.restrictProtocolForwardingCreationForTypes constraints/compute.restrictXpnProjectLienRemoval constraints/compute.setNewProjectDefaultToZonalDNSOnly constraints/compute.skipDefaultNetworkCreation constraints/compute.trustedImageProjects constraints/compute.vmCanIpForward

  • constraints/compute.vmExternalIpAccess constraints/gcp.detailedAuditLoggingMode constraints/gcp.resourceLocations
  • constraints/iam.allowedPolicyMemberDomains constraints/iam.automaticIamGrantsForDefaultServiceAccounts constraints/iam.disableServiceAccountCreation constraints/iam.disableServiceAccountKeyCreation constraints/iam.disableServiceAccountKeyUpload constraints/iam.restrictCrossProjectServiceAccountLienRemoval constraints/iam.serviceAccountKeyExpiryHours constraints/resourcemanager.accessBoundaries constraints/resourcemanager.allowedExportDestinations constraints/sql.restrictAuthorizedNetworks constraints/sql.restrictNoncompliantDiagnosticDataAccess constraints/sql.restrictNoncompliantResourceCreation constraints/sql.restrictPublicIp * constraints/storage.publicAccessPrevention
  • constraints/storage.restrictAuthTypes * constraints/storage.uniformBucketLevelAccess This RPC only returns either resources of types supported by search APIs or IAM policies.

analyzeOrgPolicyGovernedContainers(string $scope, array $optParams = [])

Analyzes organization policies governed containers (projects, folders or organization) under a scope. (v1.analyzeOrgPolicyGovernedContainers)

batchGetAssetsHistory(string $parent, array $optParams = [])

Batch gets the update history of assets that overlap a time window. For IAM_POLICY content, this API outputs history when the asset and its attached IAM POLICY both exist. This can create gaps in the output history. Otherwise, this API outputs history with asset in both non-delete or deleted status. If a specified asset does not exist, this API returns an INVALID_ARGUMENT error.

exportAssets(string $parent, ExportAssetsRequest $postBody, array $optParams = [])

Exports assets with time and resource types to a given Cloud Storage location/BigQuery table. For Cloud Storage location destinations, the output format is newline-delimited JSON. Each line represents a google.cloud.asset.v1.Asset in the JSON format; for BigQuery table destinations, the output table stores the fields in asset Protobuf as columns. This API implements the google.longrunning.Operation API, which allows you to keep track of the export. We recommend intervals of at least 2 seconds with exponential retry to poll the export operation result. For regular-size resource parent, the export operation usually finishes within 5 minutes. (v1.exportAssets)

queryAssets(string $parent, QueryAssetsRequest $postBody, array $optParams = [])

Issue a job that queries assets using a SQL statement compatible with BigQuery SQL. If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the QueryAssetsResponse. Otherwise, full query results can be obtained by issuing extra requests with the job_reference from the a previous QueryAssets call. Note, the query result has approximately 10 GB limitation enforced by BigQuery. Queries return larger results will result in errors.

searchAllIamPolicies(string $scope, array $optParams = [])

Searches all IAM policies within the specified scope, such as a project, folder, or organization. The caller must be granted the cloudasset.assets.searchAllIamPolicies permission on the desired scope, otherwise the request will be rejected. (v1.searchAllIamPolicies)

searchAllResources(string $scope, array $optParams = [])

Searches all Google Cloud resources within the specified scope, such as a project, folder, or organization. The caller must be granted the cloudasset.assets.searchAllResources permission on the desired scope, otherwise the request will be rejected. (v1.searchAllResources)

Details

AnalyzeIamPolicyResponse analyzeIamPolicy(string $scope, array $optParams = [])

Analyzes IAM policies to answer which identities have what accesses on which resources. (v1.analyzeIamPolicy)

Parameters

string $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 .

array $optParams

Optional parameters.

Return Value

AnalyzeIamPolicyResponse

Exceptions

Exception

Operation analyzeIamPolicyLongrunning(string $scope, AnalyzeIamPolicyLongrunningRequest $postBody, array $optParams = [])

Analyzes IAM policies asynchronously to answer which identities have what accesses on which resources, and writes the analysis results to a Google Cloud Storage or a BigQuery destination. For Cloud Storage destination, the output format is the JSON format that represents a AnalyzeIamPolicyResponse.

This method implements the google.longrunning.Operation, which allows you to track the operation status. We recommend intervals of at least 2 seconds with exponential backoff retry to poll the operation result. The metadata contains the metadata for the long-running operation. (v1.analyzeIamPolicyLongrunning)

Parameters

string $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 .

AnalyzeIamPolicyLongrunningRequest $postBody
array $optParams

Optional parameters.

Return Value

Operation

Exceptions

Exception

AnalyzeMoveResponse analyzeMove(string $resource, array $optParams = [])

Analyze moving a resource to a specified destination without kicking off the actual move. The analysis is best effort depending on the user's permissions of viewing different hierarchical policies and configurations. The policies and configuration are subject to change before the actual resource migration takes place. (v1.analyzeMove)

Parameters

string $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").

array $optParams

Optional parameters.

Return Value

AnalyzeMoveResponse

Exceptions

Exception

AnalyzeOrgPoliciesResponse analyzeOrgPolicies(string $scope, array $optParams = [])

Analyzes organization policies under a scope. (v1.analyzeOrgPolicies)

Parameters

string $scope

Required. The organization to scope the request. Only organization policies within the scope will be analyzed. * organizations/{ORGANIZATION_NUMBER} (e.g., "organizations/123456")

array $optParams

Optional parameters.

Return Value

AnalyzeOrgPoliciesResponse

Exceptions

Exception

AnalyzeOrgPolicyGovernedAssetsResponse analyzeOrgPolicyGovernedAssets(string $scope, array $optParams = [])

Analyzes organization policies governed assets (Google Cloud resources or policies) under a scope. This RPC supports custom constraints and the following canned constraints: constraints/ainotebooks.accessMode constraints/ainotebooks.disableFileDownloads constraints/ainotebooks.disableRootAccess constraints/ainotebooks.disableTerminal constraints/ainotebooks.environmentOptions constraints/ainotebooks.requireAutoUpgradeSchedule constraints/ainotebooks.restrictVpcNetworks constraints/compute.disableGuestAttributesAccess constraints/compute.disableInstanceDataAccessApis constraints/compute.disableNestedVirtualization constraints/compute.disableSerialPortAccess constraints/compute.disableSerialPortLogging constraints/compute.disableVpcExternalIpv6 constraints/compute.requireOsLogin constraints/compute.requireShieldedVm constraints/compute.restrictLoadBalancerCreationForTypes constraints/compute.restrictProtocolForwardingCreationForTypes constraints/compute.restrictXpnProjectLienRemoval constraints/compute.setNewProjectDefaultToZonalDNSOnly constraints/compute.skipDefaultNetworkCreation constraints/compute.trustedImageProjects constraints/compute.vmCanIpForward

  • constraints/compute.vmExternalIpAccess constraints/gcp.detailedAuditLoggingMode constraints/gcp.resourceLocations
  • constraints/iam.allowedPolicyMemberDomains constraints/iam.automaticIamGrantsForDefaultServiceAccounts constraints/iam.disableServiceAccountCreation constraints/iam.disableServiceAccountKeyCreation constraints/iam.disableServiceAccountKeyUpload constraints/iam.restrictCrossProjectServiceAccountLienRemoval constraints/iam.serviceAccountKeyExpiryHours constraints/resourcemanager.accessBoundaries constraints/resourcemanager.allowedExportDestinations constraints/sql.restrictAuthorizedNetworks constraints/sql.restrictNoncompliantDiagnosticDataAccess constraints/sql.restrictNoncompliantResourceCreation constraints/sql.restrictPublicIp * constraints/storage.publicAccessPrevention
  • constraints/storage.restrictAuthTypes * constraints/storage.uniformBucketLevelAccess This RPC only returns either resources of types supported by search APIs or IAM policies.

(v1.analyzeOrgPolicyGovernedAssets)

Parameters

string $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")

array $optParams

Optional parameters.

Return Value

AnalyzeOrgPolicyGovernedAssetsResponse

Exceptions

Exception

AnalyzeOrgPolicyGovernedContainersResponse analyzeOrgPolicyGovernedContainers(string $scope, array $optParams = [])

Analyzes organization policies governed containers (projects, folders or organization) under a scope. (v1.analyzeOrgPolicyGovernedContainers)

Parameters

string $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")

array $optParams

Optional parameters.

Return Value

AnalyzeOrgPolicyGovernedContainersResponse

Exceptions

Exception

BatchGetAssetsHistoryResponse batchGetAssetsHistory(string $parent, array $optParams = [])

Batch gets the update history of assets that overlap a time window. For IAM_POLICY content, this API outputs history when the asset and its attached IAM POLICY both exist. This can create gaps in the output history. Otherwise, this API outputs history with asset in both non-delete or deleted status. If a specified asset does not exist, this API returns an INVALID_ARGUMENT error.

(v1.batchGetAssetsHistory)

Parameters

string $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").

array $optParams

Optional parameters.

Return Value

BatchGetAssetsHistoryResponse

Exceptions

Exception

Operation exportAssets(string $parent, ExportAssetsRequest $postBody, array $optParams = [])

Exports assets with time and resource types to a given Cloud Storage location/BigQuery table. For Cloud Storage location destinations, the output format is newline-delimited JSON. Each line represents a google.cloud.asset.v1.Asset in the JSON format; for BigQuery table destinations, the output table stores the fields in asset Protobuf as columns. This API implements the google.longrunning.Operation API, which allows you to keep track of the export. We recommend intervals of at least 2 seconds with exponential retry to poll the export operation result. For regular-size resource parent, the export operation usually finishes within 5 minutes. (v1.exportAssets)

Parameters

string $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").

ExportAssetsRequest $postBody
array $optParams

Optional parameters.

Return Value

Operation

Exceptions

Exception

QueryAssetsResponse queryAssets(string $parent, QueryAssetsRequest $postBody, array $optParams = [])

Issue a job that queries assets using a SQL statement compatible with BigQuery SQL. If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the QueryAssetsResponse. Otherwise, full query results can be obtained by issuing extra requests with the job_reference from the a previous QueryAssets call. Note, the query result has approximately 10 GB limitation enforced by BigQuery. Queries return larger results will result in errors.

(v1.queryAssets)

Parameters

string $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.

QueryAssetsRequest $postBody
array $optParams

Optional parameters.

Return Value

QueryAssetsResponse

Exceptions

Exception

SearchAllIamPoliciesResponse searchAllIamPolicies(string $scope, array $optParams = [])

Searches all IAM policies within the specified scope, such as a project, folder, or organization. The caller must be granted the cloudasset.assets.searchAllIamPolicies permission on the desired scope, otherwise the request will be rejected. (v1.searchAllIamPolicies)

Parameters

string $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 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")

array $optParams

Optional parameters.

Return Value

SearchAllIamPoliciesResponse

Exceptions

Exception

SearchAllResourcesResponse searchAllResources(string $scope, array $optParams = [])

Searches all Google Cloud resources within the specified scope, such as a project, folder, or organization. The caller must be granted the cloudasset.assets.searchAllResources permission on the desired scope, otherwise the request will be rejected. (v1.searchAllResources)

Parameters

string $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 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")

array $optParams

Optional parameters.

Return Value

SearchAllResourcesResponse

Exceptions

Exception