location_smbs
Creates, updates, deletes or gets a location_smb resource or lists location_smbs in a region
Overview
| Name | location_smbs |
| Type | Resource |
| Description | Resource schema for AWS::DataSync::LocationSMB. |
| Id | awscc.datasync.location_smbs |
Fields
| Name | Datatype | Description |
|---|---|---|
agent_arns | array | The Amazon Resource Names (ARNs) of agents to use for a Simple Message Block (SMB) location. |
domain | string | The name of the Windows domain that the SMB server belongs to. |
mount_options | object | The mount options used by DataSync to access the SMB server. |
password | string | The password of the user who can mount the share and has the permissions to access files and folders in the SMB share. |
server_hostname | string | The name of the SMB server. This value is the IP address or Domain Name Service (DNS) name of the SMB server. |
subdirectory | string | The subdirectory in the SMB file system that is used to read data from the SMB source location or write data to the SMB destination |
user | string | The user who can mount the share, has the permissions to access files and folders in the SMB share. |
tags | array | An array of key-value pairs to apply to this resource. |
location_arn | string | The Amazon Resource Name (ARN) of the SMB location that is created. |
location_uri | string | The URL of the SMB location that was described. |
authentication_type | string | The authentication mode used to determine identity of user. |
dns_ip_addresses | array | Specifies the IPv4 addresses for the DNS servers that your SMB file server belongs to. This parameter applies only if AuthenticationType is set to KERBEROS. If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right SMB file server. |
kerberos_principal | string | Specifies a service principal name (SPN), which is an identity in your Kerberos realm that has permission to access the files, folders, and file metadata in your SMB file server. SPNs are case sensitive and must include a prepended cifs/. For example, an SPN might look like cifs/kerberosuser@EXAMPLE.COM. Your task execution will fail if the SPN that you provide for this parameter doesn't match exactly what's in your keytab or krb5.conf files. |
kerberos_keytab | string | The Base64 string representation of the Keytab file. Specifies your Kerberos key table (keytab) file, which includes mappings between your service principal name (SPN) and encryption keys. To avoid task execution errors, make sure that the SPN in the keytab file matches exactly what you specify for KerberosPrincipal and in your krb5.conf file. |
kerberos_krb5_conf | string | The string representation of the Krb5Conf file, or the presigned URL to access the Krb5.conf file within an S3 bucket. Specifies a Kerberos configuration file (krb5.conf) that defines your Kerberos realm configuration. To avoid task execution errors, make sure that the service principal name (SPN) in the krb5.conf file matches exactly what you specify for KerberosPrincipal and in your keytab file. |
region | string | AWS region. |
For more information, see AWS::DataSync::LocationSMB.
Methods
| Name | Accessible by | Required Params |
|---|---|---|
create_resource | INSERT | AgentArns, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT examples
Gets all properties from an individual location_smb.
SELECT
region,
agent_arns,
domain,
mount_options,
password,
server_hostname,
subdirectory,
user,
tags,
location_arn,
location_uri,
authentication_type,
dns_ip_addresses,
kerberos_principal,
kerberos_keytab,
kerberos_krb5_conf
FROM awscc.datasync.location_smbs
WHERE region = 'us-east-1' AND data__Identifier = '<LocationArn>';
INSERT example
Use the following StackQL query and manifest file to create a new location_smb resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.datasync.location_smbs (
AgentArns,
region
)
SELECT
'{{ AgentArns }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.datasync.location_smbs (
AgentArns,
Domain,
MountOptions,
Password,
ServerHostname,
Subdirectory,
User,
Tags,
AuthenticationType,
DnsIpAddresses,
KerberosPrincipal,
KerberosKeytab,
KerberosKrb5Conf,
region
)
SELECT
'{{ AgentArns }}',
'{{ Domain }}',
'{{ MountOptions }}',
'{{ Password }}',
'{{ ServerHostname }}',
'{{ Subdirectory }}',
'{{ User }}',
'{{ Tags }}',
'{{ AuthenticationType }}',
'{{ DnsIpAddresses }}',
'{{ KerberosPrincipal }}',
'{{ KerberosKeytab }}',
'{{ KerberosKrb5Conf }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: location_smb
props:
- name: AgentArns
value:
- '{{ AgentArns[0] }}'
- name: Domain
value: '{{ Domain }}'
- name: MountOptions
value:
Version: '{{ Version }}'
- name: Password
value: '{{ Password }}'
- name: ServerHostname
value: '{{ ServerHostname }}'
- name: Subdirectory
value: '{{ Subdirectory }}'
- name: User
value: '{{ User }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
- name: AuthenticationType
value: '{{ AuthenticationType }}'
- name: DnsIpAddresses
value:
- '{{ DnsIpAddresses[0] }}'
- name: KerberosPrincipal
value: '{{ KerberosPrincipal }}'
- name: KerberosKeytab
value: '{{ KerberosKeytab }}'
- name: KerberosKrb5Conf
value: '{{ KerberosKrb5Conf }}'
DELETE example
/*+ delete */
DELETE FROM awscc.datasync.location_smbs
WHERE data__Identifier = '<LocationArn>'
AND region = 'us-east-1';
Permissions
To operate on the location_smbs resource, the following permissions are required:
Create
datasync:CreateLocationSmb,
datasync:DescribeLocationSmb,
datasync:ListTagsForResource,
datasync:TagResource
Read
datasync:DescribeLocationSmb,
datasync:ListTagsForResource
Update
datasync:DescribeLocationSmb,
datasync:ListTagsForResource,
datasync:TagResource,
datasync:UntagResource,
datasync:UpdateLocationSmb
Delete
datasync:DeleteLocation
List
datasync:ListLocations