Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Creare un flusso di lavoro a partire da un modello
È possibile distribuire uno CloudFormation stack che crea un flusso di lavoro e un server a partire da un modello. Questa procedura contiene un esempio che è possibile utilizzare per distribuire rapidamente un flusso di lavoro.
Per creare uno CloudFormation stack che crei un AWS Transfer Family flusso di lavoro e un server
-
Apri la CloudFormation console in https://console.aws.amazon.com/cloudformation.
-
Salva il codice seguente in un file.
- 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"
}
]
}
}
}
}
-
Sostituisci i seguenti elementi con i tuoi valori effettivi.
-
Sostituire workflow-execution-role-arn con l'ARN del ruolo di esecuzione del flusso di lavoro effettivo. Ad esempio, arn:aws:transfer:us-east-2:111122223333:workflow/w-1234567890abcdef0
-
Sostituisci arn:aws:lambda:region:account-id:function:function-name con l'ARN per la tua funzione Lambda. Ad esempio, arn:aws:lambda:us-east-2:123456789012:function:example-lambda-idp.
-
Segui le istruzioni per distribuire uno CloudFormation stack da un modello esistente in Selezione di un modello di stack nella Guida per l'utente.AWS CloudFormation
Dopo che lo stack è stato distribuito, puoi visualizzarne i dettagli nella scheda Output della console. CloudFormation Il modello crea un nuovo server AWS Transfer Family SFTP che utilizza utenti gestiti dal servizio e un nuovo flusso di lavoro e associa il flusso di lavoro al nuovo server.