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

Raw ↑
{
  "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"
  ]
}