Skip to content

ApplicationEntitlementAssociation ​

The ApplicationEntitlementAssociation resource allows you to manage the association between applications and entitlements in AWS AppStream. This resource helps in controlling user access to applications based on their entitlements. For more information, visit the AWS AppStream ApplicationEntitlementAssociations documentation.

Minimal Example ​

Create a basic ApplicationEntitlementAssociation that associates an application with an entitlement.

ts
import AWS from "alchemy/aws/control";

const appEntitlementAssociation = await AWS.AppStream.ApplicationEntitlementAssociation("appEntitlementAssociation1", {
  EntitlementName: "FinanceAppEntitlement",
  ApplicationIdentifier: "FinanceApp",
  StackName: "FinanceStack",
  adopt: true // Set to true to adopt existing resources if they exist
});

Advanced Configuration ​

This example demonstrates how to create an ApplicationEntitlementAssociation with additional properties, focusing on entitlement management in a more complex environment.

ts
const advancedAppEntitlementAssociation = await AWS.AppStream.ApplicationEntitlementAssociation("advancedAppEntitlementAssociation", {
  EntitlementName: "AdvancedEntitlement",
  ApplicationIdentifier: "AdvancedApp",
  StackName: "AdvancedStack",
  adopt: false // Default is false; it will fail if the resource already exists
});

Use Case: Updating Existing Association ​

This example shows updating an existing ApplicationEntitlementAssociation by specifying the same identifiers.

ts
const updateAppEntitlementAssociation = await AWS.AppStream.ApplicationEntitlementAssociation("updateAppEntitlementAssociation", {
  EntitlementName: "UpdatedEntitlement",
  ApplicationIdentifier: "UpdatedApp",
  StackName: "UpdatedStack",
  adopt: true // Adopt existing association if it exists
});

Use Case: Managing Multiple Associations ​

This example illustrates how to manage multiple ApplicationEntitlementAssociations for different applications within the same stack.

ts
const firstAssociation = await AWS.AppStream.ApplicationEntitlementAssociation("firstAssociation", {
  EntitlementName: "FirstAppEntitlement",
  ApplicationIdentifier: "FirstApp",
  StackName: "CommonStack"
});

const secondAssociation = await AWS.AppStream.ApplicationEntitlementAssociation("secondAssociation", {
  EntitlementName: "SecondAppEntitlement",
  ApplicationIdentifier: "SecondApp",
  StackName: "CommonStack"
});