Amazon Storage Gateway · JSON Structure
Amazon Storage Gateway Update Smb File Share Input Structure
UpdateSMBFileShareInput
Type: object
Properties: 19
Required: 1
BackupFile StorageGatewayHybrid CloudStorage
UpdateSMBFileShareInput is a JSON Structure definition published by Amazon Storage Gateway, describing 19 properties, of which 1 is required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
FileShareARN
KMSEncrypted
KMSKey
DefaultStorageClass
ObjectACL
ReadOnly
GuessMIMETypeEnabled
RequesterPays
SMBACLEnabled
AccessBasedEnumeration
AdminUserList
ValidUserList
InvalidUserList
AuditDestinationARN
CaseSensitivity
FileShareName
CacheAttributes
NotificationPolicy
OplocksEnabled
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"type": "object",
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-storage-gateway/refs/heads/main/json-structure/amazon-storage-gateway-update-smb-file-share-input-structure.json",
"name": "UpdateSMBFileShareInput",
"description": "UpdateSMBFileShareInput",
"properties": {
"FileShareARN": {
"allOf": [
{
"$ref": "#/components/schemas/FileShareARN"
},
{
"description": "The Amazon Resource Name (ARN) of the SMB file share that you want to update."
}
]
},
"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."
}
]
},
"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 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": "A list of users or groups in the Active Directory that have administrator rights to 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>."
}
]
},
"ValidUserList": {
"allOf": [
{
"$ref": "#/components/schemas/UserList"
},
{
"description": "A list of users or groups in the Active Directory that are 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>."
}
]
},
"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."
}
]
},
"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>."
}
]
},
"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>"
}
]
},
"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": [
"FileShareARN"
]
}