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,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\AccessContextManager;
class AccessContextManagerOperationMetadata extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccessContextManagerOperationMetadata::class, 'Google_Service_AccessContextManager_AccessContextManagerOperationMetadata');
@@ -0,0 +1,136 @@
<?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\AccessContextManager;
class AccessLevel extends \Google\Model
{
protected $basicType = BasicLevel::class;
protected $basicDataType = '';
protected $customType = CustomLevel::class;
protected $customDataType = '';
/**
* Description of the `AccessLevel` and its use. Does not affect behavior.
*
* @var string
*/
public $description;
/**
* Identifier. Resource name for the `AccessLevel`. Format:
* `accessPolicies/{access_policy}/accessLevels/{access_level}`. The
* `access_level` component must begin with a letter, followed by alphanumeric
* characters or `_`. Its maximum length is 50 characters. After you create an
* `AccessLevel`, you cannot change its `name`.
*
* @var string
*/
public $name;
/**
* Human readable title. Must be unique within the Policy.
*
* @var string
*/
public $title;
/**
* A `BasicLevel` composed of `Conditions`.
*
* @param BasicLevel $basic
*/
public function setBasic(BasicLevel $basic)
{
$this->basic = $basic;
}
/**
* @return BasicLevel
*/
public function getBasic()
{
return $this->basic;
}
/**
* A `CustomLevel` written in the Common Expression Language.
*
* @param CustomLevel $custom
*/
public function setCustom(CustomLevel $custom)
{
$this->custom = $custom;
}
/**
* @return CustomLevel
*/
public function getCustom()
{
return $this->custom;
}
/**
* Description of the `AccessLevel` and its use. Does not affect behavior.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Identifier. Resource name for the `AccessLevel`. Format:
* `accessPolicies/{access_policy}/accessLevels/{access_level}`. The
* `access_level` component must begin with a letter, followed by alphanumeric
* characters or `_`. Its maximum length is 50 characters. After you create an
* `AccessLevel`, you cannot change its `name`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Human readable title. Must be unique within the Policy.
*
* @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(AccessLevel::class, 'Google_Service_AccessContextManager_AccessLevel');
@@ -0,0 +1,169 @@
<?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\AccessContextManager;
class AccessPolicy extends \Google\Collection
{
protected $collection_key = 'scopes';
/**
* Output only. An opaque identifier for the current version of the
* `AccessPolicy`. This will always be a strongly validated etag, meaning that
* two Access Policies will be identical if and only if their etags are
* identical. Clients should not expect this to be in any specific format.
*
* @var string
*/
public $etag;
/**
* Output only. Identifier. Resource name of the `AccessPolicy`. Format:
* `accessPolicies/{access_policy}`
*
* @var string
*/
public $name;
/**
* Required. The parent of this `AccessPolicy` in the Cloud Resource
* Hierarchy. Currently immutable once created. Format:
* `organizations/{organization_id}`
*
* @var string
*/
public $parent;
/**
* The scopes of the AccessPolicy. Scopes define which resources a policy can
* restrict and where its resources can be referenced. For example, policy A
* with `scopes=["folders/123"]` has the following behavior: -
* ServicePerimeter can only restrict projects within `folders/123`. -
* ServicePerimeter within policy A can only reference access levels defined
* within policy A. - Only one policy can include a given scope; thus,
* attempting to create a second policy which includes `folders/123` will
* result in an error. If no scopes are provided, then any resource within the
* organization can be restricted. Scopes cannot be modified after a policy is
* created. Policies can only have a single scope. Format: list of
* `folders/{folder_number}` or `projects/{project_number}`
*
* @var string[]
*/
public $scopes;
/**
* Required. Human readable title. Does not affect behavior.
*
* @var string
*/
public $title;
/**
* Output only. An opaque identifier for the current version of the
* `AccessPolicy`. This will always be a strongly validated etag, meaning that
* two Access Policies will be identical if and only if their etags are
* identical. Clients should not expect this to be in any specific format.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Output only. Identifier. Resource name of the `AccessPolicy`. Format:
* `accessPolicies/{access_policy}`
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Required. The parent of this `AccessPolicy` in the Cloud Resource
* Hierarchy. Currently immutable once created. Format:
* `organizations/{organization_id}`
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The scopes of the AccessPolicy. Scopes define which resources a policy can
* restrict and where its resources can be referenced. For example, policy A
* with `scopes=["folders/123"]` has the following behavior: -
* ServicePerimeter can only restrict projects within `folders/123`. -
* ServicePerimeter within policy A can only reference access levels defined
* within policy A. - Only one policy can include a given scope; thus,
* attempting to create a second policy which includes `folders/123` will
* result in an error. If no scopes are provided, then any resource within the
* organization can be restricted. Scopes cannot be modified after a policy is
* created. Policies can only have a single scope. Format: list of
* `folders/{folder_number}` or `projects/{project_number}`
*
* @param string[] $scopes
*/
public function setScopes($scopes)
{
$this->scopes = $scopes;
}
/**
* @return string[]
*/
public function getScopes()
{
return $this->scopes;
}
/**
* Required. Human readable title. Does not affect behavior.
*
* @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(AccessPolicy::class, 'Google_Service_AccessContextManager_AccessPolicy');
@@ -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\AccessContextManager;
class AccessScope extends \Google\Model
{
protected $clientScopeType = ClientScope::class;
protected $clientScopeDataType = '';
/**
* Optional. Client scope for this access scope.
*
* @param ClientScope $clientScope
*/
public function setClientScope(ClientScope $clientScope)
{
$this->clientScope = $clientScope;
}
/**
* @return ClientScope
*/
public function getClientScope()
{
return $this->clientScope;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccessScope::class, 'Google_Service_AccessContextManager_AccessScope');
@@ -0,0 +1,73 @@
<?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\AccessContextManager;
class AccessSettings extends \Google\Collection
{
protected $collection_key = 'accessLevels';
/**
* Optional. Access level that a user must have to be granted access. Only one
* access level is supported, not multiple. This repeated field must have
* exactly one element. Example:
* "accessPolicies/9522/accessLevels/device_trusted"
*
* @var string[]
*/
public $accessLevels;
protected $sessionSettingsType = SessionSettings::class;
protected $sessionSettingsDataType = '';
/**
* Optional. Access level that a user must have to be granted access. Only one
* access level is supported, not multiple. This repeated field must have
* exactly one element. Example:
* "accessPolicies/9522/accessLevels/device_trusted"
*
* @param string[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return string[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* Optional. Session settings applied to user access on a given AccessScope.
*
* @param SessionSettings $sessionSettings
*/
public function setSessionSettings(SessionSettings $sessionSettings)
{
$this->sessionSettings = $sessionSettings;
}
/**
* @return SessionSettings
*/
public function getSessionSettings()
{
return $this->sessionSettings;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccessSettings::class, 'Google_Service_AccessContextManager_AccessSettings');
@@ -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\AccessContextManager;
class AccesscontextmanagerEmpty extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccesscontextmanagerEmpty::class, 'Google_Service_AccessContextManager_AccesscontextmanagerEmpty');
@@ -0,0 +1,74 @@
<?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\AccessContextManager;
class ApiOperation extends \Google\Collection
{
protected $collection_key = 'methodSelectors';
protected $methodSelectorsType = MethodSelector::class;
protected $methodSelectorsDataType = 'array';
/**
* The name of the API whose methods or permissions the IngressPolicy or
* EgressPolicy want to allow. A single ApiOperation with `service_name` field
* set to `*` will allow all methods AND permissions for all services.
*
* @var string
*/
public $serviceName;
/**
* API methods or permissions to allow. Method or permission must belong to
* the service specified by `service_name` field. A single MethodSelector
* entry with `*` specified for the `method` field will allow all methods AND
* permissions for the service specified in `service_name`.
*
* @param MethodSelector[] $methodSelectors
*/
public function setMethodSelectors($methodSelectors)
{
$this->methodSelectors = $methodSelectors;
}
/**
* @return MethodSelector[]
*/
public function getMethodSelectors()
{
return $this->methodSelectors;
}
/**
* The name of the API whose methods or permissions the IngressPolicy or
* EgressPolicy want to allow. A single ApiOperation with `service_name` field
* set to `*` will allow all methods AND permissions for all services.
*
* @param string $serviceName
*/
public function setServiceName($serviceName)
{
$this->serviceName = $serviceName;
}
/**
* @return string
*/
public function getServiceName()
{
return $this->serviceName;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ApiOperation::class, 'Google_Service_AccessContextManager_ApiOperation');
@@ -0,0 +1,70 @@
<?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\AccessContextManager;
class Application extends \Google\Model
{
/**
* The OAuth client ID of the application.
*
* @var string
*/
public $clientId;
/**
* The name of the application. Example: "Cloud Console"
*
* @var string
*/
public $name;
/**
* The OAuth client ID of the application.
*
* @param string $clientId
*/
public function setClientId($clientId)
{
$this->clientId = $clientId;
}
/**
* @return string
*/
public function getClientId()
{
return $this->clientId;
}
/**
* The name of the application. Example: "Cloud Console"
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Application::class, 'Google_Service_AccessContextManager_Application');
@@ -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\AccessContextManager;
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_AccessContextManager_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\AccessContextManager;
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_AccessContextManager_AuditLogConfig');
@@ -0,0 +1,215 @@
<?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\AccessContextManager;
class AuthorizedOrgsDesc extends \Google\Collection
{
/**
* No asset type specified.
*/
public const ASSET_TYPE_ASSET_TYPE_UNSPECIFIED = 'ASSET_TYPE_UNSPECIFIED';
/**
* Device asset type.
*/
public const ASSET_TYPE_ASSET_TYPE_DEVICE = 'ASSET_TYPE_DEVICE';
/**
* Credential strength asset type.
*/
public const ASSET_TYPE_ASSET_TYPE_CREDENTIAL_STRENGTH = 'ASSET_TYPE_CREDENTIAL_STRENGTH';
/**
* No direction specified.
*/
public const AUTHORIZATION_DIRECTION_AUTHORIZATION_DIRECTION_UNSPECIFIED = 'AUTHORIZATION_DIRECTION_UNSPECIFIED';
/**
* The specified organizations are authorized to evaluate traffic in this
* organization.
*/
public const AUTHORIZATION_DIRECTION_AUTHORIZATION_DIRECTION_TO = 'AUTHORIZATION_DIRECTION_TO';
/**
* The traffic of the specified organizations can be evaluated by this
* organization.
*/
public const AUTHORIZATION_DIRECTION_AUTHORIZATION_DIRECTION_FROM = 'AUTHORIZATION_DIRECTION_FROM';
/**
* No authorization type specified.
*/
public const AUTHORIZATION_TYPE_AUTHORIZATION_TYPE_UNSPECIFIED = 'AUTHORIZATION_TYPE_UNSPECIFIED';
/**
* This authorization relationship is "trust".
*/
public const AUTHORIZATION_TYPE_AUTHORIZATION_TYPE_TRUST = 'AUTHORIZATION_TYPE_TRUST';
protected $collection_key = 'orgs';
/**
* The asset type of this authorized orgs desc. Valid values are
* `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
*
* @var string
*/
public $assetType;
/**
* The direction of the authorization relationship between this organization
* and the organizations listed in the `orgs` field. The valid values for this
* field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this
* organization to evaluate traffic in the organizations listed in the `orgs`
* field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the
* `orgs` field to evaluate the traffic in this organization. For the
* authorization relationship to take effect, all of the organizations must
* authorize and specify the appropriate relationship direction. For example,
* if organization A authorized organization B and C to evaluate its traffic,
* by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction,
* organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the
* authorization direction in their `AuthorizedOrgsDesc` resource.
*
* @var string
*/
public $authorizationDirection;
/**
* A granular control type for authorization levels. Valid value is
* `AUTHORIZATION_TYPE_TRUST`.
*
* @var string
*/
public $authorizationType;
/**
* Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPoli
* cies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The
* `authorized_orgs_desc` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`,
* you cannot change its `name`.
*
* @var string
*/
public $name;
/**
* The list of organization ids in this AuthorizedOrgsDesc. Format:
* `organizations/` Example: `organizations/123456`
*
* @var string[]
*/
public $orgs;
/**
* The asset type of this authorized orgs desc. Valid values are
* `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.
*
* Accepted values: ASSET_TYPE_UNSPECIFIED, ASSET_TYPE_DEVICE,
* ASSET_TYPE_CREDENTIAL_STRENGTH
*
* @param self::ASSET_TYPE_* $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return self::ASSET_TYPE_*
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* The direction of the authorization relationship between this organization
* and the organizations listed in the `orgs` field. The valid values for this
* field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this
* organization to evaluate traffic in the organizations listed in the `orgs`
* field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the
* `orgs` field to evaluate the traffic in this organization. For the
* authorization relationship to take effect, all of the organizations must
* authorize and specify the appropriate relationship direction. For example,
* if organization A authorized organization B and C to evaluate its traffic,
* by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction,
* organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the
* authorization direction in their `AuthorizedOrgsDesc` resource.
*
* Accepted values: AUTHORIZATION_DIRECTION_UNSPECIFIED,
* AUTHORIZATION_DIRECTION_TO, AUTHORIZATION_DIRECTION_FROM
*
* @param self::AUTHORIZATION_DIRECTION_* $authorizationDirection
*/
public function setAuthorizationDirection($authorizationDirection)
{
$this->authorizationDirection = $authorizationDirection;
}
/**
* @return self::AUTHORIZATION_DIRECTION_*
*/
public function getAuthorizationDirection()
{
return $this->authorizationDirection;
}
/**
* A granular control type for authorization levels. Valid value is
* `AUTHORIZATION_TYPE_TRUST`.
*
* Accepted values: AUTHORIZATION_TYPE_UNSPECIFIED, AUTHORIZATION_TYPE_TRUST
*
* @param self::AUTHORIZATION_TYPE_* $authorizationType
*/
public function setAuthorizationType($authorizationType)
{
$this->authorizationType = $authorizationType;
}
/**
* @return self::AUTHORIZATION_TYPE_*
*/
public function getAuthorizationType()
{
return $this->authorizationType;
}
/**
* Identifier. Resource name for the `AuthorizedOrgsDesc`. Format: `accessPoli
* cies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The
* `authorized_orgs_desc` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`,
* you cannot change its `name`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* The list of organization ids in this AuthorizedOrgsDesc. Format:
* `organizations/` Example: `organizations/123456`
*
* @param string[] $orgs
*/
public function setOrgs($orgs)
{
$this->orgs = $orgs;
}
/**
* @return string[]
*/
public function getOrgs()
{
return $this->orgs;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AuthorizedOrgsDesc::class, 'Google_Service_AccessContextManager_AuthorizedOrgsDesc');
@@ -0,0 +1,85 @@
<?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\AccessContextManager;
class BasicLevel extends \Google\Collection
{
/**
* All `Conditions` must be true for the `BasicLevel` to be true.
*/
public const COMBINING_FUNCTION_AND = 'AND';
/**
* If at least one `Condition` is true, then the `BasicLevel` is true.
*/
public const COMBINING_FUNCTION_OR = 'OR';
protected $collection_key = 'conditions';
/**
* How the `conditions` list should be combined to determine if a request is
* granted this `AccessLevel`. If AND is used, each `Condition` in
* `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
* is used, at least one `Condition` in `conditions` must be satisfied for the
* `AccessLevel` to be applied. Default behavior is AND.
*
* @var string
*/
public $combiningFunction;
protected $conditionsType = Condition::class;
protected $conditionsDataType = 'array';
/**
* How the `conditions` list should be combined to determine if a request is
* granted this `AccessLevel`. If AND is used, each `Condition` in
* `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
* is used, at least one `Condition` in `conditions` must be satisfied for the
* `AccessLevel` to be applied. Default behavior is AND.
*
* Accepted values: AND, OR
*
* @param self::COMBINING_FUNCTION_* $combiningFunction
*/
public function setCombiningFunction($combiningFunction)
{
$this->combiningFunction = $combiningFunction;
}
/**
* @return self::COMBINING_FUNCTION_*
*/
public function getCombiningFunction()
{
return $this->combiningFunction;
}
/**
* Required. A list of requirements for the `AccessLevel` to be granted.
*
* @param Condition[] $conditions
*/
public function setConditions($conditions)
{
$this->conditions = $conditions;
}
/**
* @return Condition[]
*/
public function getConditions()
{
return $this->conditions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BasicLevel::class, 'Google_Service_AccessContextManager_BasicLevel');
@@ -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\AccessContextManager;
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_AccessContextManager_Binding');
@@ -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\AccessContextManager;
class CancelOperationRequest extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CancelOperationRequest::class, 'Google_Service_AccessContextManager_CancelOperationRequest');
@@ -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\AccessContextManager;
class ClientScope extends \Google\Model
{
protected $restrictedClientApplicationType = Application::class;
protected $restrictedClientApplicationDataType = '';
/**
* Optional. The application that is subject to this binding's scope.
*
* @param Application $restrictedClientApplication
*/
public function setRestrictedClientApplication(Application $restrictedClientApplication)
{
$this->restrictedClientApplication = $restrictedClientApplication;
}
/**
* @return Application
*/
public function getRestrictedClientApplication()
{
return $this->restrictedClientApplication;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ClientScope::class, 'Google_Service_AccessContextManager_ClientScope');
@@ -0,0 +1,58 @@
<?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\AccessContextManager;
class CommitServicePerimetersRequest extends \Google\Model
{
/**
* Optional. The etag for the version of the Access Policy that this commit
* operation is to be performed on. If, at the time of commit, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the commit operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @var string
*/
public $etag;
/**
* Optional. The etag for the version of the Access Policy that this commit
* operation is to be performed on. If, at the time of commit, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the commit operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CommitServicePerimetersRequest::class, 'Google_Service_AccessContextManager_CommitServicePerimetersRequest');
@@ -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\AccessContextManager;
class CommitServicePerimetersResponse extends \Google\Collection
{
protected $collection_key = 'servicePerimeters';
protected $servicePerimetersType = ServicePerimeter::class;
protected $servicePerimetersDataType = 'array';
/**
* List of all the Service Perimeter instances in the Access Policy.
*
* @param ServicePerimeter[] $servicePerimeters
*/
public function setServicePerimeters($servicePerimeters)
{
$this->servicePerimeters = $servicePerimeters;
}
/**
* @return ServicePerimeter[]
*/
public function getServicePerimeters()
{
return $this->servicePerimeters;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CommitServicePerimetersResponse::class, 'Google_Service_AccessContextManager_CommitServicePerimetersResponse');
@@ -0,0 +1,207 @@
<?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\AccessContextManager;
class Condition extends \Google\Collection
{
protected $collection_key = 'vpcNetworkSources';
protected $devicePolicyType = DevicePolicy::class;
protected $devicePolicyDataType = '';
/**
* CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
* a CIDR IP address block, the specified IP address portion must be properly
* truncated (i.e. all the host bits must be zero) or the input is considered
* malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
* not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
* "2001:db8::1/32" is not. The originating IP of a request must be in one of
* the listed subnets in order for this Condition to be true. If empty, all IP
* addresses are allowed.
*
* @var string[]
*/
public $ipSubnetworks;
/**
* The request must be made by one of the provided user or service accounts.
* Groups are not supported. Syntax: `user:{emailid}`
* `serviceAccount:{emailid}` If not specified, a request may come from any
* user.
*
* @var string[]
*/
public $members;
/**
* Whether to negate the Condition. If true, the Condition becomes a NAND over
* its non-empty fields. Any non-empty field criteria evaluating to false will
* result in the Condition to be satisfied. Defaults to false.
*
* @var bool
*/
public $negate;
/**
* The request must originate from one of the provided countries/regions. Must
* be valid ISO 3166-1 alpha-2 codes.
*
* @var string[]
*/
public $regions;
/**
* A list of other access levels defined in the same `Policy`, referenced by
* resource name. Referencing an `AccessLevel` which does not exist is an
* error. All access levels listed must be granted for the Condition to be
* true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
*
* @var string[]
*/
public $requiredAccessLevels;
protected $vpcNetworkSourcesType = VpcNetworkSource::class;
protected $vpcNetworkSourcesDataType = 'array';
/**
* Device specific restrictions, all restrictions must hold for the Condition
* to be true. If not specified, all devices are allowed.
*
* @param DevicePolicy $devicePolicy
*/
public function setDevicePolicy(DevicePolicy $devicePolicy)
{
$this->devicePolicy = $devicePolicy;
}
/**
* @return DevicePolicy
*/
public function getDevicePolicy()
{
return $this->devicePolicy;
}
/**
* CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
* a CIDR IP address block, the specified IP address portion must be properly
* truncated (i.e. all the host bits must be zero) or the input is considered
* malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
* not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
* "2001:db8::1/32" is not. The originating IP of a request must be in one of
* the listed subnets in order for this Condition to be true. If empty, all IP
* addresses are allowed.
*
* @param string[] $ipSubnetworks
*/
public function setIpSubnetworks($ipSubnetworks)
{
$this->ipSubnetworks = $ipSubnetworks;
}
/**
* @return string[]
*/
public function getIpSubnetworks()
{
return $this->ipSubnetworks;
}
/**
* The request must be made by one of the provided user or service accounts.
* Groups are not supported. Syntax: `user:{emailid}`
* `serviceAccount:{emailid}` If not specified, a request may come from any
* user.
*
* @param string[] $members
*/
public function setMembers($members)
{
$this->members = $members;
}
/**
* @return string[]
*/
public function getMembers()
{
return $this->members;
}
/**
* Whether to negate the Condition. If true, the Condition becomes a NAND over
* its non-empty fields. Any non-empty field criteria evaluating to false will
* result in the Condition to be satisfied. Defaults to false.
*
* @param bool $negate
*/
public function setNegate($negate)
{
$this->negate = $negate;
}
/**
* @return bool
*/
public function getNegate()
{
return $this->negate;
}
/**
* The request must originate from one of the provided countries/regions. Must
* be valid ISO 3166-1 alpha-2 codes.
*
* @param string[] $regions
*/
public function setRegions($regions)
{
$this->regions = $regions;
}
/**
* @return string[]
*/
public function getRegions()
{
return $this->regions;
}
/**
* A list of other access levels defined in the same `Policy`, referenced by
* resource name. Referencing an `AccessLevel` which does not exist is an
* error. All access levels listed must be granted for the Condition to be
* true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
*
* @param string[] $requiredAccessLevels
*/
public function setRequiredAccessLevels($requiredAccessLevels)
{
$this->requiredAccessLevels = $requiredAccessLevels;
}
/**
* @return string[]
*/
public function getRequiredAccessLevels()
{
return $this->requiredAccessLevels;
}
/**
* The request must originate from one of the provided VPC networks in Google
* Cloud. Cannot specify this field together with `ip_subnetworks`.
*
* @param VpcNetworkSource[] $vpcNetworkSources
*/
public function setVpcNetworkSources($vpcNetworkSources)
{
$this->vpcNetworkSources = $vpcNetworkSources;
}
/**
* @return VpcNetworkSource[]
*/
public function getVpcNetworkSources()
{
return $this->vpcNetworkSources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Condition::class, 'Google_Service_AccessContextManager_Condition');
@@ -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\AccessContextManager;
class CustomLevel extends \Google\Model
{
protected $exprType = Expr::class;
protected $exprDataType = '';
/**
* Required. A Cloud CEL expression evaluating to a boolean.
*
* @param Expr $expr
*/
public function setExpr(Expr $expr)
{
$this->expr = $expr;
}
/**
* @return Expr
*/
public function getExpr()
{
return $this->expr;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CustomLevel::class, 'Google_Service_AccessContextManager_CustomLevel');
@@ -0,0 +1,159 @@
<?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\AccessContextManager;
class DevicePolicy extends \Google\Collection
{
protected $collection_key = 'osConstraints';
/**
* Allowed device management levels, an empty list allows all management
* levels.
*
* @var string[]
*/
public $allowedDeviceManagementLevels;
/**
* Allowed encryptions statuses, an empty list allows all statuses.
*
* @var string[]
*/
public $allowedEncryptionStatuses;
protected $osConstraintsType = OsConstraint::class;
protected $osConstraintsDataType = 'array';
/**
* Whether the device needs to be approved by the customer admin.
*
* @var bool
*/
public $requireAdminApproval;
/**
* Whether the device needs to be corp owned.
*
* @var bool
*/
public $requireCorpOwned;
/**
* Whether or not screenlock is required for the DevicePolicy to be true.
* Defaults to `false`.
*
* @var bool
*/
public $requireScreenlock;
/**
* Allowed device management levels, an empty list allows all management
* levels.
*
* @param string[] $allowedDeviceManagementLevels
*/
public function setAllowedDeviceManagementLevels($allowedDeviceManagementLevels)
{
$this->allowedDeviceManagementLevels = $allowedDeviceManagementLevels;
}
/**
* @return string[]
*/
public function getAllowedDeviceManagementLevels()
{
return $this->allowedDeviceManagementLevels;
}
/**
* Allowed encryptions statuses, an empty list allows all statuses.
*
* @param string[] $allowedEncryptionStatuses
*/
public function setAllowedEncryptionStatuses($allowedEncryptionStatuses)
{
$this->allowedEncryptionStatuses = $allowedEncryptionStatuses;
}
/**
* @return string[]
*/
public function getAllowedEncryptionStatuses()
{
return $this->allowedEncryptionStatuses;
}
/**
* Allowed OS versions, an empty list allows all types and all versions.
*
* @param OsConstraint[] $osConstraints
*/
public function setOsConstraints($osConstraints)
{
$this->osConstraints = $osConstraints;
}
/**
* @return OsConstraint[]
*/
public function getOsConstraints()
{
return $this->osConstraints;
}
/**
* Whether the device needs to be approved by the customer admin.
*
* @param bool $requireAdminApproval
*/
public function setRequireAdminApproval($requireAdminApproval)
{
$this->requireAdminApproval = $requireAdminApproval;
}
/**
* @return bool
*/
public function getRequireAdminApproval()
{
return $this->requireAdminApproval;
}
/**
* Whether the device needs to be corp owned.
*
* @param bool $requireCorpOwned
*/
public function setRequireCorpOwned($requireCorpOwned)
{
$this->requireCorpOwned = $requireCorpOwned;
}
/**
* @return bool
*/
public function getRequireCorpOwned()
{
return $this->requireCorpOwned;
}
/**
* Whether or not screenlock is required for the DevicePolicy to be true.
* Defaults to `false`.
*
* @param bool $requireScreenlock
*/
public function setRequireScreenlock($requireScreenlock)
{
$this->requireScreenlock = $requireScreenlock;
}
/**
* @return bool
*/
public function getRequireScreenlock()
{
return $this->requireScreenlock;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(DevicePolicy::class, 'Google_Service_AccessContextManager_DevicePolicy');
@@ -0,0 +1,166 @@
<?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\AccessContextManager;
class EgressFrom extends \Google\Collection
{
/**
* No blanket identity group specified.
*/
public const IDENTITY_TYPE_IDENTITY_TYPE_UNSPECIFIED = 'IDENTITY_TYPE_UNSPECIFIED';
/**
* Authorize access from all identities outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_IDENTITY = 'ANY_IDENTITY';
/**
* Authorize access from all human users outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_USER_ACCOUNT = 'ANY_USER_ACCOUNT';
/**
* Authorize access from all service accounts outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_SERVICE_ACCOUNT = 'ANY_SERVICE_ACCOUNT';
/**
* Enforcement preference unspecified, will not enforce traffic restrictions
* based on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_UNSPECIFIED = 'SOURCE_RESTRICTION_UNSPECIFIED';
/**
* Enforcement preference enabled, traffic restrictions will be enforced based
* on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_ENABLED = 'SOURCE_RESTRICTION_ENABLED';
/**
* Enforcement preference disabled, will not enforce traffic restrictions
* based on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_DISABLED = 'SOURCE_RESTRICTION_DISABLED';
protected $collection_key = 'sources';
/**
* A list of identities that are allowed access through [EgressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @var string[]
*/
public $identities;
/**
* Specifies the type of identities that are allowed access to outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* @var string
*/
public $identityType;
/**
* Whether to enforce traffic restrictions based on `sources` field. If the
* `sources` fields is non-empty, then this field must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* @var string
*/
public $sourceRestriction;
protected $sourcesType = EgressSource::class;
protected $sourcesDataType = 'array';
/**
* A list of identities that are allowed access through [EgressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @param string[] $identities
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return string[]
*/
public function getIdentities()
{
return $this->identities;
}
/**
* Specifies the type of identities that are allowed access to outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* Accepted values: IDENTITY_TYPE_UNSPECIFIED, ANY_IDENTITY, ANY_USER_ACCOUNT,
* ANY_SERVICE_ACCOUNT
*
* @param self::IDENTITY_TYPE_* $identityType
*/
public function setIdentityType($identityType)
{
$this->identityType = $identityType;
}
/**
* @return self::IDENTITY_TYPE_*
*/
public function getIdentityType()
{
return $this->identityType;
}
/**
* Whether to enforce traffic restrictions based on `sources` field. If the
* `sources` fields is non-empty, then this field must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* Accepted values: SOURCE_RESTRICTION_UNSPECIFIED,
* SOURCE_RESTRICTION_ENABLED, SOURCE_RESTRICTION_DISABLED
*
* @param self::SOURCE_RESTRICTION_* $sourceRestriction
*/
public function setSourceRestriction($sourceRestriction)
{
$this->sourceRestriction = $sourceRestriction;
}
/**
* @return self::SOURCE_RESTRICTION_*
*/
public function getSourceRestriction()
{
return $this->sourceRestriction;
}
/**
* Sources that this EgressPolicy authorizes access from. If this field is not
* empty, then `source_restriction` must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* @param EgressSource[] $sources
*/
public function setSources($sources)
{
$this->sources = $sources;
}
/**
* @return EgressSource[]
*/
public function getSources()
{
return $this->sources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(EgressFrom::class, 'Google_Service_AccessContextManager_EgressFrom');
@@ -0,0 +1,92 @@
<?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\AccessContextManager;
class EgressPolicy extends \Google\Model
{
protected $egressFromType = EgressFrom::class;
protected $egressFromDataType = '';
protected $egressToType = EgressTo::class;
protected $egressToDataType = '';
/**
* Optional. Human-readable title for the egress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @var string
*/
public $title;
/**
* Defines conditions on the source of a request causing this EgressPolicy to
* apply.
*
* @param EgressFrom $egressFrom
*/
public function setEgressFrom(EgressFrom $egressFrom)
{
$this->egressFrom = $egressFrom;
}
/**
* @return EgressFrom
*/
public function getEgressFrom()
{
return $this->egressFrom;
}
/**
* Defines the conditions on the ApiOperation and destination resources that
* cause this EgressPolicy to apply.
*
* @param EgressTo $egressTo
*/
public function setEgressTo(EgressTo $egressTo)
{
$this->egressTo = $egressTo;
}
/**
* @return EgressTo
*/
public function getEgressTo()
{
return $this->egressTo;
}
/**
* Optional. Human-readable title for the egress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @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(EgressPolicy::class, 'Google_Service_AccessContextManager_EgressPolicy');
@@ -0,0 +1,92 @@
<?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\AccessContextManager;
class EgressSource extends \Google\Model
{
/**
* An AccessLevel resource name that allows protected resources inside the
* ServicePerimeters to access outside the ServicePerimeter boundaries.
* AccessLevels listed must be in the same policy as this ServicePerimeter.
* Referencing a nonexistent AccessLevel will cause an error. If an
* AccessLevel name is not specified, only resources within the perimeter can
* be accessed through Google Cloud calls with request origins within the
* perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a
* single `*` is specified for `access_level`, then all EgressSources will be
* allowed.
*
* @var string
*/
public $accessLevel;
/**
* A Google Cloud resource from the service perimeter that you want to allow
* to access data outside the perimeter. This field supports only projects.
* The project format is `projects/{project_number}`. You can't use `*` in
* this field to allow all Google Cloud resources.
*
* @var string
*/
public $resource;
/**
* An AccessLevel resource name that allows protected resources inside the
* ServicePerimeters to access outside the ServicePerimeter boundaries.
* AccessLevels listed must be in the same policy as this ServicePerimeter.
* Referencing a nonexistent AccessLevel will cause an error. If an
* AccessLevel name is not specified, only resources within the perimeter can
* be accessed through Google Cloud calls with request origins within the
* perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a
* single `*` is specified for `access_level`, then all EgressSources will be
* allowed.
*
* @param string $accessLevel
*/
public function setAccessLevel($accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return string
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* A Google Cloud resource from the service perimeter that you want to allow
* to access data outside the perimeter. This field supports only projects.
* The project format is `projects/{project_number}`. You can't use `*` in
* this field to allow all Google Cloud resources.
*
* @param string $resource
*/
public function setResource($resource)
{
$this->resource = $resource;
}
/**
* @return string
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(EgressSource::class, 'Google_Service_AccessContextManager_EgressSource');
@@ -0,0 +1,137 @@
<?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\AccessContextManager;
class EgressTo extends \Google\Collection
{
protected $collection_key = 'roles';
/**
* A list of external resources that are allowed to be accessed. Only AWS and
* Azure resources are supported. For Amazon S3, the supported formats are
* s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure
* Storage, the supported format is
* azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches
* if it contains an external resource in this list (Example:
* s3://bucket/path). Currently '*' is not allowed.
*
* @var string[]
*/
public $externalResources;
protected $operationsType = ApiOperation::class;
protected $operationsDataType = 'array';
/**
* A list of resources, currently only projects in the form `projects/`, that
* are allowed to be accessed by sources defined in the corresponding
* EgressFrom. A request matches if it contains a resource in this list. If
* `*` is specified for `resources`, then this EgressTo rule will authorize
* access to all resources outside the perimeter.
*
* @var string[]
*/
public $resources;
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding EgressFrom. are allowed to perform in this
* ServicePerimeter.
*
* @var string[]
*/
public $roles;
/**
* A list of external resources that are allowed to be accessed. Only AWS and
* Azure resources are supported. For Amazon S3, the supported formats are
* s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure
* Storage, the supported format is
* azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches
* if it contains an external resource in this list (Example:
* s3://bucket/path). Currently '*' is not allowed.
*
* @param string[] $externalResources
*/
public function setExternalResources($externalResources)
{
$this->externalResources = $externalResources;
}
/**
* @return string[]
*/
public function getExternalResources()
{
return $this->externalResources;
}
/**
* A list of ApiOperations allowed to be performed by the sources specified in
* the corresponding EgressFrom. A request matches if it uses an
* operation/service in this list.
*
* @param ApiOperation[] $operations
*/
public function setOperations($operations)
{
$this->operations = $operations;
}
/**
* @return ApiOperation[]
*/
public function getOperations()
{
return $this->operations;
}
/**
* A list of resources, currently only projects in the form `projects/`, that
* are allowed to be accessed by sources defined in the corresponding
* EgressFrom. A request matches if it contains a resource in this list. If
* `*` is specified for `resources`, then this EgressTo rule will authorize
* access to all resources outside the perimeter.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding EgressFrom. are allowed to perform in this
* ServicePerimeter.
*
* @param string[] $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* @return string[]
*/
public function getRoles()
{
return $this->roles;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(EgressTo::class, 'Google_Service_AccessContextManager_EgressTo');
@@ -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\AccessContextManager;
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_AccessContextManager_Expr');
@@ -0,0 +1,205 @@
<?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\AccessContextManager;
class GcpUserAccessBinding extends \Google\Collection
{
protected $collection_key = 'scopedAccessSettings';
/**
* Optional. Access level that a user must have to be granted access. Only one
* access level is supported, not multiple. This repeated field must have
* exactly one element. Example:
* "accessPolicies/9522/accessLevels/device_trusted"
*
* @var string[]
*/
public $accessLevels;
/**
* Optional. Dry run access level that will be evaluated but will not be
* enforced. The access denial based on dry run policy will be logged. Only
* one access level is supported, not multiple. This list must have exactly
* one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
*
* @var string[]
*/
public $dryRunAccessLevels;
/**
* Optional. Immutable. Google Group id whose users are subject to this
* binding's restrictions. See "id" in the [Google Workspace Directory API's
* Group Resource] (https://developers.google.com/admin-
* sdk/directory/v1/reference/groups#resource). If a group's email
* address/alias is changed, this resource will continue to point at the
* changed group. This field does not accept group email addresses or aliases.
* Example: "01d520gv4vjcrht"
*
* @var string
*/
public $groupKey;
/**
* Immutable. Assigned by the server during creation. The last segment has an
* arbitrary length and has only URI unreserved characters (as defined by [RFC
* 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should
* not be specified by the client during creation. Example:
* "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
*
* @var string
*/
public $name;
protected $restrictedClientApplicationsType = Application::class;
protected $restrictedClientApplicationsDataType = 'array';
protected $scopedAccessSettingsType = ScopedAccessSettings::class;
protected $scopedAccessSettingsDataType = 'array';
protected $sessionSettingsType = SessionSettings::class;
protected $sessionSettingsDataType = '';
/**
* Optional. Access level that a user must have to be granted access. Only one
* access level is supported, not multiple. This repeated field must have
* exactly one element. Example:
* "accessPolicies/9522/accessLevels/device_trusted"
*
* @param string[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return string[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* Optional. Dry run access level that will be evaluated but will not be
* enforced. The access denial based on dry run policy will be logged. Only
* one access level is supported, not multiple. This list must have exactly
* one element. Example: "accessPolicies/9522/accessLevels/device_trusted"
*
* @param string[] $dryRunAccessLevels
*/
public function setDryRunAccessLevels($dryRunAccessLevels)
{
$this->dryRunAccessLevels = $dryRunAccessLevels;
}
/**
* @return string[]
*/
public function getDryRunAccessLevels()
{
return $this->dryRunAccessLevels;
}
/**
* Optional. Immutable. Google Group id whose users are subject to this
* binding's restrictions. See "id" in the [Google Workspace Directory API's
* Group Resource] (https://developers.google.com/admin-
* sdk/directory/v1/reference/groups#resource). If a group's email
* address/alias is changed, this resource will continue to point at the
* changed group. This field does not accept group email addresses or aliases.
* Example: "01d520gv4vjcrht"
*
* @param string $groupKey
*/
public function setGroupKey($groupKey)
{
$this->groupKey = $groupKey;
}
/**
* @return string
*/
public function getGroupKey()
{
return $this->groupKey;
}
/**
* Immutable. Assigned by the server during creation. The last segment has an
* arbitrary length and has only URI unreserved characters (as defined by [RFC
* 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should
* not be specified by the client during creation. Example:
* "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Optional. A list of applications that are subject to this binding's
* restrictions. If the list is empty, the binding restrictions will
* universally apply to all applications.
*
* @param Application[] $restrictedClientApplications
*/
public function setRestrictedClientApplications($restrictedClientApplications)
{
$this->restrictedClientApplications = $restrictedClientApplications;
}
/**
* @return Application[]
*/
public function getRestrictedClientApplications()
{
return $this->restrictedClientApplications;
}
/**
* Optional. A list of scoped access settings that set this binding's
* restrictions on a subset of applications. This field cannot be set if
* restricted_client_applications is set.
*
* @param ScopedAccessSettings[] $scopedAccessSettings
*/
public function setScopedAccessSettings($scopedAccessSettings)
{
$this->scopedAccessSettings = $scopedAccessSettings;
}
/**
* @return ScopedAccessSettings[]
*/
public function getScopedAccessSettings()
{
return $this->scopedAccessSettings;
}
/**
* Optional. The Google Cloud session length (GCSL) policy for the group key.
*
* @param SessionSettings $sessionSettings
*/
public function setSessionSettings(SessionSettings $sessionSettings)
{
$this->sessionSettings = $sessionSettings;
}
/**
* @return SessionSettings
*/
public function getSessionSettings()
{
return $this->sessionSettings;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GcpUserAccessBinding::class, 'Google_Service_AccessContextManager_GcpUserAccessBinding');
@@ -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\AccessContextManager;
class GcpUserAccessBindingOperationMetadata extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GcpUserAccessBindingOperationMetadata::class, 'Google_Service_AccessContextManager_GcpUserAccessBindingOperationMetadata');
@@ -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\AccessContextManager;
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_AccessContextManager_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\AccessContextManager;
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_AccessContextManager_GetPolicyOptions');
@@ -0,0 +1,120 @@
<?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\AccessContextManager;
class IngressFrom extends \Google\Collection
{
/**
* No blanket identity group specified.
*/
public const IDENTITY_TYPE_IDENTITY_TYPE_UNSPECIFIED = 'IDENTITY_TYPE_UNSPECIFIED';
/**
* Authorize access from all identities outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_IDENTITY = 'ANY_IDENTITY';
/**
* Authorize access from all human users outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_USER_ACCOUNT = 'ANY_USER_ACCOUNT';
/**
* Authorize access from all service accounts outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_SERVICE_ACCOUNT = 'ANY_SERVICE_ACCOUNT';
protected $collection_key = 'sources';
/**
* A list of identities that are allowed access through [IngressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @var string[]
*/
public $identities;
/**
* Specifies the type of identities that are allowed access from outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* @var string
*/
public $identityType;
protected $sourcesType = IngressSource::class;
protected $sourcesDataType = 'array';
/**
* A list of identities that are allowed access through [IngressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @param string[] $identities
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return string[]
*/
public function getIdentities()
{
return $this->identities;
}
/**
* Specifies the type of identities that are allowed access from outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* Accepted values: IDENTITY_TYPE_UNSPECIFIED, ANY_IDENTITY, ANY_USER_ACCOUNT,
* ANY_SERVICE_ACCOUNT
*
* @param self::IDENTITY_TYPE_* $identityType
*/
public function setIdentityType($identityType)
{
$this->identityType = $identityType;
}
/**
* @return self::IDENTITY_TYPE_*
*/
public function getIdentityType()
{
return $this->identityType;
}
/**
* Sources that this IngressPolicy authorizes access from.
*
* @param IngressSource[] $sources
*/
public function setSources($sources)
{
$this->sources = $sources;
}
/**
* @return IngressSource[]
*/
public function getSources()
{
return $this->sources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IngressFrom::class, 'Google_Service_AccessContextManager_IngressFrom');
@@ -0,0 +1,92 @@
<?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\AccessContextManager;
class IngressPolicy extends \Google\Model
{
protected $ingressFromType = IngressFrom::class;
protected $ingressFromDataType = '';
protected $ingressToType = IngressTo::class;
protected $ingressToDataType = '';
/**
* Optional. Human-readable title for the ingress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @var string
*/
public $title;
/**
* Defines the conditions on the source of a request causing this
* IngressPolicy to apply.
*
* @param IngressFrom $ingressFrom
*/
public function setIngressFrom(IngressFrom $ingressFrom)
{
$this->ingressFrom = $ingressFrom;
}
/**
* @return IngressFrom
*/
public function getIngressFrom()
{
return $this->ingressFrom;
}
/**
* Defines the conditions on the ApiOperation and request destination that
* cause this IngressPolicy to apply.
*
* @param IngressTo $ingressTo
*/
public function setIngressTo(IngressTo $ingressTo)
{
$this->ingressTo = $ingressTo;
}
/**
* @return IngressTo
*/
public function getIngressTo()
{
return $this->ingressTo;
}
/**
* Optional. Human-readable title for the ingress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @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(IngressPolicy::class, 'Google_Service_AccessContextManager_IngressPolicy');
@@ -0,0 +1,98 @@
<?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\AccessContextManager;
class IngressSource extends \Google\Model
{
/**
* An AccessLevel resource name that allow resources within the
* ServicePerimeters to be accessed from the internet. AccessLevels listed
* must be in the same policy as this ServicePerimeter. Referencing a
* nonexistent AccessLevel will cause an error. If no AccessLevel names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is
* specified for `access_level`, then all IngressSources will be allowed.
*
* @var string
*/
public $accessLevel;
/**
* A Google Cloud resource that is allowed to ingress the perimeter. Requests
* from these resources will be allowed to access perimeter data. Currently
* only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
* The project may be in any Google Cloud organization, not just the
* organization that the perimeter is defined in. `*` is not allowed, the case
* of allowing all Google Cloud resources only is not supported.
*
* @var string
*/
public $resource;
/**
* An AccessLevel resource name that allow resources within the
* ServicePerimeters to be accessed from the internet. AccessLevels listed
* must be in the same policy as this ServicePerimeter. Referencing a
* nonexistent AccessLevel will cause an error. If no AccessLevel names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is
* specified for `access_level`, then all IngressSources will be allowed.
*
* @param string $accessLevel
*/
public function setAccessLevel($accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return string
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* A Google Cloud resource that is allowed to ingress the perimeter. Requests
* from these resources will be allowed to access perimeter data. Currently
* only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
* The project may be in any Google Cloud organization, not just the
* organization that the perimeter is defined in. `*` is not allowed, the case
* of allowing all Google Cloud resources only is not supported.
*
* @param string $resource
*/
public function setResource($resource)
{
$this->resource = $resource;
}
/**
* @return string
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IngressSource::class, 'Google_Service_AccessContextManager_IngressSource');
@@ -0,0 +1,100 @@
<?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\AccessContextManager;
class IngressTo extends \Google\Collection
{
protected $collection_key = 'roles';
protected $operationsType = ApiOperation::class;
protected $operationsDataType = 'array';
/**
* A list of resources, currently only projects in the form `projects/`,
* protected by this ServicePerimeter that are allowed to be accessed by
* sources defined in the corresponding IngressFrom. If a single `*` is
* specified, then access to all resources inside the perimeter are allowed.
*
* @var string[]
*/
public $resources;
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding IngressFrom are allowed to perform in this
* ServicePerimeter.
*
* @var string[]
*/
public $roles;
/**
* A list of ApiOperations allowed to be performed by the sources specified in
* corresponding IngressFrom in this ServicePerimeter.
*
* @param ApiOperation[] $operations
*/
public function setOperations($operations)
{
$this->operations = $operations;
}
/**
* @return ApiOperation[]
*/
public function getOperations()
{
return $this->operations;
}
/**
* A list of resources, currently only projects in the form `projects/`,
* protected by this ServicePerimeter that are allowed to be accessed by
* sources defined in the corresponding IngressFrom. If a single `*` is
* specified, then access to all resources inside the perimeter are allowed.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding IngressFrom are allowed to perform in this
* ServicePerimeter.
*
* @param string[] $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* @return string[]
*/
public function getRoles()
{
return $this->roles;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IngressTo::class, 'Google_Service_AccessContextManager_IngressTo');
@@ -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\AccessContextManager;
class ListAccessLevelsResponse extends \Google\Collection
{
protected $collection_key = 'accessLevels';
protected $accessLevelsType = AccessLevel::class;
protected $accessLevelsDataType = 'array';
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @var string
*/
public $nextPageToken;
/**
* List of the Access Level instances.
*
* @param AccessLevel[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return AccessLevel[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @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(ListAccessLevelsResponse::class, 'Google_Service_AccessContextManager_ListAccessLevelsResponse');
@@ -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\AccessContextManager;
class ListAccessPoliciesResponse extends \Google\Collection
{
protected $collection_key = 'accessPolicies';
protected $accessPoliciesType = AccessPolicy::class;
protected $accessPoliciesDataType = 'array';
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @var string
*/
public $nextPageToken;
/**
* List of the AccessPolicy instances.
*
* @param AccessPolicy[] $accessPolicies
*/
public function setAccessPolicies($accessPolicies)
{
$this->accessPolicies = $accessPolicies;
}
/**
* @return AccessPolicy[]
*/
public function getAccessPolicies()
{
return $this->accessPolicies;
}
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @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(ListAccessPoliciesResponse::class, 'Google_Service_AccessContextManager_ListAccessPoliciesResponse');
@@ -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\AccessContextManager;
class ListAuthorizedOrgsDescsResponse extends \Google\Collection
{
protected $collection_key = 'authorizedOrgsDescs';
protected $authorizedOrgsDescsType = AuthorizedOrgsDesc::class;
protected $authorizedOrgsDescsDataType = 'array';
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @var string
*/
public $nextPageToken;
/**
* List of all the Authorized Orgs Desc instances.
*
* @param AuthorizedOrgsDesc[] $authorizedOrgsDescs
*/
public function setAuthorizedOrgsDescs($authorizedOrgsDescs)
{
$this->authorizedOrgsDescs = $authorizedOrgsDescs;
}
/**
* @return AuthorizedOrgsDesc[]
*/
public function getAuthorizedOrgsDescs()
{
return $this->authorizedOrgsDescs;
}
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @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(ListAuthorizedOrgsDescsResponse::class, 'Google_Service_AccessContextManager_ListAuthorizedOrgsDescsResponse');
@@ -0,0 +1,67 @@
<?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\AccessContextManager;
class ListGcpUserAccessBindingsResponse extends \Google\Collection
{
protected $collection_key = 'gcpUserAccessBindings';
protected $gcpUserAccessBindingsType = GcpUserAccessBinding::class;
protected $gcpUserAccessBindingsDataType = 'array';
/**
* Token to get the next page of items. If blank, there are no more items.
*
* @var string
*/
public $nextPageToken;
/**
* GcpUserAccessBinding
*
* @param GcpUserAccessBinding[] $gcpUserAccessBindings
*/
public function setGcpUserAccessBindings($gcpUserAccessBindings)
{
$this->gcpUserAccessBindings = $gcpUserAccessBindings;
}
/**
* @return GcpUserAccessBinding[]
*/
public function getGcpUserAccessBindings()
{
return $this->gcpUserAccessBindings;
}
/**
* Token to get the next page of items. If blank, there are no more items.
*
* @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(ListGcpUserAccessBindingsResponse::class, 'Google_Service_AccessContextManager_ListGcpUserAccessBindingsResponse');
@@ -0,0 +1,95 @@
<?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\AccessContextManager;
class ListOperationsResponse extends \Google\Collection
{
protected $collection_key = 'unreachable';
/**
* The standard List next-page token.
*
* @var string
*/
public $nextPageToken;
protected $operationsType = Operation::class;
protected $operationsDataType = 'array';
/**
* Unordered list. Unreachable resources. Populated when the request sets
* `ListOperationsRequest.return_partial_success` and reads across
* collections. For example, when attempting to list all resources across all
* supported locations.
*
* @var string[]
*/
public $unreachable;
/**
* The standard List next-page token.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
/**
* A list of operations that matches the specified filter in the request.
*
* @param Operation[] $operations
*/
public function setOperations($operations)
{
$this->operations = $operations;
}
/**
* @return Operation[]
*/
public function getOperations()
{
return $this->operations;
}
/**
* Unordered list. Unreachable resources. Populated when the request sets
* `ListOperationsRequest.return_partial_success` and reads across
* collections. For example, when attempting to list all resources across all
* supported locations.
*
* @param string[] $unreachable
*/
public function setUnreachable($unreachable)
{
$this->unreachable = $unreachable;
}
/**
* @return string[]
*/
public function getUnreachable()
{
return $this->unreachable;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ListOperationsResponse::class, 'Google_Service_AccessContextManager_ListOperationsResponse');
@@ -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\AccessContextManager;
class ListServicePerimetersResponse extends \Google\Collection
{
protected $collection_key = 'servicePerimeters';
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @var string
*/
public $nextPageToken;
protected $servicePerimetersType = ServicePerimeter::class;
protected $servicePerimetersDataType = 'array';
/**
* The pagination token to retrieve the next page of results. If the value is
* empty, no further results remain.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
/**
* List of the Service Perimeter instances.
*
* @param ServicePerimeter[] $servicePerimeters
*/
public function setServicePerimeters($servicePerimeters)
{
$this->servicePerimeters = $servicePerimeters;
}
/**
* @return ServicePerimeter[]
*/
public function getServicePerimeters()
{
return $this->servicePerimeters;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ListServicePerimetersResponse::class, 'Google_Service_AccessContextManager_ListServicePerimetersResponse');
@@ -0,0 +1,73 @@
<?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\AccessContextManager;
class ListSupportedPermissionsResponse extends \Google\Collection
{
protected $collection_key = 'supportedPermissions';
/**
* Use this pagination token to retrieve the next page of results. An empty
* value indicates that no further results are available.
*
* @var string
*/
public $nextPageToken;
/**
* List of VPC Service Controls supported permissions.
*
* @var string[]
*/
public $supportedPermissions;
/**
* Use this pagination token to retrieve the next page of results. An empty
* value indicates that no further results are available.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
/**
* List of VPC Service Controls supported permissions.
*
* @param string[] $supportedPermissions
*/
public function setSupportedPermissions($supportedPermissions)
{
$this->supportedPermissions = $supportedPermissions;
}
/**
* @return string[]
*/
public function getSupportedPermissions()
{
return $this->supportedPermissions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ListSupportedPermissionsResponse::class, 'Google_Service_AccessContextManager_ListSupportedPermissionsResponse');
@@ -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\AccessContextManager;
class ListSupportedServicesResponse extends \Google\Collection
{
protected $collection_key = 'supportedServices';
/**
* Use this pagination token to retrieve the next page of results. An empty
* value indicates that no further results are available.
*
* @var string
*/
public $nextPageToken;
protected $supportedServicesType = SupportedService::class;
protected $supportedServicesDataType = 'array';
/**
* Use this pagination token to retrieve the next page of results. An empty
* value indicates that no further results are available.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
/**
* List of services supported by VPC Service Controls instances.
*
* @param SupportedService[] $supportedServices
*/
public function setSupportedServices($supportedServices)
{
$this->supportedServices = $supportedServices;
}
/**
* @return SupportedService[]
*/
public function getSupportedServices()
{
return $this->supportedServices;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ListSupportedServicesResponse::class, 'Google_Service_AccessContextManager_ListSupportedServicesResponse');
@@ -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\AccessContextManager;
class MethodSelector extends \Google\Model
{
/**
* A valid method name for the corresponding `service_name` in ApiOperation.
* If `*` is used as the value for the `method`, then ALL methods and
* permissions are allowed.
*
* @var string
*/
public $method;
/**
* A valid Cloud IAM permission for the corresponding `service_name` in
* ApiOperation.
*
* @var string
*/
public $permission;
/**
* A valid method name for the corresponding `service_name` in ApiOperation.
* If `*` is used as the value for the `method`, then ALL methods and
* permissions are allowed.
*
* @param string $method
*/
public function setMethod($method)
{
$this->method = $method;
}
/**
* @return string
*/
public function getMethod()
{
return $this->method;
}
/**
* A valid Cloud IAM permission for the corresponding `service_name` in
* ApiOperation.
*
* @param string $permission
*/
public function setPermission($permission)
{
$this->permission = $permission;
}
/**
* @return string
*/
public function getPermission()
{
return $this->permission;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(MethodSelector::class, 'Google_Service_AccessContextManager_MethodSelector');
@@ -0,0 +1,158 @@
<?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\AccessContextManager;
class Operation extends \Google\Model
{
/**
* If the value is `false`, it means the operation is still in progress. If
* `true`, the operation is completed, and either `error` or `response` is
* available.
*
* @var bool
*/
public $done;
protected $errorType = Status::class;
protected $errorDataType = '';
/**
* Service-specific metadata associated with the operation. It typically
* contains progress information and common metadata such as create time. Some
* services might not provide such metadata. Any method that returns a long-
* running operation should document the metadata type, if any.
*
* @var array[]
*/
public $metadata;
/**
* The server-assigned name, which is only unique within the same service that
* originally returns it. If you use the default HTTP mapping, the `name`
* should be a resource name ending with `operations/{unique_id}`.
*
* @var string
*/
public $name;
/**
* The normal, successful response of the operation. If the original method
* returns no data on success, such as `Delete`, the response is
* `google.protobuf.Empty`. If the original method is standard
* `Get`/`Create`/`Update`, the response should be the resource. For other
* methods, the response should have the type `XxxResponse`, where `Xxx` is
* the original method name. For example, if the original method name is
* `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
*
* @var array[]
*/
public $response;
/**
* If the value is `false`, it means the operation is still in progress. If
* `true`, the operation is completed, and either `error` or `response` is
* available.
*
* @param bool $done
*/
public function setDone($done)
{
$this->done = $done;
}
/**
* @return bool
*/
public function getDone()
{
return $this->done;
}
/**
* The error result of the operation in case of failure or cancellation.
*
* @param Status $error
*/
public function setError(Status $error)
{
$this->error = $error;
}
/**
* @return Status
*/
public function getError()
{
return $this->error;
}
/**
* Service-specific metadata associated with the operation. It typically
* contains progress information and common metadata such as create time. Some
* services might not provide such metadata. Any method that returns a long-
* running operation should document the metadata type, if any.
*
* @param array[] $metadata
*/
public function setMetadata($metadata)
{
$this->metadata = $metadata;
}
/**
* @return array[]
*/
public function getMetadata()
{
return $this->metadata;
}
/**
* The server-assigned name, which is only unique within the same service that
* originally returns it. If you use the default HTTP mapping, the `name`
* should be a resource name ending with `operations/{unique_id}`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* The normal, successful response of the operation. If the original method
* returns no data on success, such as `Delete`, the response is
* `google.protobuf.Empty`. If the original method is standard
* `Get`/`Create`/`Update`, the response should be the resource. For other
* methods, the response should have the type `XxxResponse`, where `Xxx` is
* the original method name. For example, if the original method name is
* `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
*
* @param array[] $response
*/
public function setResponse($response)
{
$this->response = $response;
}
/**
* @return array[]
*/
public function getResponse()
{
return $this->response;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Operation::class, 'Google_Service_AccessContextManager_Operation');
@@ -0,0 +1,133 @@
<?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\AccessContextManager;
class OsConstraint extends \Google\Model
{
/**
* The operating system of the device is not specified or not known.
*/
public const OS_TYPE_OS_UNSPECIFIED = 'OS_UNSPECIFIED';
/**
* A desktop Mac operating system.
*/
public const OS_TYPE_DESKTOP_MAC = 'DESKTOP_MAC';
/**
* A desktop Windows operating system.
*/
public const OS_TYPE_DESKTOP_WINDOWS = 'DESKTOP_WINDOWS';
/**
* A desktop Linux operating system.
*/
public const OS_TYPE_DESKTOP_LINUX = 'DESKTOP_LINUX';
/**
* A desktop ChromeOS operating system.
*/
public const OS_TYPE_DESKTOP_CHROME_OS = 'DESKTOP_CHROME_OS';
/**
* An Android operating system.
*/
public const OS_TYPE_ANDROID = 'ANDROID';
/**
* An iOS operating system.
*/
public const OS_TYPE_IOS = 'IOS';
/**
* The minimum allowed OS version. If not set, any version of this OS
* satisfies the constraint. Format: `"major.minor.patch"`. Examples:
* `"10.5.301"`, `"9.2.1"`.
*
* @var string
*/
public $minimumVersion;
/**
* Required. The allowed OS type.
*
* @var string
*/
public $osType;
/**
* Only allows requests from devices with a verified Chrome OS. Verifications
* includes requirements that the device is enterprise-managed, conformant to
* domain policies, and the caller has permission to call the API targeted by
* the request.
*
* @var bool
*/
public $requireVerifiedChromeOs;
/**
* The minimum allowed OS version. If not set, any version of this OS
* satisfies the constraint. Format: `"major.minor.patch"`. Examples:
* `"10.5.301"`, `"9.2.1"`.
*
* @param string $minimumVersion
*/
public function setMinimumVersion($minimumVersion)
{
$this->minimumVersion = $minimumVersion;
}
/**
* @return string
*/
public function getMinimumVersion()
{
return $this->minimumVersion;
}
/**
* Required. The allowed OS type.
*
* Accepted values: OS_UNSPECIFIED, DESKTOP_MAC, DESKTOP_WINDOWS,
* DESKTOP_LINUX, DESKTOP_CHROME_OS, ANDROID, IOS
*
* @param self::OS_TYPE_* $osType
*/
public function setOsType($osType)
{
$this->osType = $osType;
}
/**
* @return self::OS_TYPE_*
*/
public function getOsType()
{
return $this->osType;
}
/**
* Only allows requests from devices with a verified Chrome OS. Verifications
* includes requirements that the device is enterprise-managed, conformant to
* domain policies, and the caller has permission to call the API targeted by
* the request.
*
* @param bool $requireVerifiedChromeOs
*/
public function setRequireVerifiedChromeOs($requireVerifiedChromeOs)
{
$this->requireVerifiedChromeOs = $requireVerifiedChromeOs;
}
/**
* @return bool
*/
public function getRequireVerifiedChromeOs()
{
return $this->requireVerifiedChromeOs;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(OsConstraint::class, 'Google_Service_AccessContextManager_OsConstraint');
@@ -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\AccessContextManager;
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_AccessContextManager_Policy');
@@ -0,0 +1,116 @@
<?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\AccessContextManager;
class ReauthSettings extends \Google\Model
{
/**
* @var string
*/
public $maxInactivity;
/**
* @var string
*/
public $reauthMethod;
/**
* @var string
*/
public $sessionLength;
/**
* @var bool
*/
public $sessionLengthEnabled;
/**
* @var bool
*/
public $useOidcMaxAge;
/**
* @param string
*/
public function setMaxInactivity($maxInactivity)
{
$this->maxInactivity = $maxInactivity;
}
/**
* @return string
*/
public function getMaxInactivity()
{
return $this->maxInactivity;
}
/**
* @param string
*/
public function setReauthMethod($reauthMethod)
{
$this->reauthMethod = $reauthMethod;
}
/**
* @return string
*/
public function getReauthMethod()
{
return $this->reauthMethod;
}
/**
* @param string
*/
public function setSessionLength($sessionLength)
{
$this->sessionLength = $sessionLength;
}
/**
* @return string
*/
public function getSessionLength()
{
return $this->sessionLength;
}
/**
* @param bool
*/
public function setSessionLengthEnabled($sessionLengthEnabled)
{
$this->sessionLengthEnabled = $sessionLengthEnabled;
}
/**
* @return bool
*/
public function getSessionLengthEnabled()
{
return $this->sessionLengthEnabled;
}
/**
* @param bool
*/
public function setUseOidcMaxAge($useOidcMaxAge)
{
$this->useOidcMaxAge = $useOidcMaxAge;
}
/**
* @return bool
*/
public function getUseOidcMaxAge()
{
return $this->useOidcMaxAge;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ReauthSettings::class, 'Google_Service_AccessContextManager_ReauthSettings');
@@ -0,0 +1,78 @@
<?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\AccessContextManager;
class ReplaceAccessLevelsRequest extends \Google\Collection
{
protected $collection_key = 'accessLevels';
protected $accessLevelsType = AccessLevel::class;
protected $accessLevelsDataType = 'array';
/**
* Optional. The etag for the version of the Access Policy that this replace
* operation is to be performed on. If, at the time of replace, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the replace operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @var string
*/
public $etag;
/**
* Required. The desired Access Levels that should replace all existing Access
* Levels in the Access Policy.
*
* @param AccessLevel[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return AccessLevel[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* Optional. The etag for the version of the Access Policy that this replace
* operation is to be performed on. If, at the time of replace, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the replace operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ReplaceAccessLevelsRequest::class, 'Google_Service_AccessContextManager_ReplaceAccessLevelsRequest');
@@ -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\AccessContextManager;
class ReplaceAccessLevelsResponse extends \Google\Collection
{
protected $collection_key = 'accessLevels';
protected $accessLevelsType = AccessLevel::class;
protected $accessLevelsDataType = 'array';
/**
* List of the Access Level instances.
*
* @param AccessLevel[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return AccessLevel[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ReplaceAccessLevelsResponse::class, 'Google_Service_AccessContextManager_ReplaceAccessLevelsResponse');
@@ -0,0 +1,78 @@
<?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\AccessContextManager;
class ReplaceServicePerimetersRequest extends \Google\Collection
{
protected $collection_key = 'servicePerimeters';
/**
* Optional. The etag for the version of the Access Policy that this replace
* operation is to be performed on. If, at the time of replace, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the replace operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @var string
*/
public $etag;
protected $servicePerimetersType = ServicePerimeter::class;
protected $servicePerimetersDataType = 'array';
/**
* Optional. The etag for the version of the Access Policy that this replace
* operation is to be performed on. If, at the time of replace, the etag for
* the Access Policy stored in Access Context Manager is different from the
* specified etag, then the replace operation will not be performed and the
* call will fail. This field is not required. If etag is not provided, the
* operation will be performed as if a valid etag is provided.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Required. The desired Service Perimeters that should replace all existing
* Service Perimeters in the Access Policy.
*
* @param ServicePerimeter[] $servicePerimeters
*/
public function setServicePerimeters($servicePerimeters)
{
$this->servicePerimeters = $servicePerimeters;
}
/**
* @return ServicePerimeter[]
*/
public function getServicePerimeters()
{
return $this->servicePerimeters;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ReplaceServicePerimetersRequest::class, 'Google_Service_AccessContextManager_ReplaceServicePerimetersRequest');
@@ -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\AccessContextManager;
class ReplaceServicePerimetersResponse extends \Google\Collection
{
protected $collection_key = 'servicePerimeters';
protected $servicePerimetersType = ServicePerimeter::class;
protected $servicePerimetersDataType = 'array';
/**
* List of the Service Perimeter instances.
*
* @param ServicePerimeter[] $servicePerimeters
*/
public function setServicePerimeters($servicePerimeters)
{
$this->servicePerimeters = $servicePerimeters;
}
/**
* @return ServicePerimeter[]
*/
public function getServicePerimeters()
{
return $this->servicePerimeters;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ReplaceServicePerimetersResponse::class, 'Google_Service_AccessContextManager_ReplaceServicePerimetersResponse');
@@ -0,0 +1,197 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\AccessPolicy;
use Google\Service\AccessContextManager\GetIamPolicyRequest;
use Google\Service\AccessContextManager\ListAccessPoliciesResponse;
use Google\Service\AccessContextManager\Operation;
use Google\Service\AccessContextManager\Policy;
use Google\Service\AccessContextManager\SetIamPolicyRequest;
use Google\Service\AccessContextManager\TestIamPermissionsRequest;
use Google\Service\AccessContextManager\TestIamPermissionsResponse;
/**
* The "accessPolicies" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $accessPolicies = $accesscontextmanagerService->accessPolicies;
* </code>
*/
class AccessPolicies extends \Google\Service\Resource
{
/**
* Creates an access policy. This method fails if the organization already has
* an access policy. The long-running operation has a successful status after
* the access policy propagates to long-lasting storage. Syntactic and basic
* semantic errors are returned in `metadata` as a BadRequest proto.
* (accessPolicies.create)
*
* @param AccessPolicy $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function create(AccessPolicy $postBody, $optParams = [])
{
$params = ['postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], Operation::class);
}
/**
* Deletes an access policy based on the resource name. The long-running
* operation has a successful status after the access policy is removed from
* long-lasting storage. (accessPolicies.delete)
*
* @param string $name Required. Resource name for the access policy to delete.
* Format `accessPolicies/{policy_id}`
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], Operation::class);
}
/**
* Returns an access policy based on the name. (accessPolicies.get)
*
* @param string $name Required. Resource name for the access policy to get.
* Format `accessPolicies/{policy_id}`
* @param array $optParams Optional parameters.
* @return AccessPolicy
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], AccessPolicy::class);
}
/**
* Gets the IAM policy for the specified Access Context Manager access policy.
* (accessPolicies.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);
}
/**
* Lists all access policies in an organization.
* (accessPolicies.listAccessPolicies)
*
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Number of AccessPolicy instances to include in the
* list. Default 100.
* @opt_param string pageToken Next page token for the next batch of
* AccessPolicy instances. Defaults to the first page of results.
* @opt_param string parent Required. Resource name for the container to list
* AccessPolicy instances from. Format: `organizations/{org_id}`
* @return ListAccessPoliciesResponse
* @throws \Google\Service\Exception
*/
public function listAccessPolicies($optParams = [])
{
$params = [];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListAccessPoliciesResponse::class);
}
/**
* Updates an access policy. The long-running operation from this RPC has a
* successful status after the changes to the access policy propagate to long-
* lasting storage. (accessPolicies.patch)
*
* @param string $name Output only. Identifier. Resource name of the
* `AccessPolicy`. Format: `accessPolicies/{access_policy}`
* @param AccessPolicy $postBody
* @param array $optParams Optional parameters.
*
* @opt_param string updateMask Required. Mask to control which fields get
* updated. Must be non-empty.
* @return Operation
* @throws \Google\Service\Exception
*/
public function patch($name, AccessPolicy $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], Operation::class);
}
/**
* Sets the IAM policy for the specified Access Context Manager access policy.
* This method replaces the existing IAM policy on the access policy. The IAM
* policy controls the set of users who can perform specific operations on the
* Access Context Manager access policy. (accessPolicies.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 IAM permissions that the caller has on the specified Access
* Context Manager resource. The resource can be an AccessPolicy, AccessLevel,
* or ServicePerimeter. This method does not support other resources. **IAM
* Permissions**: No specific IAM permission is required to call this method. It
* returns the subset of the requested permissions that the caller possesses.
* (accessPolicies.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(AccessPolicies::class, 'Google_Service_AccessContextManager_Resource_AccessPolicies');
@@ -0,0 +1,195 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\AccessLevel;
use Google\Service\AccessContextManager\ListAccessLevelsResponse;
use Google\Service\AccessContextManager\Operation;
use Google\Service\AccessContextManager\ReplaceAccessLevelsRequest;
use Google\Service\AccessContextManager\TestIamPermissionsRequest;
use Google\Service\AccessContextManager\TestIamPermissionsResponse;
/**
* The "accessLevels" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $accessLevels = $accesscontextmanagerService->accessPolicies_accessLevels;
* </code>
*/
class AccessPoliciesAccessLevels extends \Google\Service\Resource
{
/**
* Creates an access level. The long-running operation from this RPC has a
* successful status after the access level propagates to long-lasting storage.
* If access levels contain errors, an error response is returned for the first
* error encountered. (accessLevels.create)
*
* @param string $parent Required. Resource name for the access policy which
* owns this Access Level. Format: `accessPolicies/{policy_id}`
* @param AccessLevel $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function create($parent, AccessLevel $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], Operation::class);
}
/**
* Deletes an access level based on the resource name. The long-running
* operation from this RPC has a successful status after the access level has
* been removed from long-lasting storage. (accessLevels.delete)
*
* @param string $name Required. Resource name for the Access Level. Format:
* `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], Operation::class);
}
/**
* Gets an access level based on the resource name. (accessLevels.get)
*
* @param string $name Required. Resource name for the Access Level. Format:
* `accessPolicies/{policy_id}/accessLevels/{access_level_id}`
* @param array $optParams Optional parameters.
*
* @opt_param string accessLevelFormat Whether to return `BasicLevels` in the
* Cloud Common Expression Language rather than as `BasicLevels`. Defaults to
* AS_DEFINED, where Access Levels are returned as `BasicLevels` or
* `CustomLevels` based on how they were created. If set to CEL, all Access
* Levels are returned as `CustomLevels`. In the CEL case, `BasicLevels` are
* translated to equivalent `CustomLevels`.
* @return AccessLevel
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], AccessLevel::class);
}
/**
* Lists all access levels for an access policy.
* (accessLevels.listAccessPoliciesAccessLevels)
*
* @param string $parent Required. Resource name for the access policy to list
* Access Levels from. Format: `accessPolicies/{policy_id}`
* @param array $optParams Optional parameters.
*
* @opt_param string accessLevelFormat Whether to return `BasicLevels` in the
* Cloud Common Expression language, as `CustomLevels`, rather than as
* `BasicLevels`. Defaults to returning `AccessLevels` in the format they were
* defined.
* @opt_param int pageSize Number of Access Levels to include in the list.
* Default 100.
* @opt_param string pageToken Next page token for the next batch of Access
* Level instances. Defaults to the first page of results.
* @return ListAccessLevelsResponse
* @throws \Google\Service\Exception
*/
public function listAccessPoliciesAccessLevels($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListAccessLevelsResponse::class);
}
/**
* Updates an access level. The long-running operation from this RPC has a
* successful status after the changes to the access level propagate to long-
* lasting storage. If access levels contain errors, an error response is
* returned for the first error encountered. (accessLevels.patch)
*
* @param string $name Identifier. Resource name for the `AccessLevel`. Format:
* `accessPolicies/{access_policy}/accessLevels/{access_level}`. The
* `access_level` component must begin with a letter, followed by alphanumeric
* characters or `_`. Its maximum length is 50 characters. After you create an
* `AccessLevel`, you cannot change its `name`.
* @param AccessLevel $postBody
* @param array $optParams Optional parameters.
*
* @opt_param string updateMask Required. Mask to control which fields get
* updated. Must be non-empty.
* @return Operation
* @throws \Google\Service\Exception
*/
public function patch($name, AccessLevel $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], Operation::class);
}
/**
* Replaces all existing access levels in an access policy with the access
* levels provided. This is done atomically. The long-running operation from
* this RPC has a successful status after all replacements propagate to long-
* lasting storage. If the replacement contains errors, an error response is
* returned for the first error encountered. Upon error, the replacement is
* cancelled, and existing access levels are not affected. The
* Operation.response field contains ReplaceAccessLevelsResponse. Removing
* access levels contained in existing service perimeters result in an error.
* (accessLevels.replaceAll)
*
* @param string $parent Required. Resource name for the access policy which
* owns these Access Levels. Format: `accessPolicies/{policy_id}`
* @param ReplaceAccessLevelsRequest $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function replaceAll($parent, ReplaceAccessLevelsRequest $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('replaceAll', [$params], Operation::class);
}
/**
* Returns the IAM permissions that the caller has on the specified Access
* Context Manager resource. The resource can be an AccessPolicy, AccessLevel,
* or ServicePerimeter. This method does not support other resources. **IAM
* Permissions**: No specific IAM permission is required to call this method. It
* returns the subset of the requested permissions that the caller possesses.
* (accessLevels.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(AccessPoliciesAccessLevels::class, 'Google_Service_AccessContextManager_Resource_AccessPoliciesAccessLevels');
@@ -0,0 +1,142 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\AuthorizedOrgsDesc;
use Google\Service\AccessContextManager\ListAuthorizedOrgsDescsResponse;
use Google\Service\AccessContextManager\Operation;
/**
* The "authorizedOrgsDescs" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $authorizedOrgsDescs = $accesscontextmanagerService->accessPolicies_authorizedOrgsDescs;
* </code>
*/
class AccessPoliciesAuthorizedOrgsDescs extends \Google\Service\Resource
{
/**
* Creates an authorized orgs desc. The long-running operation from this RPC has
* a successful status after the authorized orgs desc propagates to long-lasting
* storage. If a authorized orgs desc contains errors, an error response is
* returned for the first error encountered. The name of this
* `AuthorizedOrgsDesc` will be assigned during creation.
* (authorizedOrgsDescs.create)
*
* @param string $parent Required. Resource name for the access policy which
* owns this Authorized Orgs Desc. Format: `accessPolicies/{policy_id}`
* @param AuthorizedOrgsDesc $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function create($parent, AuthorizedOrgsDesc $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], Operation::class);
}
/**
* Deletes an authorized orgs desc based on the resource name. The long-running
* operation from this RPC has a successful status after the authorized orgs
* desc is removed from long-lasting storage. (authorizedOrgsDescs.delete)
*
* @param string $name Required. Resource name for the Authorized Orgs Desc.
* Format:
* `accessPolicies/{policy_id}/authorizedOrgsDesc/{authorized_orgs_desc_id}`
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], Operation::class);
}
/**
* Gets an authorized orgs desc based on the resource name.
* (authorizedOrgsDescs.get)
*
* @param string $name Required. Resource name for the Authorized Orgs Desc.
* Format:
* `accessPolicies/{policy_id}/authorizedOrgsDescs/{authorized_orgs_descs_id}`
* @param array $optParams Optional parameters.
* @return AuthorizedOrgsDesc
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], AuthorizedOrgsDesc::class);
}
/**
* Lists all authorized orgs descs for an access policy.
* (authorizedOrgsDescs.listAccessPoliciesAuthorizedOrgsDescs)
*
* @param string $parent Required. Resource name for the access policy to list
* Authorized Orgs Desc from. Format: `accessPolicies/{policy_id}`
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Number of Authorized Orgs Descs to include in the
* list. Default 100.
* @opt_param string pageToken Next page token for the next batch of Authorized
* Orgs Desc instances. Defaults to the first page of results.
* @return ListAuthorizedOrgsDescsResponse
* @throws \Google\Service\Exception
*/
public function listAccessPoliciesAuthorizedOrgsDescs($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListAuthorizedOrgsDescsResponse::class);
}
/**
* Updates an authorized orgs desc. The long-running operation from this RPC has
* a successful status after the authorized orgs desc propagates to long-lasting
* storage. If a authorized orgs desc contains errors, an error response is
* returned for the first error encountered. Only the organization list in
* `AuthorizedOrgsDesc` can be updated. The name, authorization_type, asset_type
* and authorization_direction cannot be updated. (authorizedOrgsDescs.patch)
*
* @param string $name Identifier. Resource name for the `AuthorizedOrgsDesc`.
* Format:
* `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`.
* The `authorized_orgs_desc` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you
* cannot change its `name`.
* @param AuthorizedOrgsDesc $postBody
* @param array $optParams Optional parameters.
*
* @opt_param string updateMask Required. Mask to control which fields get
* updated. Must be non-empty.
* @return Operation
* @throws \Google\Service\Exception
*/
public function patch($name, AuthorizedOrgsDesc $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], Operation::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccessPoliciesAuthorizedOrgsDescs::class, 'Google_Service_AccessContextManager_Resource_AccessPoliciesAuthorizedOrgsDescs');
@@ -0,0 +1,213 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\CommitServicePerimetersRequest;
use Google\Service\AccessContextManager\ListServicePerimetersResponse;
use Google\Service\AccessContextManager\Operation;
use Google\Service\AccessContextManager\ReplaceServicePerimetersRequest;
use Google\Service\AccessContextManager\ServicePerimeter;
use Google\Service\AccessContextManager\TestIamPermissionsRequest;
use Google\Service\AccessContextManager\TestIamPermissionsResponse;
/**
* The "servicePerimeters" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $servicePerimeters = $accesscontextmanagerService->accessPolicies_servicePerimeters;
* </code>
*/
class AccessPoliciesServicePerimeters extends \Google\Service\Resource
{
/**
* Commits the dry-run specification for all the service perimeters in an access
* policy. A commit operation on a service perimeter involves copying its `spec`
* field to the `status` field of the service perimeter. Only service perimeters
* with `use_explicit_dry_run_spec` field set to true are affected by a commit
* operation. The long-running operation from this RPC has a successful status
* after the dry-run specifications for all the service perimeters have been
* committed. If a commit fails, it causes the long-running operation to return
* an error response and the entire commit operation is cancelled. When
* successful, the Operation.response field contains
* CommitServicePerimetersResponse. The `dry_run` and the `spec` fields are
* cleared after a successful commit operation. (servicePerimeters.commit)
*
* @param string $parent Required. Resource name for the parent Access Policy
* which owns all Service Perimeters in scope for the commit operation. Format:
* `accessPolicies/{policy_id}`
* @param CommitServicePerimetersRequest $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function commit($parent, CommitServicePerimetersRequest $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('commit', [$params], Operation::class);
}
/**
* Creates a service perimeter. The long-running operation from this RPC has a
* successful status after the service perimeter propagates to long-lasting
* storage. If a service perimeter contains errors, an error response is
* returned for the first error encountered. (servicePerimeters.create)
*
* @param string $parent Required. Resource name for the access policy which
* owns this Service Perimeter. Format: `accessPolicies/{policy_id}`
* @param ServicePerimeter $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function create($parent, ServicePerimeter $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], Operation::class);
}
/**
* Deletes a service perimeter based on the resource name. The long-running
* operation from this RPC has a successful status after the service perimeter
* is removed from long-lasting storage. (servicePerimeters.delete)
*
* @param string $name Required. Resource name for the Service Perimeter.
* Format: `accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}`
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], Operation::class);
}
/**
* Gets a service perimeter based on the resource name. (servicePerimeters.get)
*
* @param string $name Required. Resource name for the Service Perimeter.
* Format:
* `accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}`
* @param array $optParams Optional parameters.
* @return ServicePerimeter
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], ServicePerimeter::class);
}
/**
* Lists all service perimeters for an access policy.
* (servicePerimeters.listAccessPoliciesServicePerimeters)
*
* @param string $parent Required. Resource name for the access policy to list
* Service Perimeters from. Format: `accessPolicies/{policy_id}`
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Number of Service Perimeters to include in the list.
* Default 100.
* @opt_param string pageToken Next page token for the next batch of Service
* Perimeter instances. Defaults to the first page of results.
* @return ListServicePerimetersResponse
* @throws \Google\Service\Exception
*/
public function listAccessPoliciesServicePerimeters($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListServicePerimetersResponse::class);
}
/**
* Updates a service perimeter. The long-running operation from this RPC has a
* successful status after the service perimeter propagates to long-lasting
* storage. If a service perimeter contains errors, an error response is
* returned for the first error encountered. (servicePerimeters.patch)
*
* @param string $name Identifier. Resource name for the `ServicePerimeter`.
* Format:
* `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The
* `service_perimeter` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create a `ServicePerimeter`, you
* cannot change its `name`.
* @param ServicePerimeter $postBody
* @param array $optParams Optional parameters.
*
* @opt_param string updateMask Required. Mask to control which fields get
* updated. Must be non-empty.
* @return Operation
* @throws \Google\Service\Exception
*/
public function patch($name, ServicePerimeter $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], Operation::class);
}
/**
* Replace all existing service perimeters in an access policy with the service
* perimeters provided. This is done atomically. The long-running operation from
* this RPC has a successful status after all replacements propagate to long-
* lasting storage. Replacements containing errors result in an error response
* for the first error encountered. Upon an error, replacements are cancelled
* and existing service perimeters are not affected. The Operation.response
* field contains ReplaceServicePerimetersResponse.
* (servicePerimeters.replaceAll)
*
* @param string $parent Required. Resource name for the access policy which
* owns these Service Perimeters. Format: `accessPolicies/{policy_id}`
* @param ReplaceServicePerimetersRequest $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function replaceAll($parent, ReplaceServicePerimetersRequest $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('replaceAll', [$params], Operation::class);
}
/**
* Returns the IAM permissions that the caller has on the specified Access
* Context Manager resource. The resource can be an AccessPolicy, AccessLevel,
* or ServicePerimeter. This method does not support other resources. **IAM
* Permissions**: No specific IAM permission is required to call this method. It
* returns the subset of the requested permissions that the caller possesses.
* (servicePerimeters.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(AccessPoliciesServicePerimeters::class, 'Google_Service_AccessContextManager_Resource_AccessPoliciesServicePerimeters');
@@ -0,0 +1,121 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\AccesscontextmanagerEmpty;
use Google\Service\AccessContextManager\CancelOperationRequest;
use Google\Service\AccessContextManager\ListOperationsResponse;
use Google\Service\AccessContextManager\Operation;
/**
* The "operations" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $operations = $accesscontextmanagerService->operations;
* </code>
*/
class Operations extends \Google\Service\Resource
{
/**
* Starts asynchronous cancellation on a long-running operation. The server
* makes a best effort to cancel the operation, but success is not guaranteed.
* If the server doesn't support this method, it returns
* `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
* other methods to check whether the cancellation succeeded or whether the
* operation completed despite cancellation. On successful cancellation, the
* operation is not deleted; instead, it becomes an operation with an
* Operation.error value with a google.rpc.Status.code of `1`, corresponding to
* `Code.CANCELLED`. (operations.cancel)
*
* @param string $name The name of the operation resource to be cancelled.
* @param CancelOperationRequest $postBody
* @param array $optParams Optional parameters.
* @return AccesscontextmanagerEmpty
* @throws \Google\Service\Exception
*/
public function cancel($name, CancelOperationRequest $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('cancel', [$params], AccesscontextmanagerEmpty::class);
}
/**
* Deletes a long-running operation. This method indicates that the client is no
* longer interested in the operation result. It does not cancel the operation.
* If the server doesn't support this method, it returns
* `google.rpc.Code.UNIMPLEMENTED`. (operations.delete)
*
* @param string $name The name of the operation resource to be deleted.
* @param array $optParams Optional parameters.
* @return AccesscontextmanagerEmpty
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], AccesscontextmanagerEmpty::class);
}
/**
* Gets the latest state of a long-running operation. Clients can use this
* method to poll the operation result at intervals as recommended by the API
* service. (operations.get)
*
* @param string $name The name of the operation resource.
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], Operation::class);
}
/**
* Lists operations that match the specified filter in the request. If the
* server doesn't support this method, it returns `UNIMPLEMENTED`.
* (operations.listOperations)
*
* @param string $name The name of the operation's parent resource.
* @param array $optParams Optional parameters.
*
* @opt_param string filter The standard list filter.
* @opt_param int pageSize The standard list page size.
* @opt_param string pageToken The standard list page token.
* @opt_param bool returnPartialSuccess When set to `true`, operations that are
* reachable are returned as normal, and those that are unreachable are returned
* in the ListOperationsResponse.unreachable field. This can only be `true` when
* reading across collections. For example, when `parent` is set to
* `"projects/example/locations/-"`. This field is not supported by default and
* will result in an `UNIMPLEMENTED` error if set unless explicitly documented
* otherwise in service or product specific documentation.
* @return ListOperationsResponse
* @throws \Google\Service\Exception
*/
public function listOperations($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListOperationsResponse::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Operations::class, 'Google_Service_AccessContextManager_Resource_Operations');
@@ -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\AccessContextManager\Resource;
/**
* The "organizations" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $organizations = $accesscontextmanagerService->organizations;
* </code>
*/
class Organizations extends \Google\Service\Resource
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Organizations::class, 'Google_Service_AccessContextManager_Resource_Organizations');
@@ -0,0 +1,148 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\GcpUserAccessBinding;
use Google\Service\AccessContextManager\ListGcpUserAccessBindingsResponse;
use Google\Service\AccessContextManager\Operation;
/**
* The "gcpUserAccessBindings" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $gcpUserAccessBindings = $accesscontextmanagerService->organizations_gcpUserAccessBindings;
* </code>
*/
class OrganizationsGcpUserAccessBindings extends \Google\Service\Resource
{
/**
* Creates a GcpUserAccessBinding. If the client specifies a name, the server
* ignores it. Fails if a resource already exists with the same group_key.
* Completion of this long-running operation does not necessarily signify that
* the new binding is deployed onto all affected users, which may take more
* time. (gcpUserAccessBindings.create)
*
* @param string $parent Required. Example: "organizations/256"
* @param GcpUserAccessBinding $postBody
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function create($parent, GcpUserAccessBinding $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], Operation::class);
}
/**
* Deletes a GcpUserAccessBinding. Completion of this long-running operation
* does not necessarily signify that the binding deletion is deployed onto all
* affected users, which may take more time. (gcpUserAccessBindings.delete)
*
* @param string $name Required. Example:
* "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
* @param array $optParams Optional parameters.
* @return Operation
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], Operation::class);
}
/**
* Gets the GcpUserAccessBinding with the given name.
* (gcpUserAccessBindings.get)
*
* @param string $name Required. Example:
* "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
* @param array $optParams Optional parameters.
* @return GcpUserAccessBinding
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], GcpUserAccessBinding::class);
}
/**
* Lists all GcpUserAccessBindings for a Google Cloud organization.
* (gcpUserAccessBindings.listOrganizationsGcpUserAccessBindings)
*
* @param string $parent Required. Example: "organizations/256"
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Optional. Maximum number of items to return. The
* server may return fewer items. If left blank, the server may return any
* number of items.
* @opt_param string pageToken Optional. If left blank, returns the first page.
* To enumerate all items, use the next_page_token from your previous list
* operation.
* @return ListGcpUserAccessBindingsResponse
* @throws \Google\Service\Exception
*/
public function listOrganizationsGcpUserAccessBindings($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListGcpUserAccessBindingsResponse::class);
}
/**
* Updates a GcpUserAccessBinding. Completion of this long-running operation
* does not necessarily signify that the changed binding is deployed onto all
* affected users, which may take more time. (gcpUserAccessBindings.patch)
*
* @param string $name Immutable. Assigned by the server during creation. The
* last segment has an arbitrary length and has only URI unreserved characters
* (as defined by [RFC 3986 Section
* 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be
* specified by the client during creation. Example:
* "organizations/256/gcpUserAccessBindings/b3-BhcX_Ud5N"
* @param GcpUserAccessBinding $postBody
* @param array $optParams Optional parameters.
*
* @opt_param bool append Optional. This field controls whether or not certain
* repeated settings in the update request overwrite or append to existing
* settings on the binding. If true, then append. Otherwise overwrite. So far,
* only scoped_access_settings with session_settings supports appending. Global
* access_levels, access_levels in scoped_access_settings,
* dry_run_access_levels, and session_settings are not compatible with append
* functionality, and the request will return an error if append=true when these
* settings are in the update_mask. The request will also return an error if
* append=true when "scoped_access_settings" is not set in the update_mask.
* @opt_param string updateMask Required. Only the fields specified in this mask
* are updated. Because name and group_key cannot be changed, update_mask is
* required and may only contain the following fields: `access_levels`,
* `dry_run_access_levels`, `session_settings`, `scoped_access_settings`.
* update_mask { paths: "access_levels" }
* @return Operation
* @throws \Google\Service\Exception
*/
public function patch($name, GcpUserAccessBinding $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], Operation::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(OrganizationsGcpUserAccessBindings::class, 'Google_Service_AccessContextManager_Resource_OrganizationsGcpUserAccessBindings');
@@ -0,0 +1,54 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\ListSupportedPermissionsResponse;
/**
* The "permissions" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $permissions = $accesscontextmanagerService->permissions;
* </code>
*/
class Permissions extends \Google\Service\Resource
{
/**
* Lists all supported permissions in VPC Service Controls ingress and egress
* rules for Granular Controls. (permissions.listPermissions)
*
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Optional. This flag specifies the maximum number of
* services to return per page. Default value is 100.
* @opt_param string pageToken Optional. Use this token to retrieve a specific
* page of results. Default is the first page.
* @return ListSupportedPermissionsResponse
* @throws \Google\Service\Exception
*/
public function listPermissions($optParams = [])
{
$params = [];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListSupportedPermissionsResponse::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Permissions::class, 'Google_Service_AccessContextManager_Resource_Permissions');
@@ -0,0 +1,74 @@
<?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\AccessContextManager\Resource;
use Google\Service\AccessContextManager\ListSupportedServicesResponse;
use Google\Service\AccessContextManager\SupportedService;
/**
* The "services" collection of methods.
* Typical usage is:
* <code>
* $accesscontextmanagerService = new Google\Service\AccessContextManager(...);
* $services = $accesscontextmanagerService->services;
* </code>
*/
class Services extends \Google\Service\Resource
{
/**
* Returns a VPC-SC supported service based on the service name. **IAM
* Permissions**: Requires the following IAM permissions to use this method: -
* `serviceusage.services.use` on the project. (services.get)
*
* @param string $name The name of the service to get information about. The
* names must be in the same format as used in defining a service perimeter, for
* example, `storage.googleapis.com`.
* @param array $optParams Optional parameters.
* @return SupportedService
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], SupportedService::class);
}
/**
* Lists all VPC-SC supported services. **IAM Permissions**: Requires the
* following IAM permissions to use this method: - `serviceusage.services.use`
* on the project. (services.listServices)
*
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize This flag specifies the maximum number of services to
* return per page. Default value is 100.
* @opt_param string pageToken Use this token to retrieve a specific page of
* results. Default is the first page.
* @return ListSupportedServicesResponse
* @throws \Google\Service\Exception
*/
public function listServices($optParams = [])
{
$params = [];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], ListSupportedServicesResponse::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Services::class, 'Google_Service_AccessContextManager_Resource_Services');
@@ -0,0 +1,84 @@
<?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\AccessContextManager;
class ScopedAccessSettings extends \Google\Model
{
protected $activeSettingsType = AccessSettings::class;
protected $activeSettingsDataType = '';
protected $dryRunSettingsType = AccessSettings::class;
protected $dryRunSettingsDataType = '';
protected $scopeType = AccessScope::class;
protected $scopeDataType = '';
/**
* Optional. Access settings for this scoped access settings. This field may
* be empty if dry_run_settings is set.
*
* @param AccessSettings $activeSettings
*/
public function setActiveSettings(AccessSettings $activeSettings)
{
$this->activeSettings = $activeSettings;
}
/**
* @return AccessSettings
*/
public function getActiveSettings()
{
return $this->activeSettings;
}
/**
* Optional. Dry-run access settings for this scoped access settings. This
* field may be empty if active_settings is set.
*
* @param AccessSettings $dryRunSettings
*/
public function setDryRunSettings(AccessSettings $dryRunSettings)
{
$this->dryRunSettings = $dryRunSettings;
}
/**
* @return AccessSettings
*/
public function getDryRunSettings()
{
return $this->dryRunSettings;
}
/**
* Optional. Application, etc. to which the access settings will be applied
* to. Implicitly, this is the scoped access settings key; as such, it must be
* unique and non-empty.
*
* @param AccessScope $scope
*/
public function setScope(AccessScope $scope)
{
$this->scope = $scope;
}
/**
* @return AccessScope
*/
public function getScope()
{
return $this->scope;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ScopedAccessSettings::class, 'Google_Service_AccessContextManager_ScopedAccessSettings');
@@ -0,0 +1,252 @@
<?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\AccessContextManager;
class ServicePerimeter extends \Google\Model
{
/**
* Regular Perimeter. When no value is specified, the perimeter uses this
* type.
*/
public const PERIMETER_TYPE_PERIMETER_TYPE_REGULAR = 'PERIMETER_TYPE_REGULAR';
/**
* Perimeter Bridge.
*/
public const PERIMETER_TYPE_PERIMETER_TYPE_BRIDGE = 'PERIMETER_TYPE_BRIDGE';
/**
* Description of the `ServicePerimeter` and its use. Does not affect
* behavior.
*
* @var string
*/
public $description;
/**
* Optional. An opaque identifier for the current version of the
* `ServicePerimeter`. This identifier does not follow any specific format. If
* an etag is not provided, the operation will be performed as if a valid etag
* is provided.
*
* @var string
*/
public $etag;
/**
* Identifier. Resource name for the `ServicePerimeter`. Format:
* `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The
* `service_perimeter` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create a `ServicePerimeter`, you
* cannot change its `name`.
*
* @var string
*/
public $name;
/**
* Perimeter type indicator. A single project or VPC network is allowed to be
* a member of single regular perimeter, but multiple service perimeter
* bridges. A project cannot be a included in a perimeter bridge without being
* included in regular perimeter. For perimeter bridges, the restricted
* service list as well as access level lists must be empty.
*
* @var string
*/
public $perimeterType;
protected $specType = ServicePerimeterConfig::class;
protected $specDataType = '';
protected $statusType = ServicePerimeterConfig::class;
protected $statusDataType = '';
/**
* Human readable title. Must be unique within the Policy.
*
* @var string
*/
public $title;
/**
* Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
* exists for all Service Perimeters, and that spec is identical to the status
* for those Service Perimeters. When this flag is set, it inhibits the
* generation of the implicit spec, thereby allowing the user to explicitly
* provide a configuration ("spec") to use in a dry-run version of the Service
* Perimeter. This allows the user to test changes to the enforced config
* ("status") without actually enforcing them. This testing is done through
* analyzing the differences between currently enforced and suggested
* restrictions. use_explicit_dry_run_spec must bet set to True if any of the
* fields in the spec are set to non-default values.
*
* @var bool
*/
public $useExplicitDryRunSpec;
/**
* Description of the `ServicePerimeter` and its use. Does not affect
* behavior.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Optional. An opaque identifier for the current version of the
* `ServicePerimeter`. This identifier does not follow any specific format. If
* an etag is not provided, the operation will be performed as if a valid etag
* is provided.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Identifier. Resource name for the `ServicePerimeter`. Format:
* `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The
* `service_perimeter` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create a `ServicePerimeter`, you
* cannot change its `name`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Perimeter type indicator. A single project or VPC network is allowed to be
* a member of single regular perimeter, but multiple service perimeter
* bridges. A project cannot be a included in a perimeter bridge without being
* included in regular perimeter. For perimeter bridges, the restricted
* service list as well as access level lists must be empty.
*
* Accepted values: PERIMETER_TYPE_REGULAR, PERIMETER_TYPE_BRIDGE
*
* @param self::PERIMETER_TYPE_* $perimeterType
*/
public function setPerimeterType($perimeterType)
{
$this->perimeterType = $perimeterType;
}
/**
* @return self::PERIMETER_TYPE_*
*/
public function getPerimeterType()
{
return $this->perimeterType;
}
/**
* Proposed (or dry run) ServicePerimeter configuration. This configuration
* allows to specify and test ServicePerimeter configuration without enforcing
* actual access restrictions. Only allowed to be set when the
* "use_explicit_dry_run_spec" flag is set.
*
* @param ServicePerimeterConfig $spec
*/
public function setSpec(ServicePerimeterConfig $spec)
{
$this->spec = $spec;
}
/**
* @return ServicePerimeterConfig
*/
public function getSpec()
{
return $this->spec;
}
/**
* Current ServicePerimeter configuration. Specifies sets of resources,
* restricted services and access levels that determine perimeter content and
* boundaries.
*
* @param ServicePerimeterConfig $status
*/
public function setStatus(ServicePerimeterConfig $status)
{
$this->status = $status;
}
/**
* @return ServicePerimeterConfig
*/
public function getStatus()
{
return $this->status;
}
/**
* Human readable title. Must be unique within the Policy.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
/**
* Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
* exists for all Service Perimeters, and that spec is identical to the status
* for those Service Perimeters. When this flag is set, it inhibits the
* generation of the implicit spec, thereby allowing the user to explicitly
* provide a configuration ("spec") to use in a dry-run version of the Service
* Perimeter. This allows the user to test changes to the enforced config
* ("status") without actually enforcing them. This testing is done through
* analyzing the differences between currently enforced and suggested
* restrictions. use_explicit_dry_run_spec must bet set to True if any of the
* fields in the spec are set to non-default values.
*
* @param bool $useExplicitDryRunSpec
*/
public function setUseExplicitDryRunSpec($useExplicitDryRunSpec)
{
$this->useExplicitDryRunSpec = $useExplicitDryRunSpec;
}
/**
* @return bool
*/
public function getUseExplicitDryRunSpec()
{
return $this->useExplicitDryRunSpec;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ServicePerimeter::class, 'Google_Service_AccessContextManager_ServicePerimeter');
@@ -0,0 +1,179 @@
<?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\AccessContextManager;
class ServicePerimeterConfig extends \Google\Collection
{
protected $collection_key = 'restrictedServices';
/**
* A list of `AccessLevel` resource names that allow resources within the
* `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
* must be in the same policy as this `ServicePerimeter`. Referencing a
* nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter
* Bridge, must be empty.
*
* @var string[]
*/
public $accessLevels;
protected $egressPoliciesType = EgressPolicy::class;
protected $egressPoliciesDataType = 'array';
protected $ingressPoliciesType = IngressPolicy::class;
protected $ingressPoliciesDataType = 'array';
/**
* A list of Google Cloud resources that are inside of the service perimeter.
* Currently only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
*
* @var string[]
*/
public $resources;
/**
* Google Cloud services that are subject to the Service Perimeter
* restrictions. For example, if `storage.googleapis.com` is specified, access
* to the storage buckets inside the perimeter must meet the perimeter's
* access restrictions.
*
* @var string[]
*/
public $restrictedServices;
protected $vpcAccessibleServicesType = VpcAccessibleServices::class;
protected $vpcAccessibleServicesDataType = '';
/**
* A list of `AccessLevel` resource names that allow resources within the
* `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
* must be in the same policy as this `ServicePerimeter`. Referencing a
* nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter
* Bridge, must be empty.
*
* @param string[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return string[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* List of EgressPolicies to apply to the perimeter. A perimeter may have
* multiple EgressPolicies, each of which is evaluated separately. Access is
* granted if any EgressPolicy grants it. Must be empty for a perimeter
* bridge.
*
* @param EgressPolicy[] $egressPolicies
*/
public function setEgressPolicies($egressPolicies)
{
$this->egressPolicies = $egressPolicies;
}
/**
* @return EgressPolicy[]
*/
public function getEgressPolicies()
{
return $this->egressPolicies;
}
/**
* List of IngressPolicies to apply to the perimeter. A perimeter may have
* multiple IngressPolicies, each of which is evaluated separately. Access is
* granted if any Ingress Policy grants it. Must be empty for a perimeter
* bridge.
*
* @param IngressPolicy[] $ingressPolicies
*/
public function setIngressPolicies($ingressPolicies)
{
$this->ingressPolicies = $ingressPolicies;
}
/**
* @return IngressPolicy[]
*/
public function getIngressPolicies()
{
return $this->ingressPolicies;
}
/**
* A list of Google Cloud resources that are inside of the service perimeter.
* Currently only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* Google Cloud services that are subject to the Service Perimeter
* restrictions. For example, if `storage.googleapis.com` is specified, access
* to the storage buckets inside the perimeter must meet the perimeter's
* access restrictions.
*
* @param string[] $restrictedServices
*/
public function setRestrictedServices($restrictedServices)
{
$this->restrictedServices = $restrictedServices;
}
/**
* @return string[]
*/
public function getRestrictedServices()
{
return $this->restrictedServices;
}
/**
* Configuration for APIs allowed within Perimeter.
*
* @param VpcAccessibleServices $vpcAccessibleServices
*/
public function setVpcAccessibleServices(VpcAccessibleServices $vpcAccessibleServices)
{
$this->vpcAccessibleServices = $vpcAccessibleServices;
}
/**
* @return VpcAccessibleServices
*/
public function getVpcAccessibleServices()
{
return $this->vpcAccessibleServices;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ServicePerimeterConfig::class, 'Google_Service_AccessContextManager_ServicePerimeterConfig');
@@ -0,0 +1,177 @@
<?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\AccessContextManager;
class SessionSettings extends \Google\Model
{
/**
* If method is undefined in the API, LOGIN will be used by default.
*/
public const SESSION_REAUTH_METHOD_SESSION_REAUTH_METHOD_UNSPECIFIED = 'SESSION_REAUTH_METHOD_UNSPECIFIED';
/**
* The user will be prompted to perform regular login. Users who are enrolled
* for two-step verification and haven't chosen "Remember this computer" will
* be prompted for their second factor.
*/
public const SESSION_REAUTH_METHOD_LOGIN = 'LOGIN';
/**
* The user will be prompted to authenticate using their security key. If no
* security key has been configured, then authentication will fallback to
* LOGIN.
*/
public const SESSION_REAUTH_METHOD_SECURITY_KEY = 'SECURITY_KEY';
/**
* The user will be prompted for their password.
*/
public const SESSION_REAUTH_METHOD_PASSWORD = 'PASSWORD';
/**
* Optional. How long a user is allowed to take between actions before a new
* access token must be issued. Only set for Google Cloud apps.
*
* @var string
*/
public $maxInactivity;
/**
* Optional. The session length. Setting this field to zero is equal to
* disabling session. Also can set infinite session by flipping the enabled
* bit to false below. If use_oidc_max_age is true, for OIDC apps, the session
* length will be the minimum of this field and OIDC max_age param.
*
* @var string
*/
public $sessionLength;
/**
* Optional. This field enables or disables Google Cloud session length. When
* false, all fields set above will be disregarded and the session length is
* basically infinite.
*
* @var bool
*/
public $sessionLengthEnabled;
/**
* Optional. Session method when user's Google Cloud session is up.
*
* @var string
*/
public $sessionReauthMethod;
/**
* Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if
* passed in the authentication request will be ignored. When true, the re-
* auth period will be the minimum of the session_length field and the max_age
* OIDC param.
*
* @var bool
*/
public $useOidcMaxAge;
/**
* Optional. How long a user is allowed to take between actions before a new
* access token must be issued. Only set for Google Cloud apps.
*
* @param string $maxInactivity
*/
public function setMaxInactivity($maxInactivity)
{
$this->maxInactivity = $maxInactivity;
}
/**
* @return string
*/
public function getMaxInactivity()
{
return $this->maxInactivity;
}
/**
* Optional. The session length. Setting this field to zero is equal to
* disabling session. Also can set infinite session by flipping the enabled
* bit to false below. If use_oidc_max_age is true, for OIDC apps, the session
* length will be the minimum of this field and OIDC max_age param.
*
* @param string $sessionLength
*/
public function setSessionLength($sessionLength)
{
$this->sessionLength = $sessionLength;
}
/**
* @return string
*/
public function getSessionLength()
{
return $this->sessionLength;
}
/**
* Optional. This field enables or disables Google Cloud session length. When
* false, all fields set above will be disregarded and the session length is
* basically infinite.
*
* @param bool $sessionLengthEnabled
*/
public function setSessionLengthEnabled($sessionLengthEnabled)
{
$this->sessionLengthEnabled = $sessionLengthEnabled;
}
/**
* @return bool
*/
public function getSessionLengthEnabled()
{
return $this->sessionLengthEnabled;
}
/**
* Optional. Session method when user's Google Cloud session is up.
*
* Accepted values: SESSION_REAUTH_METHOD_UNSPECIFIED, LOGIN, SECURITY_KEY,
* PASSWORD
*
* @param self::SESSION_REAUTH_METHOD_* $sessionReauthMethod
*/
public function setSessionReauthMethod($sessionReauthMethod)
{
$this->sessionReauthMethod = $sessionReauthMethod;
}
/**
* @return self::SESSION_REAUTH_METHOD_*
*/
public function getSessionReauthMethod()
{
return $this->sessionReauthMethod;
}
/**
* Optional. Only useful for OIDC apps. When false, the OIDC max_age param, if
* passed in the authentication request will be ignored. When true, the re-
* auth period will be the minimum of the session_length field and the max_age
* OIDC param.
*
* @param bool $useOidcMaxAge
*/
public function setUseOidcMaxAge($useOidcMaxAge)
{
$this->useOidcMaxAge = $useOidcMaxAge;
}
/**
* @return bool
*/
public function getUseOidcMaxAge()
{
return $this->useOidcMaxAge;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(SessionSettings::class, 'Google_Service_AccessContextManager_SessionSettings');
@@ -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\AccessContextManager;
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_AccessContextManager_SetIamPolicyRequest');
@@ -0,0 +1,99 @@
<?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\AccessContextManager;
class Status extends \Google\Collection
{
protected $collection_key = 'details';
/**
* The status code, which should be an enum value of google.rpc.Code.
*
* @var int
*/
public $code;
/**
* A list of messages that carry the error details. There is a common set of
* message types for APIs to use.
*
* @var array[]
*/
public $details;
/**
* A developer-facing error message, which should be in English. Any user-
* facing error message should be localized and sent in the
* google.rpc.Status.details field, or localized by the client.
*
* @var string
*/
public $message;
/**
* The status code, which should be an enum value of google.rpc.Code.
*
* @param int $code
*/
public function setCode($code)
{
$this->code = $code;
}
/**
* @return int
*/
public function getCode()
{
return $this->code;
}
/**
* A list of messages that carry the error details. There is a common set of
* message types for APIs to use.
*
* @param array[] $details
*/
public function setDetails($details)
{
$this->details = $details;
}
/**
* @return array[]
*/
public function getDetails()
{
return $this->details;
}
/**
* A developer-facing error message, which should be in English. Any user-
* facing error message should be localized and sent in the
* google.rpc.Status.details field, or localized by the client.
*
* @param string $message
*/
public function setMessage($message)
{
$this->message = $message;
}
/**
* @return string
*/
public function getMessage()
{
return $this->message;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Status::class, 'Google_Service_AccessContextManager_Status');
@@ -0,0 +1,264 @@
<?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\AccessContextManager;
class SupportedService extends \Google\Collection
{
/**
* Do not use this default value.
*/
public const SERVICE_SUPPORT_STAGE_SERVICE_SUPPORT_STAGE_UNSPECIFIED = 'SERVICE_SUPPORT_STAGE_UNSPECIFIED';
/**
* GA features are open to all developers and are considered stable and fully
* qualified for production use.
*/
public const SERVICE_SUPPORT_STAGE_GA = 'GA';
/**
* PREVIEW indicates a pre-release stage where the product is functionally
* complete but undergoing real-world testing.
*/
public const SERVICE_SUPPORT_STAGE_PREVIEW = 'PREVIEW';
/**
* Deprecated features are scheduled to be shut down and removed.
*/
public const SERVICE_SUPPORT_STAGE_DEPRECATED = 'DEPRECATED';
/**
* Do not use this default value.
*/
public const SUPPORT_STAGE_LAUNCH_STAGE_UNSPECIFIED = 'LAUNCH_STAGE_UNSPECIFIED';
/**
* The feature is not yet implemented. Users can not use it.
*/
public const SUPPORT_STAGE_UNIMPLEMENTED = 'UNIMPLEMENTED';
/**
* Prelaunch features are hidden from users and are only visible internally.
*/
public const SUPPORT_STAGE_PRELAUNCH = 'PRELAUNCH';
/**
* Early Access features are limited to a closed group of testers. To use
* these features, you must sign up in advance and sign a Trusted Tester
* agreement (which includes confidentiality provisions). These features may
* be unstable, changed in backward-incompatible ways, and are not guaranteed
* to be released.
*/
public const SUPPORT_STAGE_EARLY_ACCESS = 'EARLY_ACCESS';
/**
* Alpha is a limited availability test for releases before they are cleared
* for widespread use. By Alpha, all significant design issues are resolved
* and we are in the process of verifying functionality. Alpha customers need
* to apply for access, agree to applicable terms, and have their projects
* allowlisted. Alpha releases don't have to be feature complete, no SLAs are
* provided, and there are no technical support obligations, but they will be
* far enough along that customers can actually use them in test environments
* or for limited-use tests -- just like they would in normal production
* cases.
*/
public const SUPPORT_STAGE_ALPHA = 'ALPHA';
/**
* Beta is the point at which we are ready to open a release for any customer
* to use. There are no SLA or technical support obligations in a Beta
* release. Products will be complete from a feature perspective, but may have
* some open outstanding issues. Beta releases are suitable for limited
* production use cases.
*/
public const SUPPORT_STAGE_BETA = 'BETA';
/**
* GA features are open to all developers and are considered stable and fully
* qualified for production use.
*/
public const SUPPORT_STAGE_GA = 'GA';
/**
* Deprecated features are scheduled to be shut down and removed. For more
* information, see the "Deprecation Policy" section of our [Terms of
* Service](https://cloud.google.com/terms/) and the [Google Cloud Platform
* Subject to the Deprecation
* Policy](https://cloud.google.com/terms/deprecation) documentation.
*/
public const SUPPORT_STAGE_DEPRECATED = 'DEPRECATED';
protected $collection_key = 'supportedMethods';
/**
* True if the service is available on the restricted VIP. Services on the
* restricted VIP typically either support VPC Service Controls or are core
* infrastructure services required for the functioning of Google Cloud.
*
* @var bool
*/
public $availableOnRestrictedVip;
/**
* True if the service is supported with some limitations. Check
* [documentation](https://cloud.google.com/vpc-service-
* controls/docs/supported-products) for details.
*
* @var bool
*/
public $knownLimitations;
/**
* The service name or address of the supported service, such as
* `service.googleapis.com`.
*
* @var string
*/
public $name;
/**
* The support stage of the service.
*
* @var string
*/
public $serviceSupportStage;
/**
* The support stage of the service.
*
* @var string
*/
public $supportStage;
protected $supportedMethodsType = MethodSelector::class;
protected $supportedMethodsDataType = 'array';
/**
* The name of the supported product, such as 'Cloud Product API'.
*
* @var string
*/
public $title;
/**
* True if the service is available on the restricted VIP. Services on the
* restricted VIP typically either support VPC Service Controls or are core
* infrastructure services required for the functioning of Google Cloud.
*
* @param bool $availableOnRestrictedVip
*/
public function setAvailableOnRestrictedVip($availableOnRestrictedVip)
{
$this->availableOnRestrictedVip = $availableOnRestrictedVip;
}
/**
* @return bool
*/
public function getAvailableOnRestrictedVip()
{
return $this->availableOnRestrictedVip;
}
/**
* True if the service is supported with some limitations. Check
* [documentation](https://cloud.google.com/vpc-service-
* controls/docs/supported-products) for details.
*
* @param bool $knownLimitations
*/
public function setKnownLimitations($knownLimitations)
{
$this->knownLimitations = $knownLimitations;
}
/**
* @return bool
*/
public function getKnownLimitations()
{
return $this->knownLimitations;
}
/**
* The service name or address of the supported service, such as
* `service.googleapis.com`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* The support stage of the service.
*
* Accepted values: SERVICE_SUPPORT_STAGE_UNSPECIFIED, GA, PREVIEW, DEPRECATED
*
* @param self::SERVICE_SUPPORT_STAGE_* $serviceSupportStage
*/
public function setServiceSupportStage($serviceSupportStage)
{
$this->serviceSupportStage = $serviceSupportStage;
}
/**
* @return self::SERVICE_SUPPORT_STAGE_*
*/
public function getServiceSupportStage()
{
return $this->serviceSupportStage;
}
/**
* The support stage of the service.
*
* Accepted values: LAUNCH_STAGE_UNSPECIFIED, UNIMPLEMENTED, PRELAUNCH,
* EARLY_ACCESS, ALPHA, BETA, GA, DEPRECATED
*
* @param self::SUPPORT_STAGE_* $supportStage
*/
public function setSupportStage($supportStage)
{
$this->supportStage = $supportStage;
}
/**
* @return self::SUPPORT_STAGE_*
*/
public function getSupportStage()
{
return $this->supportStage;
}
/**
* The list of the supported methods. This field exists only in response to
* GetSupportedService
*
* @param MethodSelector[] $supportedMethods
*/
public function setSupportedMethods($supportedMethods)
{
$this->supportedMethods = $supportedMethods;
}
/**
* @return MethodSelector[]
*/
public function getSupportedMethods()
{
return $this->supportedMethods;
}
/**
* The name of the supported product, such as 'Cloud Product API'.
*
* @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(SupportedService::class, 'Google_Service_AccessContextManager_SupportedService');
@@ -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\AccessContextManager;
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_AccessContextManager_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\AccessContextManager;
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_AccessContextManager_TestIamPermissionsResponse');
@@ -0,0 +1,79 @@
<?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\AccessContextManager;
class VpcAccessibleServices extends \Google\Collection
{
protected $collection_key = 'allowedServices';
/**
* The list of APIs usable within the Service Perimeter. Must be empty unless
* 'enable_restriction' is True. You can specify a list of individual
* services, as well as include the 'RESTRICTED-SERVICES' value, which
* automatically includes all of the services protected by the perimeter.
*
* @var string[]
*/
public $allowedServices;
/**
* Whether to restrict API calls within the Service Perimeter to the list of
* APIs specified in 'allowed_services'.
*
* @var bool
*/
public $enableRestriction;
/**
* The list of APIs usable within the Service Perimeter. Must be empty unless
* 'enable_restriction' is True. You can specify a list of individual
* services, as well as include the 'RESTRICTED-SERVICES' value, which
* automatically includes all of the services protected by the perimeter.
*
* @param string[] $allowedServices
*/
public function setAllowedServices($allowedServices)
{
$this->allowedServices = $allowedServices;
}
/**
* @return string[]
*/
public function getAllowedServices()
{
return $this->allowedServices;
}
/**
* Whether to restrict API calls within the Service Perimeter to the list of
* APIs specified in 'allowed_services'.
*
* @param bool $enableRestriction
*/
public function setEnableRestriction($enableRestriction)
{
$this->enableRestriction = $enableRestriction;
}
/**
* @return bool
*/
public function getEnableRestriction()
{
return $this->enableRestriction;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(VpcAccessibleServices::class, 'Google_Service_AccessContextManager_VpcAccessibleServices');
@@ -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\AccessContextManager;
class VpcNetworkSource extends \Google\Model
{
protected $vpcSubnetworkType = VpcSubNetwork::class;
protected $vpcSubnetworkDataType = '';
/**
* Sub-segment ranges of a VPC network.
*
* @param VpcSubNetwork $vpcSubnetwork
*/
public function setVpcSubnetwork(VpcSubNetwork $vpcSubnetwork)
{
$this->vpcSubnetwork = $vpcSubnetwork;
}
/**
* @return VpcSubNetwork
*/
public function getVpcSubnetwork()
{
return $this->vpcSubnetwork;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(VpcNetworkSource::class, 'Google_Service_AccessContextManager_VpcNetworkSource');
@@ -0,0 +1,89 @@
<?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\AccessContextManager;
class VpcSubNetwork extends \Google\Collection
{
protected $collection_key = 'vpcIpSubnetworks';
/**
* Required. Network name. If the network is not part of the organization, the
* `compute.network.get` permission must be granted to the caller. Format: `//
* compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}
* ` Example: `//compute.googleapis.com/projects/my-
* project/global/networks/network-1`
*
* @var string
*/
public $network;
/**
* CIDR block IP subnetwork specification. The IP address must be an IPv4
* address and can be a public or private IP address. Note that for a CIDR IP
* address block, the specified IP address portion must be properly truncated
* (i.e. all the host bits must be zero) or the input is considered malformed.
* For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If
* empty, all IP addresses are allowed.
*
* @var string[]
*/
public $vpcIpSubnetworks;
/**
* Required. Network name. If the network is not part of the organization, the
* `compute.network.get` permission must be granted to the caller. Format: `//
* compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}
* ` Example: `//compute.googleapis.com/projects/my-
* project/global/networks/network-1`
*
* @param string $network
*/
public function setNetwork($network)
{
$this->network = $network;
}
/**
* @return string
*/
public function getNetwork()
{
return $this->network;
}
/**
* CIDR block IP subnetwork specification. The IP address must be an IPv4
* address and can be a public or private IP address. Note that for a CIDR IP
* address block, the specified IP address portion must be properly truncated
* (i.e. all the host bits must be zero) or the input is considered malformed.
* For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If
* empty, all IP addresses are allowed.
*
* @param string[] $vpcIpSubnetworks
*/
public function setVpcIpSubnetworks($vpcIpSubnetworks)
{
$this->vpcIpSubnetworks = $vpcIpSubnetworks;
}
/**
* @return string[]
*/
public function getVpcIpSubnetworks()
{
return $this->vpcIpSubnetworks;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(VpcSubNetwork::class, 'Google_Service_AccessContextManager_VpcSubNetwork');