Skip to content
GitHubXDiscord

Profile

The Profile resource lets you manage AWS Transfer Profiles to facilitate secure file transfers using AWS Transfer Family.

Create a basic AWS Transfer Profile with required properties and one optional property:

import AWS from "alchemy/aws/control";
const transferProfile = await AWS.Transfer.Profile("basicProfile", {
As2Id: "my-as2-id",
ProfileType: "AS2",
CertificateIds: ["cert-1234abcd"]
});

Configure a transfer profile with additional optional settings such as tags:

const advancedProfile = await AWS.Transfer.Profile("advancedProfile", {
As2Id: "my-advanced-as2-id",
ProfileType: "AS2",
CertificateIds: ["cert-5678efgh"],
Tags: [
{ Key: "Environment", Value: "Production" },
{ Key: "Department", Value: "Finance" }
]
});

Create a transfer profile that adopts an existing resource instead of failing if it already exists:

const adoptedProfile = await AWS.Transfer.Profile("adoptedProfile", {
As2Id: "existing-as2-id",
ProfileType: "AS2",
adopt: true
});

Create a transfer profile while also capturing its ARN and timestamps for auditing:

const metadataProfile = await AWS.Transfer.Profile("metadataProfile", {
As2Id: "my-metadata-as2-id",
ProfileType: "AS2",
CertificateIds: ["cert-9101ijkl"]
});
// Accessing additional metadata
console.log(`Profile ARN: ${metadataProfile.Arn}`);
console.log(`Creation Time: ${metadataProfile.CreationTime}`);
console.log(`Last Update Time: ${metadataProfile.LastUpdateTime}`);