Amazon Storage Gateway · Schema
CreateSMBFileShareInput
CreateSMBFileShareInput
BackupFile StorageGatewayHybrid CloudStorage
Properties
| Name | Type | Description |
|---|---|---|
| ClientToken | object | |
| GatewayARN | object | |
| KMSEncrypted | object | |
| KMSKey | object | |
| Role | object | |
| LocationARN | object | |
| DefaultStorageClass | object | |
| ObjectACL | object | |
| ReadOnly | object | |
| GuessMIMETypeEnabled | object | |
| RequesterPays | object | |
| SMBACLEnabled | object | |
| AccessBasedEnumeration | object | |
| AdminUserList | object | |
| ValidUserList | object | |
| InvalidUserList | object | |
| AuditDestinationARN | object | |
| Authentication | object | |
| CaseSensitivity | object | |
| Tags | object | |
| FileShareName | object | |
| CacheAttributes | object | |
| NotificationPolicy | object | |
| VPCEndpointDNSName | object | |
| BucketRegion | object | |
| OplocksEnabled | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-storage-gateway/refs/heads/main/json-schema/amazon-storage-gateway-create-smb-file-share-input-schema.json",
"title": "CreateSMBFileShareInput",
"description": "CreateSMBFileShareInput",
"type": "object",
"properties": {
"ClientToken": {
"allOf": [
{
"$ref": "#/components/schemas/ClientToken"
},
{
"description": "A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation."
}
]
},
"GatewayARN": {
"allOf": [
{
"$ref": "#/components/schemas/GatewayARN"
},
{
"description": "The ARN of the S3 File Gateway on which you want to create a file share."
}
]
},
"KMSEncrypted": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>Set to <code>true</code> to use Amazon S3 server-side encryption with your own KMS key, or <code>false</code> to use a key managed by Amazon S3. Optional.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
},
"KMSKey": {
"allOf": [
{
"$ref": "#/components/schemas/KMSKey"
},
{
"description": "The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when <code>KMSEncrypted</code> is <code>true</code>. Optional."
}
]
},
"Role": {
"allOf": [
{
"$ref": "#/components/schemas/Role"
},
{
"description": "The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the underlying storage."
}
]
},
"LocationARN": {
"allOf": [
{
"$ref": "#/components/schemas/LocationARN"
},
{
"description": "<p>A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an optional prefix concatenation. The prefix must end with a forward slash (/).</p> <note> <p>You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following examples.</p> <p>Bucket ARN:</p> <p> <code>arn:aws:s3:::my-bucket/prefix/</code> </p> <p>Access point ARN:</p> <p> <code>arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/</code> </p> <p>If you specify an access point, the bucket policy must be configured to delegate access control to the access point. For information, see <a href=\"https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-policies.html#access-points-delegating-control\">Delegating access control to access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Access point alias:</p> <p> <code>test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias</code> </p> </note>"
}
]
},
"DefaultStorageClass": {
"allOf": [
{
"$ref": "#/components/schemas/StorageClass"
},
{
"description": "<p>The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is <code>S3_STANDARD</code>. Optional.</p> <p>Valid Values: <code>S3_STANDARD</code> | <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> | <code>S3_ONEZONE_IA</code> </p>"
}
]
},
"ObjectACL": {
"allOf": [
{
"$ref": "#/components/schemas/ObjectACL"
},
{
"description": "A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is <code>private</code>."
}
]
},
"ReadOnly": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>A value that sets the write status of a file share. Set this value to <code>true</code> to set the write status to read-only, otherwise set to <code>false</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
},
"GuessMIMETypeEnabled": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to <code>true</code> to enable MIME type guessing, otherwise set to <code>false</code>. The default value is <code>true</code>.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
},
"RequesterPays": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.</p> <note> <p> <code>RequesterPays</code> is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.</p> </note> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
},
"SMBACLEnabled": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>Set this value to <code>true</code> to enable access control list (ACL) on the SMB file share. Set it to <code>false</code> to map file and directory permissions to the POSIX permissions.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/storagegateway/latest/userguide/smb-acl.html\">Using Microsoft Windows ACLs to control access to an SMB file share</a> in the <i>Storage Gateway User Guide</i>.</p> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
},
"AccessBasedEnumeration": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "The files and folders on this share will only be visible to users with read access."
}
]
},
"AdminUserList": {
"allOf": [
{
"$ref": "#/components/schemas/UserList"
},
{
"description": "<p>A list of users or groups in the Active Directory that will be granted administrator privileges on the file share. These users can do all file operations as the super-user. Acceptable formats include: <code>DOMAIN\\User1</code>, <code>user1</code>, <code>@group1</code>, and <code>@DOMAIN\\group1</code>.</p> <important> <p>Use this option very carefully, because any user in this list can do anything they like on the file share, regardless of file permissions.</p> </important>"
}
]
},
"ValidUserList": {
"allOf": [
{
"$ref": "#/components/schemas/UserList"
},
{
"description": "A list of users or groups in the Active Directory that are allowed to access the file <a href=\"\"/> share. A group must be prefixed with the @ character. Acceptable formats include: <code>DOMAIN\\User1</code>, <code>user1</code>, <code>@group1</code>, and <code>@DOMAIN\\group1</code>. Can only be set if Authentication is set to <code>ActiveDirectory</code>."
}
]
},
"InvalidUserList": {
"allOf": [
{
"$ref": "#/components/schemas/UserList"
},
{
"description": "A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be prefixed with the @ character. Acceptable formats include: <code>DOMAIN\\User1</code>, <code>user1</code>, <code>@group1</code>, and <code>@DOMAIN\\group1</code>. Can only be set if Authentication is set to <code>ActiveDirectory</code>."
}
]
},
"AuditDestinationARN": {
"allOf": [
{
"$ref": "#/components/schemas/AuditDestinationARN"
},
{
"description": "The Amazon Resource Name (ARN) of the storage used for audit logs."
}
]
},
"Authentication": {
"allOf": [
{
"$ref": "#/components/schemas/Authentication"
},
{
"description": "<p>The authentication method that users use to access the file share. The default is <code>ActiveDirectory</code>.</p> <p>Valid Values: <code>ActiveDirectory</code> | <code>GuestAccess</code> </p>"
}
]
},
"CaseSensitivity": {
"allOf": [
{
"$ref": "#/components/schemas/CaseSensitivity"
},
{
"description": "The case of an object name in an Amazon S3 bucket. For <code>ClientSpecified</code>, the client determines the case sensitivity. For <code>CaseSensitive</code>, the gateway determines the case sensitivity. The default value is <code>ClientSpecified</code>."
}
]
},
"Tags": {
"allOf": [
{
"$ref": "#/components/schemas/Tags"
},
{
"description": "<p>A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.</p> <note> <p>Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.</p> </note>"
}
]
},
"FileShareName": {
"allOf": [
{
"$ref": "#/components/schemas/FileShareName"
},
{
"description": "<p>The name of the file share. Optional.</p> <note> <p> <code>FileShareName</code> must be set if an S3 prefix name is set in <code>LocationARN</code>, or if an access point or access point alias is used.</p> </note>"
}
]
},
"CacheAttributes": {
"allOf": [
{
"$ref": "#/components/schemas/CacheAttributes"
},
{
"description": "Specifies refresh cache information for the file share."
}
]
},
"NotificationPolicy": {
"allOf": [
{
"$ref": "#/components/schemas/NotificationPolicy"
},
{
"description": "<p>The notification policy of the file share. <code>SettlingTimeInSeconds</code> controls the number of seconds to wait after the last point in time a client wrote to a file before generating an <code>ObjectUploaded</code> notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.</p> <note> <p> <code>SettlingTimeInSeconds</code> has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.</p> </note> <p>The following example sets <code>NotificationPolicy</code> on with <code>SettlingTimeInSeconds</code> set to 60.</p> <p> <code>{\\\"Upload\\\": {\\\"SettlingTimeInSeconds\\\": 60}}</code> </p> <p>The following example sets <code>NotificationPolicy</code> off.</p> <p> <code>{}</code> </p>"
}
]
},
"VPCEndpointDNSName": {
"allOf": [
{
"$ref": "#/components/schemas/DNSHostName"
},
{
"description": "<p>Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.</p> <note> <p>This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.</p> </note>"
}
]
},
"BucketRegion": {
"allOf": [
{
"$ref": "#/components/schemas/RegionId"
},
{
"description": "<p>Specifies the Region of the S3 bucket where the SMB file share stores files.</p> <note> <p>This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access point, or an access point alias that points to a VPC access point.</p> </note>"
}
]
},
"OplocksEnabled": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "<p>Specifies whether opportunistic locking is enabled for the SMB file share.</p> <note> <p>Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to files with the same name in different case.</p> </note> <p>Valid Values: <code>true</code> | <code>false</code> </p>"
}
]
}
},
"required": [
"ClientToken",
"GatewayARN",
"Role",
"LocationARN"
]
}