View a markdown version of this page

Creación de un flujo de trabajo a partir de una plantilla - AWS Transfer Family

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 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 un CloudFormation pila que crea un AWS Transfer Family flujo de trabajo y servidor
  1. Abra la CloudFormation consola en https://console.aws.amazon.com/cloudformation.

  2. 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" } ] } } } }
  3. Reemplace los elementos siguientes por sus propios valores.

    • Reemplace workflow-execution-role-arn por el ARN de un rol de ejecución de flujo de trabajo real. Por ejemplo, arn:aws:transfer:us-east-2:111122223333:workflow/w-1234567890abcdef0

    • Reemplace arn:aws:lambda:region:account-id:function:function-name por el ARN de la función de Lambda. Por ejemplo, arn:aws:lambda:us-east-2:123456789012:function:example-lambda-idp.

  4. Siga las instrucciones para implementar una CloudFormation pila a partir de una plantilla existente que aparecen en la sección Selección de una plantilla de pila de la Guía del AWS CloudFormation usuario.

Una vez implementada la pila, puede ver los detalles sobre ella en la pestaña Resultados de la CloudFormation consola. La plantilla crea un nuevo servidor AWS Transfer Family SFTP que utiliza usuarios gestionados por el servicio y un nuevo flujo de trabajo, y asocia el flujo de trabajo al nuevo servidor.