AWS Fundamentals Logo
AWS Fundamentals
L1 ConstructAWS::AppConfig::ConfigurationProfile

CfnConfigurationProfile

The `AWS::AppConfig::ConfigurationProfile` resource creates a configuration profile that enables AWS AppConfig to access the configuration source. Valid configuration sources include AWS Systems Manager (SSM) documents, SSM Parameter Store parameters, and Amazon S3 . A configuration profile includes the following information. - The Uri location of the configuration data. - The AWS Identity and Access Management ( IAM ) role that provides access to the configuration data. - A validator for the configuration data. Available validators include either a JSON Schema or the Amazon Resource Name (ARN) of an AWS Lambda function. AWS AppConfig requires that you create resources and deploy a configuration in the following order: - Create an application - Create an environment - Create a configuration profile - Choose a pre-defined deployment strategy or create your own - Deploy the configuration For more information, see [AWS AppConfig](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html) in the *AWS AppConfig User Guide* .

Import

import { CfnConfigurationProfile } from 'aws-cdk-lib/aws-appconfig';

Or use the module namespace:

import * as appconfig from 'aws-cdk-lib/aws-appconfig';
// appconfig.CfnConfigurationProfile

Properties

Configuration passed to the constructor as CfnConfigurationProfileProps.

applicationIdRequired
string | IApplicationRef

The application ID.

locationUriRequired
string

A URI to locate the configuration. You can specify the following:. - For the AWS AppConfig hosted configuration store and for feature flags, specify `hosted` . - For an AWS Systems Manager Parameter Store parameter, specify either the parameter name in the format `ssm-parameter://<parameter name>` or the ARN. - For an AWS CodePipeline pipeline, specify the URI in the following format: `codepipeline` ://<pipeline name>. - For an AWS Secrets Manager secret, specify the URI in the following format: `secretsmanager` ://<secret name>. - For an Amazon S3 object, specify the URI in the following format: `s3://<bucket>/<objectKey>` . Here is an example: `s3://amzn-s3-demo-bucket/my-app/us-east-1/my-config.json` - For an SSM document, specify either the document name in the format `ssm-document://<document name>` or the Amazon Resource Name (ARN).

nameRequired
string

A name for the configuration profile.

deletionProtectionCheckOptional
string

A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either [GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) or [GetConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_GetConfiguration.html) for the configuration profile during the specified interval. This parameter supports the following values: - `BYPASS` : Instructs AWS AppConfig to bypass the deletion protection check and delete a configuration profile even if deletion protection would have otherwise prevented it. - `APPLY` : Instructs the deletion protection check to run, even if deletion protection is disabled at the account level. `APPLY` also forces the deletion protection check to run against resources created in the past hour, which are normally excluded from deletion protection checks. - `ACCOUNT_DEFAULT` : The default setting, which instructs AWS AppConfig to implement the deletion protection value specified in the `UpdateAccountSettings` API.

descriptionOptional
string

A description of the configuration profile.

kmsKeyIdentifierOptional
string

The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.

retrievalRoleArnOptional
string | IRoleRef

The ARN of an IAM role with permission to access the configuration at the specified `LocationUri` . > A retrieval role ARN is not required for configurations stored in AWS CodePipeline or the AWS AppConfig hosted configuration store. It is required for all other sources that store your configuration.

tagsOptional
CfnTag[]

Metadata to assign to the configuration profile. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

typeOptional
string

The type of configurations contained in the profile. AWS AppConfig supports `feature flags` and `freeform` configurations. We recommend you create feature flag configurations to enable or disable new features and freeform configurations to distribute configurations to an application. When calling this API, enter one of the following values for `Type` : `AWS.AppConfig.FeatureFlags` `AWS.Freeform`

validatorsOptional
IResolvable | IResolvable | ValidatorsProperty[]

A list of methods for validating the configuration.

CloudFormation Resource

This L1 construct maps directly to the following CloudFormation resource type.

Learn AWS the Practical Way

Our bi-weekly newsletter teaches hands-on AWS fundamentals. No certification fluff - just practical knowledge.

Subscribe to Newsletter