

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::DataSync::LocationFSxONTAP
<a name="aws-resource-datasync-locationfsxontap"></a>

The `AWS::DataSync::LocationFSxONTAP` resource creates an endpoint for an Amazon FSx for NetApp ONTAP file system. AWS DataSync can access this endpoint as a source or destination location.

## Syntax
<a name="aws-resource-datasync-locationfsxontap-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-datasync-locationfsxontap-syntax.json"></a>

```
{
  "Type" : "AWS::DataSync::LocationFSxONTAP",
  "Properties" : {
      "[Protocol](#cfn-datasync-locationfsxontap-protocol)" : Protocol,
      "[SecurityGroupArns](#cfn-datasync-locationfsxontap-securitygrouparns)" : [ String, ... ],
      "[StorageVirtualMachineArn](#cfn-datasync-locationfsxontap-storagevirtualmachinearn)" : String,
      "[Subdirectory](#cfn-datasync-locationfsxontap-subdirectory)" : String,
      "[Tags](#cfn-datasync-locationfsxontap-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-datasync-locationfsxontap-syntax.yaml"></a>

```
Type: AWS::DataSync::LocationFSxONTAP
Properties:
  [Protocol](#cfn-datasync-locationfsxontap-protocol): 
    Protocol
  [SecurityGroupArns](#cfn-datasync-locationfsxontap-securitygrouparns): 
    - String
  [StorageVirtualMachineArn](#cfn-datasync-locationfsxontap-storagevirtualmachinearn): String
  [Subdirectory](#cfn-datasync-locationfsxontap-subdirectory): String
  [Tags](#cfn-datasync-locationfsxontap-tags): 
    - Tag
```

## Properties
<a name="aws-resource-datasync-locationfsxontap-properties"></a>

`Protocol`  <a name="cfn-datasync-locationfsxontap-protocol"></a>
Specifies the data transfer protocol that DataSync uses to access your Amazon FSx file system.  
*Required*: No  
*Type*: [Protocol](aws-properties-datasync-locationfsxontap-protocol.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecurityGroupArns`  <a name="cfn-datasync-locationfsxontap-securitygrouparns"></a>
Specifies the Amazon Resource Names (ARNs) of the security groups that DataSync can use to access your FSx for ONTAP file system. You must configure the security groups to allow outbound traffic on the following ports (depending on the protocol that you're using):  
+ **Network File System (NFS)**: TCP ports 111, 635, and 2049
+ **Server Message Block (SMB)**: TCP port 445
Your file system's security groups must also allow inbound traffic on the same port.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `128 | 5`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StorageVirtualMachineArn`  <a name="cfn-datasync-locationfsxontap-storagevirtualmachinearn"></a>
Specifies the ARN of the storage virtual machine (SVM) in your file system where you want to copy data to or from.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):fsx:[a-z\-0-9]+:[0-9]{12}:storage-virtual-machine/fs-[0-9a-f]+/svm-[0-9a-f]{17,}$`  
*Maximum*: `162`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Subdirectory`  <a name="cfn-datasync-locationfsxontap-subdirectory"></a>
Specifies a path to the file share in the SVM where you want to transfer data to or from.  
You can specify a junction path (also known as a mount point), qtree path (for NFS file shares), or share name (for SMB file shares). For example, your mount path might be `/vol1`, `/vol1/tree1`, or `/share1`.  
Don't specify a junction path in the SVM's root volume. For more information, see [Managing FSx for ONTAP storage virtual machines](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html) in the *Amazon FSx for NetApp ONTAP User Guide*.
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-\+\./\(\)\$\p{Zs}]+$`  
*Maximum*: `4096`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-datasync-locationfsxontap-tags"></a>
Specifies labels that help you categorize, filter, and search for your AWS resources. We recommend creating at least a name tag for your location.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-datasync-locationfsxontap-tag.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-datasync-locationfsxontap-return-values"></a>

### Ref
<a name="aws-resource-datasync-locationfsxontap-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the location resource ARN. For example:

 `arn:aws:datasync:us-east-2:111222333444:location/loc-07db7abfc326c50s3` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-datasync-locationfsxontap-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-datasync-locationfsxontap-return-values-fn--getatt-fn--getatt"></a>

`FsxFilesystemArn`  <a name="FsxFilesystemArn-fn::getatt"></a>
The ARN of the FSx for ONTAP file system in the specified location.

`LocationArn`  <a name="LocationArn-fn::getatt"></a>
The ARN of the specified location.

`LocationUri`  <a name="LocationUri-fn::getatt"></a>
The URI of the specified location.

`Protocol.SMB.CmkSecretConfig.SecretArn`  <a name="Protocol.SMB.CmkSecretConfig.SecretArn-fn::getatt"></a>
Property description not available.

## Examples
<a name="aws-resource-datasync-locationfsxontap--examples"></a>

**Topics**
+ [Creating an FSx for ONTAP location with NFS access](#aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_NFS_access)
+ [Creating an FSx for ONTAP location with SMB access](#aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_SMB_access)

### Creating an FSx for ONTAP location with NFS access
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_NFS_access"></a>

The following example creates a location for an FSx for ONTAP file system that DataSync can access using NFS.

#### JSON
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_NFS_access--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "Specifies a location for an Amazon FSx for ONTAP file system that DataSync can access using NFS.",
    "Resources": {
        "LocationFSxONTAP": {
            "Type": "AWS::DataSync::LocationFSxONTAP",
            "Properties": {
                "Protocol": {
                    "NFS": {
                        "MountOptions": {
                            "Version": "NFS3"
                        }
                    }
                },
                "SecurityGroupArns": [
                    "arn:aws:ec2:us-east-2:11122233344:security-group/sg-1234567890abcdef2"
                ],
                "StorageVirtualMachineArn": "arn:aws:fsx:us-east-1:11122233344:storage-virtual-machine/fs-abcdef01234567890/svm-021345abcdef6789",
                "Subdirectory": "/vol1"
            }
        }
    }
}
```

#### YAML
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_NFS_access--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: Specifies a location for an Amazon FSx for ONTAP file system that DataSync can access using NFS.
Resources:
  LocationFSxONTAP:
    Type: AWS::DataSync::LocationFSxONTAP
      Properties:
        Protocol:
          NFS:
            MountOptions:
              Version: NFS3
        SecurityGroupArns: 
          - arn:aws:ec2:us-east-2:11122233344:security-group/sg-1234567890abcdef2
        StorageVirtualMachineArn: arn:aws:fsx:us-east-1:11122233344:storage-virtual-machine/fs-abcdef01234567890/svm-021345abcdef6789
        Subdirectory: /vol1
```

### Creating an FSx for ONTAP location with SMB access
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_SMB_access"></a>

The following example creates a location for an FSx for ONTAP file system that DataSync can access using SMB.

#### JSON
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_SMB_access--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "Specifies a location for an Amazon FSx for ONTAP file system that DataSync can access using SMB.",
    "Resources": {
        "LocationFSxONTAP": {
            "Type": "AWS::DataSync::LocationFSxONTAP",
            "Properties": {
                "Protocol": {
                    "SMB": {
                        "Domain": "example.company",
                        "MountOptions": {
                            "Version": "AUTOMATIC"
                        },
                        "Password": "examplepassword",
                        "User": "exampleusername"
                    }
                },
                "SecurityGroupArns": [
                    "arn:aws:ec2:us-east-2:11122233344:security-group/sg-1234567890abcdef2"
                ],
                "StorageVirtualMachineArn": "arn:aws:fsx:us-east-1:11122233344:storage-virtual-machine/fs-abcdef01234567890/svm-021345abcdef6789",
                "Subdirectory": "/vol1"
            }
        }
    }
}
```

#### YAML
<a name="aws-resource-datasync-locationfsxontap--examples--Creating_an_FSx_for_ONTAP_location_with_SMB_access--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: Specifies a location for an Amazon FSx for ONTAP file system that DataSync can access using SMB.
Resources:
  LocationFSxONTAP:
    Type: AWS::DataSync::LocationFSxONTAP
      Properties: 
        Protocol:
          SMB:
            Domain: example.company
            MountOptions:
              Version: AUTOMATIC
            Password: examplepassword
            User: exampleusername
        SecurityGroupArns: 
          - arn:aws:ec2:us-east-2:11122233344:security-group/sg-1234567890abcdef2
        StorageVirtualMachineArn: arn:aws:fsx:us-east-1:11122233344:storage-virtual-machine/fs-abcdef01234567890/svm-021345abcdef6789
        Subdirectory: /vol1
```

# AWS::DataSync::LocationFSxONTAP CmkSecretConfig
<a name="aws-properties-datasync-locationfsxontap-cmksecretconfig"></a>

Specifies configuration information for a DataSync-managed secret, such as an authentication token, secret key, password, or Kerberos keytab that DataSync uses to access a specific storage location, with a customer-managed AWS KMS key.

**Note**  
You can use either `CmkSecretConfig` or `CustomSecretConfig` to provide credentials for a `CreateLocation` request. Do not provide both parameters for the same request.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-cmksecretconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-cmksecretconfig-syntax.json"></a>

```
{
  "[KmsKeyArn](#cfn-datasync-locationfsxontap-cmksecretconfig-kmskeyarn)" : String,
  "[SecretArn](#cfn-datasync-locationfsxontap-cmksecretconfig-secretarn)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-cmksecretconfig-syntax.yaml"></a>

```
  [KmsKeyArn](#cfn-datasync-locationfsxontap-cmksecretconfig-kmskeyarn): String
  [SecretArn](#cfn-datasync-locationfsxontap-cmksecretconfig-secretarn): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-cmksecretconfig-properties"></a>

`KmsKeyArn`  <a name="cfn-datasync-locationfsxontap-cmksecretconfig-kmskeyarn"></a>
Specifies the ARN for the customer-managed AWS KMS key that DataSync uses to encrypt the DataSync-managed secret stored for `SecretArn`. DataSync provides this key to AWS Secrets Manager.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):kms:[a-z-0-9]+:[0-9]{12}:key/.*|)$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-datasync-locationfsxontap-cmksecretconfig-secretarn"></a>
Specifies the ARN for the DataSync-managed AWS Secrets Manager secret that that is used to access a specific storage location. This property is generated by DataSync and is read-only. DataSync encrypts this secret with the KMS key that you specify for `KmsKeyArn`.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):secretsmanager:[a-z-0-9]+:[0-9]{12}:secret:.*|)$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP CustomSecretConfig
<a name="aws-properties-datasync-locationfsxontap-customsecretconfig"></a>

Specifies configuration information for a customer-managed Secrets Manager secret where a storage location credentials is stored in Secrets Manager as plain text (for authentication token, secret key, or password) or as binary (for Kerberos keytab). This configuration includes the secret ARN, and the ARN for an IAM role that provides access to the secret.

**Note**  
You can use either `CmkSecretConfig` or `CustomSecretConfig` to provide credentials for a `CreateLocation` request. Do not provide both parameters for the same request.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-customsecretconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-customsecretconfig-syntax.json"></a>

```
{
  "[SecretAccessRoleArn](#cfn-datasync-locationfsxontap-customsecretconfig-secretaccessrolearn)" : String,
  "[SecretArn](#cfn-datasync-locationfsxontap-customsecretconfig-secretarn)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-customsecretconfig-syntax.yaml"></a>

```
  [SecretAccessRoleArn](#cfn-datasync-locationfsxontap-customsecretconfig-secretaccessrolearn): String
  [SecretArn](#cfn-datasync-locationfsxontap-customsecretconfig-secretarn): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-customsecretconfig-properties"></a>

`SecretAccessRoleArn`  <a name="cfn-datasync-locationfsxontap-customsecretconfig-secretaccessrolearn"></a>
Specifies the ARN for the AWS Identity and Access Management role that DataSync uses to access the secret specified for `SecretArn`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):iam::[0-9]{12}:role/.*|)$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecretArn`  <a name="cfn-datasync-locationfsxontap-customsecretconfig-secretarn"></a>
Specifies the ARN for an AWS Secrets Manager secret.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):secretsmanager:[a-z-0-9]+:[0-9]{12}:secret:.*|)$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP ManagedSecretConfig
<a name="aws-properties-datasync-locationfsxontap-managedsecretconfig"></a>

Specifies configuration information for a DataSync-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location. DataSync uses the default AWS-managed KMS key to encrypt this secret in AWS Secrets Manager.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-managedsecretconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-managedsecretconfig-syntax.json"></a>

```
{
  "[SecretArn](#cfn-datasync-locationfsxontap-managedsecretconfig-secretarn)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-managedsecretconfig-syntax.yaml"></a>

```
  [SecretArn](#cfn-datasync-locationfsxontap-managedsecretconfig-secretarn): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-managedsecretconfig-properties"></a>

`SecretArn`  <a name="cfn-datasync-locationfsxontap-managedsecretconfig-secretarn"></a>
Specifies the ARN for an AWS Secrets Manager secret.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):secretsmanager:[a-z-0-9]+:[0-9]{12}:secret:.*|)$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP NFS
<a name="aws-properties-datasync-locationfsxontap-nfs"></a>

Specifies the Network File System (NFS) protocol configuration that AWS DataSync uses to access a storage virtual machine (SVM) on your Amazon FSx for NetApp ONTAP file system. For more information, see [Accessing FSx for ONTAP file systems](https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-access).

## Syntax
<a name="aws-properties-datasync-locationfsxontap-nfs-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-nfs-syntax.json"></a>

```
{
  "[MountOptions](#cfn-datasync-locationfsxontap-nfs-mountoptions)" : NfsMountOptions
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-nfs-syntax.yaml"></a>

```
  [MountOptions](#cfn-datasync-locationfsxontap-nfs-mountoptions): 
    NfsMountOptions
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-nfs-properties"></a>

`MountOptions`  <a name="cfn-datasync-locationfsxontap-nfs-mountoptions"></a>
Specifies how DataSync can access a location using the NFS protocol.  
*Required*: Yes  
*Type*: [NfsMountOptions](aws-properties-datasync-locationfsxontap-nfsmountoptions.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP NfsMountOptions
<a name="aws-properties-datasync-locationfsxontap-nfsmountoptions"></a>

Specifies how DataSync can access a location using the NFS protocol.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-nfsmountoptions-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-nfsmountoptions-syntax.json"></a>

```
{
  "[Version](#cfn-datasync-locationfsxontap-nfsmountoptions-version)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-nfsmountoptions-syntax.yaml"></a>

```
  [Version](#cfn-datasync-locationfsxontap-nfsmountoptions-version): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-nfsmountoptions-properties"></a>

`Version`  <a name="cfn-datasync-locationfsxontap-nfsmountoptions-version"></a>
Specifies the NFS version that you want DataSync to use when mounting your NFS share. If the server refuses to use the version specified, the task fails.  
You can specify the following options:  
+ `AUTOMATIC` (default): DataSync chooses NFS version 4.1.
+ `NFS3`: Stateless protocol version that allows for asynchronous writes on the server.
+ `NFSv4_0`: Stateful, firewall-friendly protocol version that supports delegations and pseudo file systems.
+ `NFSv4_1`: Stateful protocol version that supports sessions, directory delegations, and parallel data processing. NFS version 4.1 also includes all features available in version 4.0.
DataSync currently only supports NFS version 3 with Amazon FSx for NetApp ONTAP locations.
*Required*: No  
*Type*: String  
*Allowed values*: `AUTOMATIC | NFS3 | NFS4_0 | NFS4_1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP Protocol
<a name="aws-properties-datasync-locationfsxontap-protocol"></a>

Specifies the data transfer protocol that AWS DataSync uses to access your Amazon FSx file system.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-protocol-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-protocol-syntax.json"></a>

```
{
  "[NFS](#cfn-datasync-locationfsxontap-protocol-nfs)" : NFS,
  "[SMB](#cfn-datasync-locationfsxontap-protocol-smb)" : SMB
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-protocol-syntax.yaml"></a>

```
  [NFS](#cfn-datasync-locationfsxontap-protocol-nfs): 
    NFS
  [SMB](#cfn-datasync-locationfsxontap-protocol-smb): 
    SMB
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-protocol-properties"></a>

`NFS`  <a name="cfn-datasync-locationfsxontap-protocol-nfs"></a>
Specifies the Network File System (NFS) protocol configuration that DataSync uses to access your FSx for ONTAP file system's storage virtual machine (SVM).  
*Required*: No  
*Type*: [NFS](aws-properties-datasync-locationfsxontap-nfs.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SMB`  <a name="cfn-datasync-locationfsxontap-protocol-smb"></a>
Specifies the Server Message Block (SMB) protocol configuration that DataSync uses to access your FSx for ONTAP file system's SVM.  
*Required*: No  
*Type*: [SMB](aws-properties-datasync-locationfsxontap-smb.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP SMB
<a name="aws-properties-datasync-locationfsxontap-smb"></a>

Specifies the Server Message Block (SMB) protocol configuration that AWS DataSync uses to access a storage virtual machine (SVM) on your Amazon FSx for NetApp ONTAP file system. For more information, see [Accessing FSx for ONTAP file systems](https://docs.aws.amazon.com/datasync/latest/userguide/create-ontap-location.html#create-ontap-location-access).

## Syntax
<a name="aws-properties-datasync-locationfsxontap-smb-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-smb-syntax.json"></a>

```
{
  "[CmkSecretConfig](#cfn-datasync-locationfsxontap-smb-cmksecretconfig)" : CmkSecretConfig,
  "[CustomSecretConfig](#cfn-datasync-locationfsxontap-smb-customsecretconfig)" : CustomSecretConfig,
  "[Domain](#cfn-datasync-locationfsxontap-smb-domain)" : String,
  "[ManagedSecretConfig](#cfn-datasync-locationfsxontap-smb-managedsecretconfig)" : ManagedSecretConfig,
  "[MountOptions](#cfn-datasync-locationfsxontap-smb-mountoptions)" : SmbMountOptions,
  "[Password](#cfn-datasync-locationfsxontap-smb-password)" : String,
  "[User](#cfn-datasync-locationfsxontap-smb-user)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-smb-syntax.yaml"></a>

```
  [CmkSecretConfig](#cfn-datasync-locationfsxontap-smb-cmksecretconfig): 
    CmkSecretConfig
  [CustomSecretConfig](#cfn-datasync-locationfsxontap-smb-customsecretconfig): 
    CustomSecretConfig
  [Domain](#cfn-datasync-locationfsxontap-smb-domain): String
  [ManagedSecretConfig](#cfn-datasync-locationfsxontap-smb-managedsecretconfig): 
    ManagedSecretConfig
  [MountOptions](#cfn-datasync-locationfsxontap-smb-mountoptions): 
    SmbMountOptions
  [Password](#cfn-datasync-locationfsxontap-smb-password): String
  [User](#cfn-datasync-locationfsxontap-smb-user): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-smb-properties"></a>

`CmkSecretConfig`  <a name="cfn-datasync-locationfsxontap-smb-cmksecretconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [CmkSecretConfig](aws-properties-datasync-locationfsxontap-cmksecretconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CustomSecretConfig`  <a name="cfn-datasync-locationfsxontap-smb-customsecretconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [CustomSecretConfig](aws-properties-datasync-locationfsxontap-customsecretconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Domain`  <a name="cfn-datasync-locationfsxontap-smb-domain"></a>
Specifies the name of the Windows domain that your storage virtual machine (SVM) belongs to.  
If you have multiple domains in your environment, configuring this setting makes sure that DataSync connects to the right SVM.  
If you have multiple Active Directory domains in your environment, configuring this parameter makes sure that DataSync connects to the right SVM.  
*Required*: No  
*Type*: String  
*Pattern*: `^([A-Za-z0-9]+[A-Za-z0-9-.]*)*[A-Za-z0-9-]*[A-Za-z0-9]$`  
*Maximum*: `253`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ManagedSecretConfig`  <a name="cfn-datasync-locationfsxontap-smb-managedsecretconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [ManagedSecretConfig](aws-properties-datasync-locationfsxontap-managedsecretconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MountOptions`  <a name="cfn-datasync-locationfsxontap-smb-mountoptions"></a>
Specifies how DataSync can access a location using the SMB protocol.  
*Required*: Yes  
*Type*: [SmbMountOptions](aws-properties-datasync-locationfsxontap-smbmountoptions.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Password`  <a name="cfn-datasync-locationfsxontap-smb-password"></a>
Specifies the password of a user who has permission to access your SVM.  
*Required*: No  
*Type*: String  
*Pattern*: `^.{0,104}$`  
*Maximum*: `104`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`User`  <a name="cfn-datasync-locationfsxontap-smb-user"></a>
Specifies a user name that can mount the location and access the files, folders, and metadata that you need in the SVM.  
If you provide a user in your Active Directory, note the following:  
+ If you're using AWS Directory Service for Microsoft Active Directory, the user must be a member of the AWS Delegated FSx Administrators group.
+  If you're using a self-managed Active Directory, the user must be a member of either the Domain Admins group or a custom group that you specified for file system administration when you created your file system.
Make sure that the user has the permissions it needs to copy the data you want:  
+ `SE_TCB_NAME`: Required to set object ownership and file metadata. With this privilege, you also can copy NTFS discretionary access lists (DACLs).
+ `SE_SECURITY_NAME`: May be needed to copy NTFS system access control lists (SACLs). This operation specifically requires the Windows privilege, which is granted to members of the Domain Admins group. If you configure your task to copy SACLs, make sure that the user has the required privileges. For information about copying SACLs, see [Ownership and permissions-related options](https://docs.aws.amazon.com/datasync/latest/userguide/create-task.html#configure-ownership-and-permissions).
*Required*: Yes  
*Type*: String  
*Pattern*: `^[^\x5B\x5D\\/:;|=,+*?]{1,104}$`  
*Maximum*: `104`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP SmbMountOptions
<a name="aws-properties-datasync-locationfsxontap-smbmountoptions"></a>

Specifies the version of the Server Message Block (SMB) protocol that AWS DataSync uses to access an SMB file server.

## Syntax
<a name="aws-properties-datasync-locationfsxontap-smbmountoptions-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-smbmountoptions-syntax.json"></a>

```
{
  "[Version](#cfn-datasync-locationfsxontap-smbmountoptions-version)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-smbmountoptions-syntax.yaml"></a>

```
  [Version](#cfn-datasync-locationfsxontap-smbmountoptions-version): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-smbmountoptions-properties"></a>

`Version`  <a name="cfn-datasync-locationfsxontap-smbmountoptions-version"></a>
By default, DataSync automatically chooses an SMB protocol version based on negotiation with your SMB file server. You also can configure DataSync to use a specific SMB version, but we recommend doing this only if DataSync has trouble negotiating with the SMB file server automatically.  
These are the following options for configuring the SMB version:  
+ `AUTOMATIC` (default): DataSync and the SMB file server negotiate the highest version of SMB that they mutually support between 2.1 and 3.1.1.

  This is the recommended option. If you instead choose a specific version that your file server doesn't support, you may get an `Operation Not Supported` error.
+ `SMB3`: Restricts the protocol negotiation to only SMB version 3.0.2.
+ `SMB2`: Restricts the protocol negotiation to only SMB version 2.1.
+ `SMB2_0`: Restricts the protocol negotiation to only SMB version 2.0.
+ `SMB1`: Restricts the protocol negotiation to only SMB version 1.0.
**Note**  
The `SMB1` option isn't available when [creating an Amazon FSx for NetApp ONTAP location](https://docs.aws.amazon.com/datasync/latest/userguide/API_CreateLocationFsxOntap.html).
*Required*: No  
*Type*: String  
*Allowed values*: `AUTOMATIC | SMB2 | SMB3`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataSync::LocationFSxONTAP Tag
<a name="aws-properties-datasync-locationfsxontap-tag"></a>

<a name="aws-properties-datasync-locationfsxontap-tag-description"></a>The `Tag` property type specifies Property description not available. for an [AWS::DataSync::LocationFSxONTAP](aws-resource-datasync-locationfsxontap.md).

## Syntax
<a name="aws-properties-datasync-locationfsxontap-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-datasync-locationfsxontap-tag-syntax.json"></a>

```
{
  "[Key](#cfn-datasync-locationfsxontap-tag-key)" : String,
  "[Value](#cfn-datasync-locationfsxontap-tag-value)" : String
}
```

### YAML
<a name="aws-properties-datasync-locationfsxontap-tag-syntax.yaml"></a>

```
  [Key](#cfn-datasync-locationfsxontap-tag-key): String
  [Value](#cfn-datasync-locationfsxontap-tag-value): String
```

## Properties
<a name="aws-properties-datasync-locationfsxontap-tag-properties"></a>

`Key`  <a name="cfn-datasync-locationfsxontap-tag-key"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s+=._:/-]+$`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-datasync-locationfsxontap-tag-value"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s+=._:@/-]+$`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)