UpdateBucket
Updates an existing bucket's properties. The authenticated user must have the storage.buckets.update IAM permission to use this StoredProcedure.
Input
| Name | Type | Required | Description |
| Bucket | String | True | The name of the bucket to update. |
| PredefinedAcl | String | False | Apply a predefined set of access controls to this bucket.
The allowed values are authenticatedRead, private, projectPrivate, publicRead, publicReadWrite. |
| PredefinedDefaultObjectAcl | String | False | Apply a predefined set of default object access controls to this bucket.
The allowed values are authenticatedRead, bucketOwnerFullControl, bucketOwnerRead, private, projectPrivate, publicRead. |
| IfMetagenerationMatch | Long | False | Makes the update conditional on whether the bucket's current metageneration matches the given value. |
| IfMetagenerationNotMatch | Long | False | Makes the update conditional on whether the bucket's current metageneration does not match the given value. |
| StorageClass | String | False | The bucket's default storage class.
The allowed values are STANDARD, NEARLINE, COLDLINE, ARCHIVE. |
| DefaultEventBasedHold | Boolean | False | Whether to automatically apply an eventBasedHold to new objects added to the bucket. |
| BillingRequesterPays | Boolean | False | When set to true, Requester Pays is enabled for this bucket. |
| VersioningEnabled | Boolean | False | When set to true, versioning is fully enabled for this bucket. |
| AutoclassEnabled | Boolean | False | When set to true, Autoclass is enabled for this bucket. |
| AutoclassTerminalStorageClass | String | False | The coldest storage class that objects transition to with Autoclass. Default is NEARLINE. Requires AutoclassEnabled to be set to true.
The allowed values are NEARLINE, ARCHIVE. |
| EncryptionDefaultKmsKeyName | String | False | A Cloud KMS key that will be used to encrypt objects inserted into this bucket. |
| WebsiteMainPageSuffix | String | False | Behaves as the bucket's directory index (e.g., index.html). |
| WebsiteNotFoundPage | String | False | The custom object to return for 404 responses. |
| LoggingLogBucket | String | False | The destination bucket where the current bucket's logs should be placed. |
| LoggingLogObjectPrefix | String | False | A prefix for log object names. Default is the bucket name. |
| RetentionPolicyPeriod | Long | False | The retention period in seconds. Objects cannot be deleted during this time. Max: 3155760000 seconds. |
| PublicAccessPrevention | String | False | The bucket's public access prevention status.
The allowed values are inherited, enforced. |
| UniformBucketLevelAccessEnabled | Boolean | False | When true, access checks only use bucket-level IAM policies or above. |
| SoftDeleteRetentionDurationSeconds | Long | False | Soft delete retention period in seconds (604800-7776000, or 0 to disable). |
| Rpo | String | False | Recovery point objective for cross-region replication. Applicable only for dual- and multi-region buckets.
The allowed values are DEFAULT, ASYNC_TURBO. |
| IpFilterMode | String | False | The state of the IP filter configuration.
The allowed values are Enabled, Disabled. |
| IpFilterAllowAllServiceAgentAccess | Boolean | False | When true, service agents can access the bucket regardless of IP filter rules. |
| IpFilterAllowCrossOrgVpcs | Boolean | False | When true, allows VPC networks from different organizations. Default is false. |
| IpFilterPublicNetworkAllowedIpCidrRanges | String | False | A comma-separated list of public IPv4/IPv6 CIDR ranges allowed to access the bucket, e.g. range1,range2. Sets ipFilter.publicNetworkSource.allowedIpCidrRanges. |
| IpFilterVpcNetworkName | String | False | A comma-separated list of VPC network resource names allowed to access the bucket, e.g. projects/PROJECT_ID/global/networks/NETWORK_NAME. Sets ipFilter.vpcNetworkSources[].network. |
| IpFilterVpcNetworkAllowedIpCidrRanges | String | False | The IPv4/IPv6 CIDR ranges per VPC network. Separate groups with commas and separate the ranges within a group with a dash or space, e.g. range1 - range2, range3. Each group maps to the matching network in IpFilterVpcNetworkName. Requires IpFilterVpcNetworkName. |
Result Set Columns
| Name | Type | Description |
| Success | String | Indicator if the stored procedure was successful or not. |