gestione documentale avanzata 1 parte

This commit is contained in:
2026-05-28 09:34:28 +02:00
parent 3471befb1a
commit f2b0833b90
34482 changed files with 4312269 additions and 546 deletions
@@ -0,0 +1,57 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class AddGranteesRequest extends \Google\Collection
{
protected $collection_key = 'grantees';
/**
* Required. IAM principal that should be granted Fine Grained Access to the
* underlying data goverened by the data policy. The target data policy is
* determined by the `data_policy` field. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2).
* Supported principal types: * User * Group * Service account
*
* @var string[]
*/
public $grantees;
/**
* Required. IAM principal that should be granted Fine Grained Access to the
* underlying data goverened by the data policy. The target data policy is
* determined by the `data_policy` field. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2).
* Supported principal types: * User * Group * Service account
*
* @param string[] $grantees
*/
public function setGrantees($grantees)
{
$this->grantees = $grantees;
}
/**
* @return string[]
*/
public function getGrantees()
{
return $this->grantees;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AddGranteesRequest::class, 'Google_Service_BigQueryDataPolicyService_AddGranteesRequest');
@@ -0,0 +1,71 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class AuditConfig extends \Google\Collection
{
protected $collection_key = 'auditLogConfigs';
protected $auditLogConfigsType = AuditLogConfig::class;
protected $auditLogConfigsDataType = 'array';
/**
* Specifies a service that will be enabled for audit logging. For example,
* `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a
* special value that covers all services.
*
* @var string
*/
public $service;
/**
* The configuration for logging of each type of permission.
*
* @param AuditLogConfig[] $auditLogConfigs
*/
public function setAuditLogConfigs($auditLogConfigs)
{
$this->auditLogConfigs = $auditLogConfigs;
}
/**
* @return AuditLogConfig[]
*/
public function getAuditLogConfigs()
{
return $this->auditLogConfigs;
}
/**
* Specifies a service that will be enabled for audit logging. For example,
* `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a
* special value that covers all services.
*
* @param string $service
*/
public function setService($service)
{
$this->service = $service;
}
/**
* @return string
*/
public function getService()
{
return $this->service;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AuditConfig::class, 'Google_Service_BigQueryDataPolicyService_AuditConfig');
@@ -0,0 +1,91 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class AuditLogConfig extends \Google\Collection
{
/**
* Default case. Should never be this.
*/
public const LOG_TYPE_LOG_TYPE_UNSPECIFIED = 'LOG_TYPE_UNSPECIFIED';
/**
* Admin reads. Example: CloudIAM getIamPolicy
*/
public const LOG_TYPE_ADMIN_READ = 'ADMIN_READ';
/**
* Data writes. Example: CloudSQL Users create
*/
public const LOG_TYPE_DATA_WRITE = 'DATA_WRITE';
/**
* Data reads. Example: CloudSQL Users list
*/
public const LOG_TYPE_DATA_READ = 'DATA_READ';
protected $collection_key = 'exemptedMembers';
/**
* Specifies the identities that do not cause logging for this type of
* permission. Follows the same format of Binding.members.
*
* @var string[]
*/
public $exemptedMembers;
/**
* The log type that this config enables.
*
* @var string
*/
public $logType;
/**
* Specifies the identities that do not cause logging for this type of
* permission. Follows the same format of Binding.members.
*
* @param string[] $exemptedMembers
*/
public function setExemptedMembers($exemptedMembers)
{
$this->exemptedMembers = $exemptedMembers;
}
/**
* @return string[]
*/
public function getExemptedMembers()
{
return $this->exemptedMembers;
}
/**
* The log type that this config enables.
*
* Accepted values: LOG_TYPE_UNSPECIFIED, ADMIN_READ, DATA_WRITE, DATA_READ
*
* @param self::LOG_TYPE_* $logType
*/
public function setLogType($logType)
{
$this->logType = $logType;
}
/**
* @return self::LOG_TYPE_*
*/
public function getLogType()
{
return $this->logType;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AuditLogConfig::class, 'Google_Service_BigQueryDataPolicyService_AuditLogConfig');
@@ -0,0 +1,25 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class BigquerydatapolicyEmpty extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BigquerydatapolicyEmpty::class, 'Google_Service_BigQueryDataPolicyService_BigquerydatapolicyEmpty');
@@ -0,0 +1,216 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class Binding extends \Google\Collection
{
protected $collection_key = 'members';
protected $conditionType = Expr::class;
protected $conditionDataType = '';
/**
* Specifies the principals requesting access for a Google Cloud resource.
* `members` can have the following values: * `allUsers`: A special identifier
* that represents anyone who is on the internet; with or without a Google
* account. * `allAuthenticatedUsers`: A special identifier that represents
* anyone who is authenticated with a Google account or a service account.
* Does not include identities that come from external identity providers
* (IdPs) through identity federation. * `user:{emailid}`: An email address
* that represents a specific Google account. For example, `alice@example.com`
* . * `serviceAccount:{emailid}`: An email address that represents a Google
* service account. For example, `my-other-app@appspot.gserviceaccount.com`. *
* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
* identifier for a [Kubernetes service
* account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-
* service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-
* kubernetes-sa]`. * `group:{emailid}`: An email address that represents a
* Google group. For example, `admins@example.com`. * `domain:{domain}`: The G
* Suite domain (primary) that represents all the users of that domain. For
* example, `google.com` or `example.com`. * `principal://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`
* : A single identity in a workforce identity pool. * `principalSet://iam.goo
* gleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
* All workforce identities in a group. * `principalSet://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attrib
* ute_value}`: All workforce identities with a specific attribute value. * `p
* rincipalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}`
* : All identities in a workforce identity pool. * `principal://iam.googleapi
* s.com/projects/{project_number}/locations/global/workloadIdentityPools/{poo
* l_id}/subject/{subject_attribute_value}`: A single identity in a workload
* identity pool. * `principalSet://iam.googleapis.com/projects/{project_numbe
* r}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A
* workload identity pool group. * `principalSet://iam.googleapis.com/projects
* /{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribut
* e.{attribute_name}/{attribute_value}`: All identities in a workload
* identity pool with a certain attribute. * `principalSet://iam.googleapis.co
* m/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id
* }`: All identities in a workload identity pool. *
* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a user that has been recently deleted. For
* example, `alice@example.com?uid=123456789012345678901`. If the user is
* recovered, this value reverts to `user:{emailid}` and the recovered user
* retains the role in the binding. *
* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
* unique identifier) representing a service account that has been recently
* deleted. For example, `my-other-
* app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service
* account is undeleted, this value reverts to `serviceAccount:{emailid}` and
* the undeleted service account retains the role in the binding. *
* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a Google group that has been recently deleted. For
* example, `admins@example.com?uid=123456789012345678901`. If the group is
* recovered, this value reverts to `group:{emailid}` and the recovered group
* retains the role in the binding. * `deleted:principal://iam.googleapis.com/
* locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
* `: Deleted single identity in a workforce identity pool. For example,
* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-
* pool-id/subject/my-subject-attribute-value`.
*
* @var string[]
*/
public $members;
/**
* Role that is assigned to the list of `members`, or principals. For example,
* `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the
* IAM roles and permissions, see the [IAM
* documentation](https://cloud.google.com/iam/docs/roles-overview). For a
* list of the available pre-defined roles, see
* [here](https://cloud.google.com/iam/docs/understanding-roles).
*
* @var string
*/
public $role;
/**
* The condition that is associated with this binding. If the condition
* evaluates to `true`, then this binding applies to the current request. If
* the condition evaluates to `false`, then this binding does not apply to the
* current request. However, a different role binding might grant the same
* role to one or more of the principals in this binding. To learn which
* resources support conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @param Expr $condition
*/
public function setCondition(Expr $condition)
{
$this->condition = $condition;
}
/**
* @return Expr
*/
public function getCondition()
{
return $this->condition;
}
/**
* Specifies the principals requesting access for a Google Cloud resource.
* `members` can have the following values: * `allUsers`: A special identifier
* that represents anyone who is on the internet; with or without a Google
* account. * `allAuthenticatedUsers`: A special identifier that represents
* anyone who is authenticated with a Google account or a service account.
* Does not include identities that come from external identity providers
* (IdPs) through identity federation. * `user:{emailid}`: An email address
* that represents a specific Google account. For example, `alice@example.com`
* . * `serviceAccount:{emailid}`: An email address that represents a Google
* service account. For example, `my-other-app@appspot.gserviceaccount.com`. *
* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
* identifier for a [Kubernetes service
* account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-
* service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-
* kubernetes-sa]`. * `group:{emailid}`: An email address that represents a
* Google group. For example, `admins@example.com`. * `domain:{domain}`: The G
* Suite domain (primary) that represents all the users of that domain. For
* example, `google.com` or `example.com`. * `principal://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`
* : A single identity in a workforce identity pool. * `principalSet://iam.goo
* gleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
* All workforce identities in a group. * `principalSet://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attrib
* ute_value}`: All workforce identities with a specific attribute value. * `p
* rincipalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}`
* : All identities in a workforce identity pool. * `principal://iam.googleapi
* s.com/projects/{project_number}/locations/global/workloadIdentityPools/{poo
* l_id}/subject/{subject_attribute_value}`: A single identity in a workload
* identity pool. * `principalSet://iam.googleapis.com/projects/{project_numbe
* r}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A
* workload identity pool group. * `principalSet://iam.googleapis.com/projects
* /{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribut
* e.{attribute_name}/{attribute_value}`: All identities in a workload
* identity pool with a certain attribute. * `principalSet://iam.googleapis.co
* m/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id
* }`: All identities in a workload identity pool. *
* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a user that has been recently deleted. For
* example, `alice@example.com?uid=123456789012345678901`. If the user is
* recovered, this value reverts to `user:{emailid}` and the recovered user
* retains the role in the binding. *
* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
* unique identifier) representing a service account that has been recently
* deleted. For example, `my-other-
* app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service
* account is undeleted, this value reverts to `serviceAccount:{emailid}` and
* the undeleted service account retains the role in the binding. *
* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a Google group that has been recently deleted. For
* example, `admins@example.com?uid=123456789012345678901`. If the group is
* recovered, this value reverts to `group:{emailid}` and the recovered group
* retains the role in the binding. * `deleted:principal://iam.googleapis.com/
* locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
* `: Deleted single identity in a workforce identity pool. For example,
* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-
* pool-id/subject/my-subject-attribute-value`.
*
* @param string[] $members
*/
public function setMembers($members)
{
$this->members = $members;
}
/**
* @return string[]
*/
public function getMembers()
{
return $this->members;
}
/**
* Role that is assigned to the list of `members`, or principals. For example,
* `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the
* IAM roles and permissions, see the [IAM
* documentation](https://cloud.google.com/iam/docs/roles-overview). For a
* list of the available pre-defined roles, see
* [here](https://cloud.google.com/iam/docs/understanding-roles).
*
* @param string $role
*/
public function setRole($role)
{
$this->role = $role;
}
/**
* @return string
*/
public function getRole()
{
return $this->role;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Binding::class, 'Google_Service_BigQueryDataPolicyService_Binding');
@@ -0,0 +1,71 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class CreateDataPolicyRequest extends \Google\Model
{
protected $dataPolicyType = DataPolicy::class;
protected $dataPolicyDataType = '';
/**
* Required. User-assigned (human readable) ID of the data policy that needs
* to be unique within a project. Used as {data_policy_id} in part of the
* resource name.
*
* @var string
*/
public $dataPolicyId;
/**
* Required. The data policy to create. The `name` field does not need to be
* provided for the data policy creation.
*
* @param DataPolicy $dataPolicy
*/
public function setDataPolicy(DataPolicy $dataPolicy)
{
$this->dataPolicy = $dataPolicy;
}
/**
* @return DataPolicy
*/
public function getDataPolicy()
{
return $this->dataPolicy;
}
/**
* Required. User-assigned (human readable) ID of the data policy that needs
* to be unique within a project. Used as {data_policy_id} in part of the
* resource name.
*
* @param string $dataPolicyId
*/
public function setDataPolicyId($dataPolicyId)
{
$this->dataPolicyId = $dataPolicyId;
}
/**
* @return string
*/
public function getDataPolicyId()
{
return $this->dataPolicyId;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CreateDataPolicyRequest::class, 'Google_Service_BigQueryDataPolicyService_CreateDataPolicyRequest');
@@ -0,0 +1,76 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class DataGovernanceTag extends \Google\Model
{
/**
* Optional. Tag keys are globally unique. Tag key is expected to be in the
* namespaced format, for example `parent-id/pii` where `parent-id` is the ID
* of the parent organization or project resource for this tag key.
*
* @var string
*/
public $key;
/**
* Optional. Specifies the tag value as the short name, for example
* `sensitive`.
*
* @var string
*/
public $value;
/**
* Optional. Tag keys are globally unique. Tag key is expected to be in the
* namespaced format, for example `parent-id/pii` where `parent-id` is the ID
* of the parent organization or project resource for this tag key.
*
* @param string $key
*/
public function setKey($key)
{
$this->key = $key;
}
/**
* @return string
*/
public function getKey()
{
return $this->key;
}
/**
* Optional. Specifies the tag value as the short name, for example
* `sensitive`.
*
* @param string $value
*/
public function setValue($value)
{
$this->value = $value;
}
/**
* @return string
*/
public function getValue()
{
return $this->value;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(DataGovernanceTag::class, 'Google_Service_BigQueryDataPolicyService_DataGovernanceTag');
@@ -0,0 +1,141 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class DataMaskingPolicy extends \Google\Model
{
/**
* Default, unspecified predefined expression. No masking will take place
* since no expression is specified.
*/
public const PREDEFINED_EXPRESSION_PREDEFINED_EXPRESSION_UNSPECIFIED = 'PREDEFINED_EXPRESSION_UNSPECIFIED';
/**
* Masking expression to replace data with SHA-256 hash.
*/
public const PREDEFINED_EXPRESSION_SHA256 = 'SHA256';
/**
* Masking expression to replace data with NULLs.
*/
public const PREDEFINED_EXPRESSION_ALWAYS_NULL = 'ALWAYS_NULL';
/**
* Masking expression to replace data with their default masking values. The
* default masking values for each type listed as below: * STRING: "" * BYTES:
* b'' * INTEGER: 0 * FLOAT: 0.0 * NUMERIC: 0 * BOOLEAN: FALSE * TIMESTAMP:
* 1970-01-01 00:00:00 UTC * DATE: 1970-01-01 * TIME: 00:00:00 * DATETIME:
* 1970-01-01T00:00:00 * GEOGRAPHY: POINT(0 0) * BIGNUMERIC: 0 * ARRAY: [] *
* STRUCT: NOT_APPLICABLE * JSON: NULL
*/
public const PREDEFINED_EXPRESSION_DEFAULT_MASKING_VALUE = 'DEFAULT_MASKING_VALUE';
/**
* Masking expression shows the last four characters of text. The masking
* behavior is as follows: * If text length > 4 characters: Replace text with
* XXXXX, append last four characters of original text. * If text length <= 4
* characters: Apply SHA-256 hash.
*/
public const PREDEFINED_EXPRESSION_LAST_FOUR_CHARACTERS = 'LAST_FOUR_CHARACTERS';
/**
* Masking expression shows the first four characters of text. The masking
* behavior is as follows: * If text length > 4 characters: Replace text with
* XXXXX, prepend first four characters of original text. * If text length <=
* 4 characters: Apply SHA-256 hash.
*/
public const PREDEFINED_EXPRESSION_FIRST_FOUR_CHARACTERS = 'FIRST_FOUR_CHARACTERS';
/**
* Masking expression for email addresses. The masking behavior is as follows:
* * Syntax-valid email address: Replace username with XXXXX. For example,
* cloudysanfrancisco@gmail.com becomes XXXXX@gmail.com. * Syntax-invalid
* email address: Apply SHA-256 hash. For more information, see [Email
* mask](https://cloud.google.com/bigquery/docs/column-data-masking-
* intro#masking_options).
*/
public const PREDEFINED_EXPRESSION_EMAIL_MASK = 'EMAIL_MASK';
/**
* Masking expression to only show the *year* of `Date`, `DateTime` and
* `TimeStamp`. For example, with the year 2076: * DATE : 2076-01-01 *
* DATETIME : 2076-01-01T00:00:00 * TIMESTAMP : 2076-01-01 00:00:00 UTC
* Truncation occurs according to the UTC time zone. To change this, adjust
* the default time zone using the `time_zone` system variable. For more
* information, see [System variables
* reference](https://cloud.google.com/bigquery/docs/reference/system-
* variables).
*/
public const PREDEFINED_EXPRESSION_DATE_YEAR_MASK = 'DATE_YEAR_MASK';
/**
* Masking expression that uses hashing to mask column data. It differs from
* SHA256 in that a unique random value is generated for each query and is
* added to the hash input, resulting in the hash / masked result to be
* different for each query. Hence the name "random hash".
*/
public const PREDEFINED_EXPRESSION_RANDOM_HASH = 'RANDOM_HASH';
/**
* Optional. A predefined masking expression.
*
* @var string
*/
public $predefinedExpression;
/**
* Optional. The name of the BigQuery routine that contains the custom masking
* routine, in the format of
* `projects/{project_number}/datasets/{dataset_id}/routines/{routine_id}`.
*
* @var string
*/
public $routine;
/**
* Optional. A predefined masking expression.
*
* Accepted values: PREDEFINED_EXPRESSION_UNSPECIFIED, SHA256, ALWAYS_NULL,
* DEFAULT_MASKING_VALUE, LAST_FOUR_CHARACTERS, FIRST_FOUR_CHARACTERS,
* EMAIL_MASK, DATE_YEAR_MASK, RANDOM_HASH
*
* @param self::PREDEFINED_EXPRESSION_* $predefinedExpression
*/
public function setPredefinedExpression($predefinedExpression)
{
$this->predefinedExpression = $predefinedExpression;
}
/**
* @return self::PREDEFINED_EXPRESSION_*
*/
public function getPredefinedExpression()
{
return $this->predefinedExpression;
}
/**
* Optional. The name of the BigQuery routine that contains the custom masking
* routine, in the format of
* `projects/{project_number}/datasets/{dataset_id}/routines/{routine_id}`.
*
* @param string $routine
*/
public function setRoutine($routine)
{
$this->routine = $routine;
}
/**
* @return string
*/
public function getRoutine()
{
return $this->routine;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(DataMaskingPolicy::class, 'Google_Service_BigQueryDataPolicyService_DataMaskingPolicy');
@@ -0,0 +1,280 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class DataPolicy extends \Google\Collection
{
/**
* Default value for the data policy type. This should not be used.
*/
public const DATA_POLICY_TYPE_DATA_POLICY_TYPE_UNSPECIFIED = 'DATA_POLICY_TYPE_UNSPECIFIED';
/**
* Used to create a data policy for data masking.
*/
public const DATA_POLICY_TYPE_DATA_MASKING_POLICY = 'DATA_MASKING_POLICY';
/**
* Used to create a data policy for raw data access.
*/
public const DATA_POLICY_TYPE_RAW_DATA_ACCESS_POLICY = 'RAW_DATA_ACCESS_POLICY';
/**
* Used to create a data policy for column-level security, without data
* masking. This is deprecated in V2 api and only present to support GET and
* LIST operations for V1 data policies in V2 api.
*/
public const DATA_POLICY_TYPE_COLUMN_LEVEL_SECURITY_POLICY = 'COLUMN_LEVEL_SECURITY_POLICY';
/**
* Default value for the data policy version. This should not be used.
*/
public const VERSION_VERSION_UNSPECIFIED = 'VERSION_UNSPECIFIED';
/**
* V1 data policy version. V1 Data Policies will be present in V2 List api
* response, but can not be created/updated/deleted from V2 api.
*/
public const VERSION_V1 = 'V1';
/**
* V2 data policy version.
*/
public const VERSION_V2 = 'V2';
protected $collection_key = 'grantees';
protected $dataGovernanceTagType = DataGovernanceTag::class;
protected $dataGovernanceTagDataType = '';
protected $dataMaskingPolicyType = DataMaskingPolicy::class;
protected $dataMaskingPolicyDataType = '';
/**
* Output only. User-assigned (human readable) ID of the data policy that
* needs to be unique within a project. Used as {data_policy_id} in part of
* the resource name.
*
* @var string
*/
public $dataPolicyId;
/**
* Required. Type of data policy.
*
* @var string
*/
public $dataPolicyType;
/**
* The etag for this Data Policy. This field is used for UpdateDataPolicy
* calls. If Data Policy exists, this field is required and must match the
* server's etag. It will also be populated in the response of GetDataPolicy,
* CreateDataPolicy, and UpdateDataPolicy calls.
*
* @var string
*/
public $etag;
/**
* Optional. The list of IAM principals that have Fine Grained Access to the
* underlying data goverened by this data policy. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only
* supports principal types users, groups, serviceaccounts, cloudidentity.
* This field is supported in V2 Data Policy only. In case of V1 data policies
* (i.e. verion = 1 and policy_tag is set), this field is not populated.
*
* @var string[]
*/
public $grantees;
/**
* Identifier. Resource name of this data policy, in the format of `projects/{
* project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
*
* @var string
*/
public $name;
/**
* Output only. Policy tag resource name, in the format of `projects/{project_
* number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policy
* Tag_id}`. policy_tag is supported only for V1 data policies.
*
* @var string
*/
public $policyTag;
/**
* Output only. The version of the Data Policy resource.
*
* @var string
*/
public $version;
/**
* Optional. Data Governance tag bound to the Data Policy.
*
* @param DataGovernanceTag $dataGovernanceTag
*/
public function setDataGovernanceTag(DataGovernanceTag $dataGovernanceTag)
{
$this->dataGovernanceTag = $dataGovernanceTag;
}
/**
* @return DataGovernanceTag
*/
public function getDataGovernanceTag()
{
return $this->dataGovernanceTag;
}
/**
* Optional. The data masking policy that specifies the data masking rule to
* use. It must be set if the data policy type is DATA_MASKING_POLICY.
*
* @param DataMaskingPolicy $dataMaskingPolicy
*/
public function setDataMaskingPolicy(DataMaskingPolicy $dataMaskingPolicy)
{
$this->dataMaskingPolicy = $dataMaskingPolicy;
}
/**
* @return DataMaskingPolicy
*/
public function getDataMaskingPolicy()
{
return $this->dataMaskingPolicy;
}
/**
* Output only. User-assigned (human readable) ID of the data policy that
* needs to be unique within a project. Used as {data_policy_id} in part of
* the resource name.
*
* @param string $dataPolicyId
*/
public function setDataPolicyId($dataPolicyId)
{
$this->dataPolicyId = $dataPolicyId;
}
/**
* @return string
*/
public function getDataPolicyId()
{
return $this->dataPolicyId;
}
/**
* Required. Type of data policy.
*
* Accepted values: DATA_POLICY_TYPE_UNSPECIFIED, DATA_MASKING_POLICY,
* RAW_DATA_ACCESS_POLICY, COLUMN_LEVEL_SECURITY_POLICY
*
* @param self::DATA_POLICY_TYPE_* $dataPolicyType
*/
public function setDataPolicyType($dataPolicyType)
{
$this->dataPolicyType = $dataPolicyType;
}
/**
* @return self::DATA_POLICY_TYPE_*
*/
public function getDataPolicyType()
{
return $this->dataPolicyType;
}
/**
* The etag for this Data Policy. This field is used for UpdateDataPolicy
* calls. If Data Policy exists, this field is required and must match the
* server's etag. It will also be populated in the response of GetDataPolicy,
* CreateDataPolicy, and UpdateDataPolicy calls.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Optional. The list of IAM principals that have Fine Grained Access to the
* underlying data goverened by this data policy. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2) Only
* supports principal types users, groups, serviceaccounts, cloudidentity.
* This field is supported in V2 Data Policy only. In case of V1 data policies
* (i.e. verion = 1 and policy_tag is set), this field is not populated.
*
* @param string[] $grantees
*/
public function setGrantees($grantees)
{
$this->grantees = $grantees;
}
/**
* @return string[]
*/
public function getGrantees()
{
return $this->grantees;
}
/**
* Identifier. Resource name of this data policy, in the format of `projects/{
* project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Output only. Policy tag resource name, in the format of `projects/{project_
* number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policy
* Tag_id}`. policy_tag is supported only for V1 data policies.
*
* @param string $policyTag
*/
public function setPolicyTag($policyTag)
{
$this->policyTag = $policyTag;
}
/**
* @return string
*/
public function getPolicyTag()
{
return $this->policyTag;
}
/**
* Output only. The version of the Data Policy resource.
*
* Accepted values: VERSION_UNSPECIFIED, V1, V2
*
* @param self::VERSION_* $version
*/
public function setVersion($version)
{
$this->version = $version;
}
/**
* @return self::VERSION_*
*/
public function getVersion()
{
return $this->version;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(DataPolicy::class, 'Google_Service_BigQueryDataPolicyService_DataPolicy');
@@ -0,0 +1,122 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class Expr extends \Google\Model
{
/**
* Optional. Description of the expression. This is a longer text which
* describes the expression, e.g. when hovered over it in a UI.
*
* @var string
*/
public $description;
/**
* Textual representation of an expression in Common Expression Language
* syntax.
*
* @var string
*/
public $expression;
/**
* Optional. String indicating the location of the expression for error
* reporting, e.g. a file name and a position in the file.
*
* @var string
*/
public $location;
/**
* Optional. Title for the expression, i.e. a short string describing its
* purpose. This can be used e.g. in UIs which allow to enter the expression.
*
* @var string
*/
public $title;
/**
* Optional. Description of the expression. This is a longer text which
* describes the expression, e.g. when hovered over it in a UI.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Textual representation of an expression in Common Expression Language
* syntax.
*
* @param string $expression
*/
public function setExpression($expression)
{
$this->expression = $expression;
}
/**
* @return string
*/
public function getExpression()
{
return $this->expression;
}
/**
* Optional. String indicating the location of the expression for error
* reporting, e.g. a file name and a position in the file.
*
* @param string $location
*/
public function setLocation($location)
{
$this->location = $location;
}
/**
* @return string
*/
public function getLocation()
{
return $this->location;
}
/**
* Optional. Title for the expression, i.e. a short string describing its
* purpose. This can be used e.g. in UIs which allow to enter the expression.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Expr::class, 'Google_Service_BigQueryDataPolicyService_Expr');
@@ -0,0 +1,45 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class GetIamPolicyRequest extends \Google\Model
{
protected $optionsType = GetPolicyOptions::class;
protected $optionsDataType = '';
/**
* OPTIONAL: A `GetPolicyOptions` object for specifying options to
* `GetIamPolicy`.
*
* @param GetPolicyOptions $options
*/
public function setOptions(GetPolicyOptions $options)
{
$this->options = $options;
}
/**
* @return GetPolicyOptions
*/
public function getOptions()
{
return $this->options;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GetIamPolicyRequest::class, 'Google_Service_BigQueryDataPolicyService_GetIamPolicyRequest');
@@ -0,0 +1,68 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class GetPolicyOptions extends \Google\Model
{
/**
* Optional. The maximum policy version that will be used to format the
* policy. Valid values are 0, 1, and 3. Requests specifying an invalid value
* will be rejected. Requests for policies with any conditional role bindings
* must specify version 3. Policies with no conditional role bindings may
* specify any valid value or leave the field unset. The policy in the
* response might use the policy version that you specified, or it might use a
* lower policy version. For example, if you specify version 3, but the policy
* has no conditional role bindings, the response uses version 1. To learn
* which resources support conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @var int
*/
public $requestedPolicyVersion;
/**
* Optional. The maximum policy version that will be used to format the
* policy. Valid values are 0, 1, and 3. Requests specifying an invalid value
* will be rejected. Requests for policies with any conditional role bindings
* must specify version 3. Policies with no conditional role bindings may
* specify any valid value or leave the field unset. The policy in the
* response might use the policy version that you specified, or it might use a
* lower policy version. For example, if you specify version 3, but the policy
* has no conditional role bindings, the response uses version 1. To learn
* which resources support conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @param int $requestedPolicyVersion
*/
public function setRequestedPolicyVersion($requestedPolicyVersion)
{
$this->requestedPolicyVersion = $requestedPolicyVersion;
}
/**
* @return int
*/
public function getRequestedPolicyVersion()
{
return $this->requestedPolicyVersion;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GetPolicyOptions::class, 'Google_Service_BigQueryDataPolicyService_GetPolicyOptions');
@@ -0,0 +1,69 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class ListDataPoliciesResponse extends \Google\Collection
{
protected $collection_key = 'dataPolicies';
protected $dataPoliciesType = DataPolicy::class;
protected $dataPoliciesDataType = 'array';
/**
* Token used to retrieve the next page of results, or empty if there are no
* more results.
*
* @var string
*/
public $nextPageToken;
/**
* Data policies that belong to the requested project.
*
* @param DataPolicy[] $dataPolicies
*/
public function setDataPolicies($dataPolicies)
{
$this->dataPolicies = $dataPolicies;
}
/**
* @return DataPolicy[]
*/
public function getDataPolicies()
{
return $this->dataPolicies;
}
/**
* Token used to retrieve the next page of results, or empty if there are no
* more results.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ListDataPoliciesResponse::class, 'Google_Service_BigQueryDataPolicyService_ListDataPoliciesResponse');
@@ -0,0 +1,165 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class Policy extends \Google\Collection
{
protected $collection_key = 'bindings';
protected $auditConfigsType = AuditConfig::class;
protected $auditConfigsDataType = 'array';
protected $bindingsType = Binding::class;
protected $bindingsDataType = 'array';
/**
* `etag` is used for optimistic concurrency control as a way to help prevent
* simultaneous updates of a policy from overwriting each other. It is
* strongly suggested that systems make use of the `etag` in the read-modify-
* write cycle to perform policy updates in order to avoid race conditions: An
* `etag` is returned in the response to `getIamPolicy`, and systems are
* expected to put that etag in the request to `setIamPolicy` to ensure that
* their change will be applied to the same version of the policy.
* **Important:** If you use IAM Conditions, you must include the `etag` field
* whenever you call `setIamPolicy`. If you omit this field, then IAM allows
* you to overwrite a version `3` policy with a version `1` policy, and all of
* the conditions in the version `3` policy are lost.
*
* @var string
*/
public $etag;
/**
* Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
* Requests that specify an invalid value are rejected. Any operation that
* affects conditional role bindings must specify version `3`. This
* requirement applies to the following operations: * Getting a policy that
* includes a conditional role binding * Adding a conditional role binding to
* a policy * Changing a conditional role binding in a policy * Removing any
* role binding, with or without a condition, from a policy that includes
* conditions **Important:** If you use IAM Conditions, you must include the
* `etag` field whenever you call `setIamPolicy`. If you omit this field, then
* IAM allows you to overwrite a version `3` policy with a version `1` policy,
* and all of the conditions in the version `3` policy are lost. If a policy
* does not include any conditions, operations on that policy may specify any
* valid version or leave the field unset. To learn which resources support
* conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @var int
*/
public $version;
/**
* Specifies cloud audit logging configuration for this policy.
*
* @param AuditConfig[] $auditConfigs
*/
public function setAuditConfigs($auditConfigs)
{
$this->auditConfigs = $auditConfigs;
}
/**
* @return AuditConfig[]
*/
public function getAuditConfigs()
{
return $this->auditConfigs;
}
/**
* Associates a list of `members`, or principals, with a `role`. Optionally,
* may specify a `condition` that determines how and when the `bindings` are
* applied. Each of the `bindings` must contain at least one principal. The
* `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of
* these principals can be Google groups. Each occurrence of a principal
* counts towards these limits. For example, if the `bindings` grant 50
* different roles to `user:alice@example.com`, and not to any other
* principal, then you can add another 1,450 principals to the `bindings` in
* the `Policy`.
*
* @param Binding[] $bindings
*/
public function setBindings($bindings)
{
$this->bindings = $bindings;
}
/**
* @return Binding[]
*/
public function getBindings()
{
return $this->bindings;
}
/**
* `etag` is used for optimistic concurrency control as a way to help prevent
* simultaneous updates of a policy from overwriting each other. It is
* strongly suggested that systems make use of the `etag` in the read-modify-
* write cycle to perform policy updates in order to avoid race conditions: An
* `etag` is returned in the response to `getIamPolicy`, and systems are
* expected to put that etag in the request to `setIamPolicy` to ensure that
* their change will be applied to the same version of the policy.
* **Important:** If you use IAM Conditions, you must include the `etag` field
* whenever you call `setIamPolicy`. If you omit this field, then IAM allows
* you to overwrite a version `3` policy with a version `1` policy, and all of
* the conditions in the version `3` policy are lost.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
* Requests that specify an invalid value are rejected. Any operation that
* affects conditional role bindings must specify version `3`. This
* requirement applies to the following operations: * Getting a policy that
* includes a conditional role binding * Adding a conditional role binding to
* a policy * Changing a conditional role binding in a policy * Removing any
* role binding, with or without a condition, from a policy that includes
* conditions **Important:** If you use IAM Conditions, you must include the
* `etag` field whenever you call `setIamPolicy`. If you omit this field, then
* IAM allows you to overwrite a version `3` policy with a version `1` policy,
* and all of the conditions in the version `3` policy are lost. If a policy
* does not include any conditions, operations on that policy may specify any
* valid version or leave the field unset. To learn which resources support
* conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @param int $version
*/
public function setVersion($version)
{
$this->version = $version;
}
/**
* @return int
*/
public function getVersion()
{
return $this->version;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Policy::class, 'Google_Service_BigQueryDataPolicyService_Policy');
@@ -0,0 +1,57 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class RemoveGranteesRequest extends \Google\Collection
{
protected $collection_key = 'grantees';
/**
* Required. IAM principal that should be revoked from Fine Grained Access to
* the underlying data goverened by the data policy. The target data policy is
* determined by the `data_policy` field. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2).
* Supported principal types: * User * Group * Service account
*
* @var string[]
*/
public $grantees;
/**
* Required. IAM principal that should be revoked from Fine Grained Access to
* the underlying data goverened by the data policy. The target data policy is
* determined by the `data_policy` field. Uses the [IAM V2 principal
* syntax](https://cloud.google.com/iam/docs/principal-identifiers#v2).
* Supported principal types: * User * Group * Service account
*
* @param string[] $grantees
*/
public function setGrantees($grantees)
{
$this->grantees = $grantees;
}
/**
* @return string[]
*/
public function getGrantees()
{
return $this->grantees;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(RemoveGranteesRequest::class, 'Google_Service_BigQueryDataPolicyService_RemoveGranteesRequest');
@@ -0,0 +1,44 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class RenameDataPolicyRequest extends \Google\Model
{
/**
* @var string
*/
public $newDataPolicyId;
/**
* @param string
*/
public function setNewDataPolicyId($newDataPolicyId)
{
$this->newDataPolicyId = $newDataPolicyId;
}
/**
* @return string
*/
public function getNewDataPolicyId()
{
return $this->newDataPolicyId;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(RenameDataPolicyRequest::class, 'Google_Service_BigQueryDataPolicyService_RenameDataPolicyRequest');
@@ -0,0 +1,33 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService\Resource;
/**
* The "projects" collection of methods.
* Typical usage is:
* <code>
* $bigquerydatapolicyService = new Google\Service\BigQueryDataPolicyService(...);
* $projects = $bigquerydatapolicyService->projects;
* </code>
*/
class Projects extends \Google\Service\Resource
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Projects::class, 'Google_Service_BigQueryDataPolicyService_Resource_Projects');
@@ -0,0 +1,33 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService\Resource;
/**
* The "locations" collection of methods.
* Typical usage is:
* <code>
* $bigquerydatapolicyService = new Google\Service\BigQueryDataPolicyService(...);
* $locations = $bigquerydatapolicyService->projects_locations;
* </code>
*/
class ProjectsLocations extends \Google\Service\Resource
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ProjectsLocations::class, 'Google_Service_BigQueryDataPolicyService_Resource_ProjectsLocations');
@@ -0,0 +1,247 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService\Resource;
use Google\Service\BigQueryDataPolicyService\AddGranteesRequest;
use Google\Service\BigQueryDataPolicyService\BigquerydatapolicyEmpty;
use Google\Service\BigQueryDataPolicyService\CreateDataPolicyRequest;
use Google\Service\BigQueryDataPolicyService\DataPolicy;
use Google\Service\BigQueryDataPolicyService\GetIamPolicyRequest;
use Google\Service\BigQueryDataPolicyService\ListDataPoliciesResponse;
use Google\Service\BigQueryDataPolicyService\Policy;
use Google\Service\BigQueryDataPolicyService\RemoveGranteesRequest;
use Google\Service\BigQueryDataPolicyService\SetIamPolicyRequest;
use Google\Service\BigQueryDataPolicyService\TestIamPermissionsRequest;
use Google\Service\BigQueryDataPolicyService\TestIamPermissionsResponse;
/**
* The "dataPolicies" collection of methods.
* Typical usage is:
* <code>
* $bigquerydatapolicyService = new Google\Service\BigQueryDataPolicyService(...);
* $dataPolicies = $bigquerydatapolicyService->projects_locations_dataPolicies;
* </code>
*/
class ProjectsLocationsDataPolicies extends \Google\Service\Resource
{
/**
* Adds new grantees to a data policy. The new grantees will be added to the
* existing grantees. If the request contains a duplicate grantee, the grantee
* will be ignored. If the request contains a grantee that already exists, the
* grantee will be ignored. (dataPolicies.addGrantees)
*
* @param string $dataPolicy Required. Resource name of this data policy, in the
* format of `projects/{project_number}/locations/{location_id}/dataPolicies/{da
* ta_policy_id}`.
* @param AddGranteesRequest $postBody
* @param array $optParams Optional parameters.
* @return DataPolicy
* @throws \Google\Service\Exception
*/
public function addGrantees($dataPolicy, AddGranteesRequest $postBody, $optParams = [])
{
$params = ['dataPolicy' => $dataPolicy, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('addGrantees', [$params], DataPolicy::class);
}
/**
* Creates a new data policy under a project with the given `data_policy_id`
* (used as the display name), and data policy type. (dataPolicies.create)
*
* @param string $parent Required. Resource name of the project that the data
* policy will belong to. The format is
* `projects/{project_number}/locations/{location_id}`.
* @param CreateDataPolicyRequest $postBody
* @param array $optParams Optional parameters.
* @return DataPolicy
* @throws \Google\Service\Exception
*/
public function create($parent, CreateDataPolicyRequest $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], DataPolicy::class);
}
/**
* Deletes the data policy specified by its resource name. (dataPolicies.delete)
*
* @param string $name Required. Resource name of the data policy to delete.
* Format is
* `projects/{project_number}/locations/{location_id}/dataPolicies/{id}`.
* @param array $optParams Optional parameters.
* @return BigquerydatapolicyEmpty
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], BigquerydatapolicyEmpty::class);
}
/**
* Gets the data policy specified by its resource name. (dataPolicies.get)
*
* @param string $name Required. Resource name of the requested data policy.
* Format is
* `projects/{project_number}/locations/{location_id}/dataPolicies/{id}`.
* @param array $optParams Optional parameters.
* @return DataPolicy
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], DataPolicy::class);
}
/**
* Gets the IAM policy for the specified data policy.
* (dataPolicies.getIamPolicy)
*
* @param string $resource REQUIRED: The resource for which the policy is being
* requested. See [Resource
* names](https://cloud.google.com/apis/design/resource_names) for the
* appropriate value for this field.
* @param GetIamPolicyRequest $postBody
* @param array $optParams Optional parameters.
* @return Policy
* @throws \Google\Service\Exception
*/
public function getIamPolicy($resource, GetIamPolicyRequest $postBody, $optParams = [])
{
$params = ['resource' => $resource, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('getIamPolicy', [$params], Policy::class);
}
/**
* List all of the data policies in the specified parent project.
* (dataPolicies.listProjectsLocationsDataPolicies)
*
* @param string $parent Required. Resource name of the project for which to
* list data policies. Format is
* `projects/{project_number}/locations/{location_id}`.
* @param array $optParams Optional parameters.
*
* @opt_param string filter Optional. Filters the data policies by policy tags
* that they are associated with. Currently filter only supports "policy_tag"
* based filtering and OR based predicates. Sample filter can be "policy_tag:
* projects/1/locations/us/taxonomies/2/policyTags/3". You may also use wildcard
* such as "policy_tag: projects/1/locations/us/taxonomies/2*". Please note that
* OR predicates cannot be used with wildcard filters.
* @opt_param int pageSize Optional. The maximum number of data policies to
* return. Must be a value between 1 and 1000. If not set, defaults to 50.
* @opt_param string pageToken Optional. The `nextPageToken` value returned from
* a previous list request, if any. If not set, defaults to an empty string.
* @return ListDataPoliciesResponse
* @throws \Google\Service\Exception
*/
public function listProjectsLocationsDataPolicies($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListDataPoliciesResponse::class);
}
/**
* Updates the metadata for an existing data policy. The target data policy can
* be specified by the resource name. (dataPolicies.patch)
*
* @param string $name Identifier. Resource name of this data policy, in the
* format of `projects/{project_number}/locations/{location_id}/dataPolicies/{da
* ta_policy_id}`.
* @param DataPolicy $postBody
* @param array $optParams Optional parameters.
*
* @opt_param bool allowMissing Optional. If set to true, and the data policy is
* not found, a new data policy will be created. In this situation, update_mask
* is ignored.
* @opt_param string updateMask Optional. The update mask applies to the
* resource. For the `FieldMask` definition, see
* https://developers.google.com/protocol-
* buffers/docs/reference/google.protobuf#fieldmask If not set, defaults to all
* of the fields that are allowed to update. Updates to the `name` and
* `dataPolicyId` fields are not allowed.
* @return DataPolicy
* @throws \Google\Service\Exception
*/
public function patch($name, DataPolicy $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], DataPolicy::class);
}
/**
* Removes grantees from a data policy. The grantees will be removed from the
* existing grantees. If the request contains a grantee that does not exist, the
* grantee will be ignored. (dataPolicies.removeGrantees)
*
* @param string $dataPolicy Required. Resource name of this data policy, in the
* format of `projects/{project_number}/locations/{location_id}/dataPolicies/{da
* ta_policy_id}`.
* @param RemoveGranteesRequest $postBody
* @param array $optParams Optional parameters.
* @return DataPolicy
* @throws \Google\Service\Exception
*/
public function removeGrantees($dataPolicy, RemoveGranteesRequest $postBody, $optParams = [])
{
$params = ['dataPolicy' => $dataPolicy, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('removeGrantees', [$params], DataPolicy::class);
}
/**
* Sets the IAM policy for the specified data policy.
* (dataPolicies.setIamPolicy)
*
* @param string $resource REQUIRED: The resource for which the policy is being
* specified. See [Resource
* names](https://cloud.google.com/apis/design/resource_names) for the
* appropriate value for this field.
* @param SetIamPolicyRequest $postBody
* @param array $optParams Optional parameters.
* @return Policy
* @throws \Google\Service\Exception
*/
public function setIamPolicy($resource, SetIamPolicyRequest $postBody, $optParams = [])
{
$params = ['resource' => $resource, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('setIamPolicy', [$params], Policy::class);
}
/**
* Returns the caller's permission on the specified data policy resource.
* (dataPolicies.testIamPermissions)
*
* @param string $resource REQUIRED: The resource for which the policy detail is
* being requested. See [Resource
* names](https://cloud.google.com/apis/design/resource_names) for the
* appropriate value for this field.
* @param TestIamPermissionsRequest $postBody
* @param array $optParams Optional parameters.
* @return TestIamPermissionsResponse
* @throws \Google\Service\Exception
*/
public function testIamPermissions($resource, TestIamPermissionsRequest $postBody, $optParams = [])
{
$params = ['resource' => $resource, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('testIamPermissions', [$params], TestIamPermissionsResponse::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ProjectsLocationsDataPolicies::class, 'Google_Service_BigQueryDataPolicyService_Resource_ProjectsLocationsDataPolicies');
@@ -0,0 +1,72 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class SetIamPolicyRequest extends \Google\Model
{
protected $policyType = Policy::class;
protected $policyDataType = '';
/**
* OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
* the fields in the mask will be modified. If no mask is provided, the
* following default mask is used: `paths: "bindings, etag"`
*
* @var string
*/
public $updateMask;
/**
* REQUIRED: The complete policy to be applied to the `resource`. The size of
* the policy is limited to a few 10s of KB. An empty policy is a valid policy
* but certain Google Cloud services (such as Projects) might reject them.
*
* @param Policy $policy
*/
public function setPolicy(Policy $policy)
{
$this->policy = $policy;
}
/**
* @return Policy
*/
public function getPolicy()
{
return $this->policy;
}
/**
* OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
* the fields in the mask will be modified. If no mask is provided, the
* following default mask is used: `paths: "bindings, etag"`
*
* @param string $updateMask
*/
public function setUpdateMask($updateMask)
{
$this->updateMask = $updateMask;
}
/**
* @return string
*/
public function getUpdateMask()
{
return $this->updateMask;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(SetIamPolicyRequest::class, 'Google_Service_BigQueryDataPolicyService_SetIamPolicyRequest');
@@ -0,0 +1,55 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class TestIamPermissionsRequest extends \Google\Collection
{
protected $collection_key = 'permissions';
/**
* The set of permissions to check for the `resource`. Permissions with
* wildcards (such as `*` or `storage.*`) are not allowed. For more
* information see [IAM
* Overview](https://cloud.google.com/iam/docs/overview#permissions).
*
* @var string[]
*/
public $permissions;
/**
* The set of permissions to check for the `resource`. Permissions with
* wildcards (such as `*` or `storage.*`) are not allowed. For more
* information see [IAM
* Overview](https://cloud.google.com/iam/docs/overview#permissions).
*
* @param string[] $permissions
*/
public function setPermissions($permissions)
{
$this->permissions = $permissions;
}
/**
* @return string[]
*/
public function getPermissions()
{
return $this->permissions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(TestIamPermissionsRequest::class, 'Google_Service_BigQueryDataPolicyService_TestIamPermissionsRequest');
@@ -0,0 +1,51 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\BigQueryDataPolicyService;
class TestIamPermissionsResponse extends \Google\Collection
{
protected $collection_key = 'permissions';
/**
* A subset of `TestPermissionsRequest.permissions` that the caller is
* allowed.
*
* @var string[]
*/
public $permissions;
/**
* A subset of `TestPermissionsRequest.permissions` that the caller is
* allowed.
*
* @param string[] $permissions
*/
public function setPermissions($permissions)
{
$this->permissions = $permissions;
}
/**
* @return string[]
*/
public function getPermissions()
{
return $this->permissions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(TestIamPermissionsResponse::class, 'Google_Service_BigQueryDataPolicyService_TestIamPermissionsResponse');