Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Creación de un flujo de trabajo a partir de una plantilla
Puede implementar una AWS CloudFormation pila que cree un flujo de trabajo y un servidor a partir de una plantilla. Este procedimiento contiene un ejemplo que puede utilizar para implementar rápidamente un flujo de trabajo.
Para crear una AWS CloudFormation pila que cree un AWS Transfer Family flujo de trabajo y un servidor
-
Abre la AWS CloudFormation consola en https://console.aws.amazon.com/cloudformation.
-
Guarde el siguiente código en un archivo.
- YAML
-
AWSTemplateFormatVersion: 2010-09-09
Resources:
SFTPServer:
Type: 'AWS::Transfer::Server'
Properties:
WorkflowDetails:
OnUpload:
- ExecutionRole: workflow-execution-role-arn
WorkflowId: !GetAtt
- TransferWorkflow
- WorkflowId
TransferWorkflow:
Type: AWS::Transfer::Workflow
Properties:
Description: Transfer Family Workflows Blog
Steps:
- Type: COPY
CopyStepDetails:
Name: copyToUserKey
DestinationFileLocation:
S3FileLocation:
Bucket: archived-records
Key: ${transfer:UserName}/
OverwriteExisting: 'TRUE'
- Type: TAG
TagStepDetails:
Name: tagFileForArchive
Tags:
- Key: Archive
Value: yes
- Type: CUSTOM
CustomStepDetails:
Name: transferExtract
Target: arn:aws:lambda:region
:account-id
:function:function-name
TimeoutSeconds: 60
- Type: DELETE
DeleteStepDetails:
Name: DeleteInputFile
SourceFileLocation: '${original.file}'
Tags:
- Key: Name
Value: TransferFamilyWorkflows
- JSON
-
{
"AWSTemplateFormatVersion": "2010-09-09",
"Resources": {
"SFTPServer": {
"Type": "AWS::Transfer::Server",
"Properties": {
"WorkflowDetails": {
"OnUpload": [
{
"ExecutionRole": "workflow-execution-role-arn
",
"WorkflowId": {
"Fn::GetAtt": [
"TransferWorkflow",
"WorkflowId"
]
}
}
]
}
}
},
"TransferWorkflow": {
"Type": "AWS::Transfer::Workflow",
"Properties": {
"Description": "Transfer Family Workflows Blog",
"Steps": [
{
"Type": "COPY",
"CopyStepDetails": {
"Name": "copyToUserKey",
"DestinationFileLocation": {
"S3FileLocation": {
"Bucket": "archived-records",
"Key": "${transfer:UserName}/"
}
},
"OverwriteExisting": "TRUE"
}
},
{
"Type": "TAG",
"TagStepDetails": {
"Name": "tagFileForArchive",
"Tags": [
{
"Key": "Archive",
"Value": "yes"
}
]
}
},
{
"Type": "CUSTOM",
"CustomStepDetails": {
"Name": "transferExtract",
"Target": "arn:aws:lambda:region
:account-id
:function:function-name
",
"TimeoutSeconds": 60
}
},
{
"Type": "DELETE",
"DeleteStepDetails": {
"Name": "DeleteInputFile",
"SourceFileLocation": "${original.file}"
}
}
],
"Tags": [
{
"Key": "Name",
"Value": "TransferFamilyWorkflows"
}
]
}
}
}
}
-
Reemplace los elementos siguientes por sus propios valores.
-
Reemplazar workflow-execution-role-arn
con el ARN para una función de ejecución de flujo de trabajo real. Por ejemplo, arn:aws:transfer:us-east-2:111122223333:workflow/w-1234567890abcdef0
.
-
arn:aws:lambda:region
:account-id
:function:function-name
ARNSustitúyala por la función Lambda. Por ejemplo, arn:aws:lambda:us-east-2:123456789012:function:example-lambda-idp
.
-
Siga las instrucciones para implementar una AWS CloudFormation pila a partir de una plantilla existente en la sección Selección de una plantilla de pila de la Guía del AWS CloudFormation usuario.
Una vez desplegada la pila, puede ver sus detalles en la pestaña Salidas de la CloudFormation consola. La plantilla crea un nuevo AWS Transfer Family SFTP servidor que utiliza usuarios gestionados por el servicio y un nuevo flujo de trabajo, y asocia el flujo de trabajo al nuevo servidor.