ALIYUN::OSS::Bucket is used to create an Object Storage Service (OSS) bucket.
Syntax
{
"Type": "ALIYUN::OSS::Bucket",
"Properties": {
"AccessControl": String,
"RefererConfiguration": Map,
"ServerSideEncryptionConfiguration": Map,
"CORSConfiguration": Map,
"Tags": Map,
"LoggingConfiguration": Map,
"LifecycleConfiguration": Map,
"StorageClass": String,
"DeletionForce": Boolean,
"WebsiteConfiguration": Map,
"Policy": Map,
"BucketName": String,
"RedundancyType": String,
"VersioningConfiguration": Map,
"ResourceGroupId": String,
"EnableOssHdfsService": Boolean
}
}
Properties
Property | Type | Required | Editable | Description | Constraint |
BucketName | String | Yes | No | The bucket name. | The name must be 3 to 63 characters in length and can contain lowercase letters, digits, and hyphens (-). The name must start and end with a lowercase letter or a digit. |
AccessControl | String | No | Yes | The permission type. | Valid values:
|
CORSConfiguration | Map | No | No | The configurations of cross-origin resource sharing (CORS) for objects in the bucket. | For more information, see CORSConfiguration property. |
LifecycleConfiguration | Map | No | Yes | The configurations of lifecycles for objects in the bucket. | For more information, see LifecycleConfiguration property. |
LoggingConfiguration | Map | No | No | The configurations of log storage. | For more information, see LoggingConfiguration properties. |
RefererConfiguration | Map | No | Yes | The configurations of hotlink protection. | For more information, see RefererConfiguration properties. |
DeletionForce | Boolean | No | Yes | Specifies whether to forcefully delete objects from the OSS bucket. | Valid values:
|
WebsiteConfiguration | Map | No | No | The configurations of the hosted static website. | For more information, see WebsiteConfiguration properties. |
ServerSideEncryptionConfiguration | Map | No | Yes | The configurations of server-side encryption rules. | For more information, see ServerSideEncryptionConfiguration properties. |
Tags | Map | No | Yes | The tags of the bucket. Specify tags in the key-value pair format. | You can specify up to 20 tags. A tag key must be 1 to 64 characters in length and cannot start with A tag value can be up to 128 characters in length and must be encoded in UTF-8. |
StorageClass | String | No | No | The storage class of the bucket. | Valid values:
|
Policy | Map | No | Yes | The configurations of the bucket policy. | For more information, see Examples. |
RedundancyType | String | No | No | The data redundancy type of the bucket. | Valid values:
|
VersioningConfiguration | Map | No | Yes | The container that stores the versioning state of the bucket. | For more information, see VersioningConfiguration property. |
ResourceGroupId | String | No | No | The ID of the resource group. | None. |
EnableOssHdfsService | Boolean | No | Yes | Specifies whether to enable OSS-HDFS. | Valid values:
|
CORSConfiguration syntax
"CORSConfiguration": {
"CORSRule": List
}
CORSConfiguration property
Property | Type | Required | Editable | Description | Constraint |
CORSRule | List | No | No | The CORS rule. | For more information, see CORSRule properties. |
CORSRule syntax
"CORSRule": [
{
"MaxAgeSeconds": Number,
"AllowedMethod": List,
"ExposeHeader": List,
"AllowedOrigin": List,
"AllowedHeader": List
}
]
CORSRule properties
Property | Type | Required | Editable | Description | Constraint |
AllowedHeader | List | No | No | The allowed headers in a cross-origin request. | Valid values:
|
AllowedMethod | List | No | No | The allowed method for a cross-domain request. | Valid values:
|
AllowedOrigin | List | No | No | The allowed origin of a cross-origin request. | None. |
ExposeHeader | List | No | No | The response headers that you can access from your application. | You cannot use asterisks (*). |
MaxAgeSeconds | Number | No | No | The period of time within which the browser is allowed to cache the response for an OPTIONS request destined to specific resources. | None. |
LifecycleConfiguration syntax
"LifecycleConfiguration": {
"Rule": List
}
LifecycleConfiguration property
Property | Type | Required | Editable | Description | Constraint |
Rule | List | Yes | No | The lifecycle rule. | For more information, see Rule properties. |
Rule syntax
"Rule": [
{
"Status": String,
"AbortMultipartUpload": Map,
"Expiration": Map,
"Prefix": String,
"ID": String
}
]
Rule properties
Property | Type | Required | Editable | Description | Constraint |
ID | String | No | No | The unique ID of the rule. | The unique ID can be up to 255 characters in length. If you leave this property empty, OSS generates a unique ID for the rule. |
Prefix | String | Yes | No | The name prefix of the object to which the rule applies. | The rule takes effect only for objects whose names have a matching prefix. |
Status | String | No | Yes | Specifies whether to enable the rule. | Valid values:
|
Expiration | Map | No | No | The expiration attribute of the rule for the object. | For more information, see Expiration properties. |
AbortMultipartUpload | Map | No | No | The expiration attribute of the multipart upload task that is not complete. | For more information, see AbortMultipartUpload properties. |
Expiration syntax
"Expiration":{
"Days": Number,
"CreatedBeforeDate": String,
"Date": String
}
Expiration properties
Property | Type | Required | Editable | Description | Constraint |
Days | Number | No | No | The number of days from when the object was last modified to when the rule takes effect. | When the number of days since the object was last modified exceeds the specified number of days, the object is deleted. If you set Days to 30, objects that were last modified on January 1, 2016 are deleted by the backend application on January 31, 2016. |
CreatedBeforeDate | String | No | No | The date. OSS implements the rule for data that was last modified before this date. | Specify the date in the ISO 8601 standard. The time must be at 00:00:00 UTC. Example: |
AbortMultipartUpload syntax
"AbortMultipartUpload": {
"CreatedBeforeDate": String,
"Days": Number
}
AbortMultipartUpload properties
Property | Type | Required | Editable | Description | Constraint |
Days | Number | No | No | The number of days from when the object was last modified to when the rule takes effect. | When the number of days since the object was last modified exceeds the specified number of days, the object is deleted. If you set Days to 30, objects that were last modified on January 1, 2016 are deleted by the backend application on January 31, 2016. |
CreatedBeforeDate | String | No | No | The date before when the rule takes effect. | Specify the date in the ISO 8601 standard. The time must be at 00:00:00 UTC. Example: |
LoggingConfiguration syntax
"LoggingConfiguration": {
"TargetBucket": String,
"TargetPrefix": String
}
LoggingConfiguration properties
Property | Type | Required | Editable | Description | Constraint |
TargetBucket | String | No | No | The bucket that is used to store access logs. | None. |
TargetPrefix | String | No | No | The name prefix of the saved access log object. | None. |
WebsiteConfiguration syntax
"WebsiteConfiguration":{
"IndexDocument": String,
"ErrorDocument": String
}
WebsiteConfiguration properties
Property | Type | Required | Editable | Description | Constraint |
IndexDocument | String | No | No | The homepage for the hosted static website. | None. |
ErrorDocument | String | No | No | The error page of the hosted static website. | None. |
RefererConfiguration syntax
"RefererConfiguration":{
"AllowEmptyReferer": String,
"RefererList": List
}
RefererConfiguration properties
Property | Type | Required | Editable | Description | Constraint |
AllowEmptyReferer | Boolean | No | No | Specifies whether to allow access requests that include an empty Referer field. | Valid values:
|
RefererList | List | No | No | The Referer whitelist. OSS allows requests whose Referer field values are in the Referer whitelist. | None. |
ServerSideEncryptionConfiguration syntax
"ServerSideEncryptionConfiguration":{
"KMSMasterKeyID": String,
"SSEAlgorithm": String
}
ServerSideEncryptionConfiguration properties
Property | Type | Required | Editable | Description | Constraint |
KMSMasterKeyID | String | No | No | The key ID. | This property is required only when you set SSEAlgorithm to KMS and use a specified key for encryption. |
SSEAlgorithm | String | Yes | No | The default server-side encryption method. | Valid values:
|
VersioningConfiguration syntax
"VersioningConfiguration":{
"Status": String
}
VersioningConfiguration property
Property | Type | Required | Editable | Description | Constraint |
Status | String | Yes | No | The versioning state of the bucket. | Valid values:
|
Return values
Fn::GetAtt
Name: the bucket name, which is globally unique.
DomainName: the public domain name of the bucket.
InternalDomainName: the internal domain name of the bucket.