@awboost/cfn-resource-types 0.1.171 → 0.1.173

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,21 +5,12 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
5
5
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html}
6
6
  */
7
7
  export type ApiGatewayVpcLinkProperties = {
8
- /**
9
- * The description of the VPC link.
10
- */
11
8
  Description?: string;
12
- /**
13
- * The name used to label and identify the VPC link.
14
- */
15
9
  Name: string;
16
10
  /**
17
11
  * An array of arbitrary tags (key-value pairs) to associate with the VPC link.
18
12
  */
19
13
  Tags?: Tag[];
20
- /**
21
- * The ARN of the network load balancer of the VPC targeted by the VPC link. The network load balancer must be owned by the same AWS-account of the API owner.
22
- */
23
14
  TargetArns: string[];
24
15
  };
25
16
  /**
@@ -5,23 +5,83 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
5
5
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html}
6
6
  */
7
7
  export type AppSyncGraphQLApiProperties = {
8
+ /**
9
+ * A list of additional authentication providers for the GraphqlApi API.
10
+ */
8
11
  AdditionalAuthenticationProviders?: AdditionalAuthenticationProvider[];
12
+ /**
13
+ * The value that indicates whether the GraphQL API is a standard API (GRAPHQL) or merged API (MERGED).
14
+ */
9
15
  ApiType?: string;
16
+ /**
17
+ * Security configuration for your GraphQL API
18
+ */
10
19
  AuthenticationType: string;
20
+ /**
21
+ * Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
22
+ */
11
23
  EnhancedMetricsConfig?: EnhancedMetricsConfig;
12
- EnvironmentVariables?: Record<string, any>;
24
+ /**
25
+ * A map containing the list of resources with their properties and environment variables.
26
+ */
27
+ EnvironmentVariables?: Record<string, string>;
28
+ /**
29
+ * Sets the value of the GraphQL API to enable (ENABLED) or disable (DISABLED) introspection. If no value is provided, the introspection configuration will be set to ENABLED by default. This field will produce an error if the operation attempts to use the introspection feature while this field is disabled.
30
+ */
13
31
  IntrospectionConfig?: string;
32
+ /**
33
+ * A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
34
+ */
14
35
  LambdaAuthorizerConfig?: LambdaAuthorizerConfig;
36
+ /**
37
+ * The Amazon CloudWatch Logs configuration.
38
+ */
15
39
  LogConfig?: LogConfig;
40
+ /**
41
+ * The AWS Identity and Access Management service role ARN for a merged API.
42
+ */
16
43
  MergedApiExecutionRoleArn?: string;
44
+ /**
45
+ * The API name
46
+ */
17
47
  Name: string;
48
+ /**
49
+ * The OpenID Connect configuration.
50
+ */
18
51
  OpenIDConnectConfig?: OpenIDConnectConfig;
52
+ /**
53
+ * The owner contact information for an API resource.
54
+ */
19
55
  OwnerContact?: string;
56
+ /**
57
+ * The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in the body of query.
58
+ */
20
59
  QueryDepthLimit?: number;
60
+ /**
61
+ * The maximum number of resolvers that can be invoked in a single request.
62
+ */
21
63
  ResolverCountLimit?: number;
64
+ /**
65
+ * An arbitrary set of tags (key-value pairs) for this GraphQL API.
66
+
67
+
68
+ */
22
69
  Tags?: Tag[];
70
+ /**
71
+ * Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
72
+
73
+
74
+ */
23
75
  UserPoolConfig?: UserPoolConfig;
76
+ /**
77
+ * Sets the scope of the GraphQL API to public (GLOBAL) or private (PRIVATE). By default, the scope is set to Global if no value is provided.
78
+ */
24
79
  Visibility?: string;
80
+ /**
81
+ * A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi.
82
+
83
+
84
+ */
25
85
  XrayEnabled?: boolean;
26
86
  };
27
87
  /**
@@ -29,13 +89,33 @@ export type AppSyncGraphQLApiProperties = {
29
89
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#aws-resource-appsync-graphqlapi-return-values}
30
90
  */
31
91
  export type AppSyncGraphQLApiAttributes = {
92
+ /**
93
+ * Unique AWS AppSync GraphQL API identifier.
94
+ */
32
95
  ApiId: string;
96
+ /**
97
+ * The Amazon Resource Name (ARN) of the API key
98
+ */
33
99
  Arn: string;
100
+ /**
101
+ * The fully qualified domain name (FQDN) of the endpoint URL of your GraphQL API.
102
+ */
34
103
  GraphQLDns: string;
104
+ /**
105
+ * The GraphQL endpoint ARN.
106
+ */
35
107
  GraphQLEndpointArn: string;
108
+ /**
109
+ * The Endpoint URL of your GraphQL API.
110
+ */
36
111
  GraphQLUrl: string;
37
- Id: string;
112
+ /**
113
+ * The fully qualified domain name (FQDN) of the real-time endpoint URL of your GraphQL API.
114
+ */
38
115
  RealtimeDns: string;
116
+ /**
117
+ * The GraphQL API real-time endpoint URL.
118
+ */
39
119
  RealtimeUrl: string;
40
120
  };
41
121
  /**
@@ -43,6 +123,9 @@ export type AppSyncGraphQLApiAttributes = {
43
123
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html}
44
124
  */
45
125
  export type AdditionalAuthenticationProvider = {
126
+ /**
127
+ * The authentication type for API key, AWS Identity and Access Management, OIDC, Amazon Cognito user pools, or AWS Lambda.
128
+ */
46
129
  AuthenticationType: string;
47
130
  LambdaAuthorizerConfig?: LambdaAuthorizerConfig;
48
131
  OpenIDConnectConfig?: OpenIDConnectConfig;
@@ -53,8 +136,17 @@ export type AdditionalAuthenticationProvider = {
53
136
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-cognitouserpoolconfig.html}
54
137
  */
55
138
  export type CognitoUserPoolConfig = {
139
+ /**
140
+ * A regular expression for validating the incoming Amazon Cognito user pool app client ID.
141
+ */
56
142
  AppIdClientRegex?: string;
143
+ /**
144
+ * The AWS Region in which the user pool was created.
145
+ */
57
146
  AwsRegion?: string;
147
+ /**
148
+ * The user pool ID
149
+ */
58
150
  UserPoolId?: string;
59
151
  };
60
152
  /**
@@ -62,8 +154,23 @@ export type CognitoUserPoolConfig = {
62
154
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html}
63
155
  */
64
156
  export type EnhancedMetricsConfig = {
157
+ /**
158
+ * Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
159
+
160
+
161
+ */
65
162
  DataSourceLevelMetricsBehavior: string;
163
+ /**
164
+ * Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
165
+
166
+
167
+ */
66
168
  OperationLevelMetricsConfig: string;
169
+ /**
170
+ * Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
171
+
172
+
173
+ */
67
174
  ResolverLevelMetricsBehavior: string;
68
175
  };
69
176
  /**
@@ -71,8 +178,17 @@ export type EnhancedMetricsConfig = {
71
178
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html}
72
179
  */
73
180
  export type LambdaAuthorizerConfig = {
181
+ /**
182
+ * The number of seconds a response should be cached for.
183
+ */
74
184
  AuthorizerResultTtlInSeconds?: number;
185
+ /**
186
+ * The ARN of the Lambda function to be called for authorization.
187
+ */
75
188
  AuthorizerUri?: string;
189
+ /**
190
+ * A regular expression for validation of tokens before the Lambda function is called.
191
+ */
76
192
  IdentityValidationExpression?: string;
77
193
  };
78
194
  /**
@@ -80,8 +196,17 @@ export type LambdaAuthorizerConfig = {
80
196
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html}
81
197
  */
82
198
  export type LogConfig = {
199
+ /**
200
+ * The service role that AWS AppSync will assume to publish to Amazon CloudWatch Logs in your account.
201
+ */
83
202
  CloudWatchLogsRoleArn?: string;
203
+ /**
204
+ * Set to TRUE to exclude sections that contain information such as headers, context, and evaluated mapping templates, regardless of logging level.
205
+ */
84
206
  ExcludeVerboseContent?: boolean;
207
+ /**
208
+ * The field logging level. Values can be NONE, ERROR, INFO, DEBUG, or ALL.
209
+ */
85
210
  FieldLogLevel?: string;
86
211
  };
87
212
  /**
@@ -89,9 +214,23 @@ export type LogConfig = {
89
214
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html}
90
215
  */
91
216
  export type OpenIDConnectConfig = {
217
+ /**
218
+ * The number of milliseconds that a token is valid after being authenticated.
219
+ */
92
220
  AuthTTL?: number;
221
+ /**
222
+ * The client identifier of the Relying party at the OpenID identity provider.
223
+ */
93
224
  ClientId?: string;
225
+ /**
226
+ * The number of milliseconds that a token is valid after it's issued to a user.
227
+
228
+
229
+ */
94
230
  IatTTL?: number;
231
+ /**
232
+ * The issuer for the OIDC configuration.
233
+ */
95
234
  Issuer?: string;
96
235
  };
97
236
  /**
@@ -107,9 +246,21 @@ export type Tag = {
107
246
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html}
108
247
  */
109
248
  export type UserPoolConfig = {
249
+ /**
250
+ * A regular expression for validating the incoming Amazon Cognito user pool app client ID.
251
+ */
110
252
  AppIdClientRegex?: string;
253
+ /**
254
+ * The AWS Region in which the user pool was created.
255
+ */
111
256
  AwsRegion?: string;
257
+ /**
258
+ * The action that you want your GraphQL API to take when a request that uses Amazon Cognito user pool authentication doesn't match the Amazon Cognito user pool configuration.
259
+ */
112
260
  DefaultAction?: string;
261
+ /**
262
+ * The user pool ID.
263
+ */
113
264
  UserPoolId?: string;
114
265
  };
115
266
  /**
@@ -59,7 +59,7 @@ export type AutoScalingAutoScalingGroupProperties = {
59
59
  HealthCheckGracePeriod?: number;
60
60
  /**
61
61
  * A comma-separated value string of one or more health check types.
62
- The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
62
+ The valid values are ``EC2``, ``EBS``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for instances in an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-health-checks.html) in the *Amazon EC2 Auto Scaling User Guide*.
63
63
  Only specify ``EC2`` if you must clear a value that was previously set.
64
64
  */
65
65
  HealthCheckType?: string;
@@ -151,6 +151,7 @@ export type AutoScalingAutoScalingGroupProperties = {
151
151
  Valid values: ``Default`` | ``AllocationStrategy`` | ``ClosestToNextInstanceHour`` | ``NewestInstance`` | ``OldestInstance`` | ``OldestLaunchConfiguration`` | ``OldestLaunchTemplate`` | ``arn:aws:lambda:region:account-id:function:my-function:my-alias``
152
152
  */
153
153
  TerminationPolicies?: string[];
154
+ TrafficSources?: TrafficSourceIdentifier[];
154
155
  /**
155
156
  * A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.
156
157
  If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
@@ -748,6 +749,14 @@ export type TotalLocalStorageGBRequest = {
748
749
  */
749
750
  Min?: number;
750
751
  };
752
+ /**
753
+ * Type definition for `AWS::AutoScaling::AutoScalingGroup.TrafficSourceIdentifier`.
754
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-trafficsourceidentifier.html}
755
+ */
756
+ export type TrafficSourceIdentifier = {
757
+ Identifier: string;
758
+ Type: string;
759
+ };
751
760
  /**
752
761
  * Type definition for `AWS::AutoScaling::AutoScalingGroup.VCpuCountRequest`.
753
762
  * ``VCpuCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.
@@ -0,0 +1,44 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html}
6
+ */
7
+ export type BackupLogicallyAirGappedBackupVaultProperties = {
8
+ AccessPolicy?: Record<string, any> | string;
9
+ /**
10
+ * @pattern `^[a-zA-Z0-9\-\_]{2,50}$`
11
+ */
12
+ BackupVaultName: string;
13
+ BackupVaultTags?: Record<string, string>;
14
+ MaxRetentionDays: number;
15
+ MinRetentionDays: number;
16
+ Notifications?: NotificationObjectType;
17
+ VaultState?: string;
18
+ VaultType?: string;
19
+ };
20
+ /**
21
+ * Attribute type definition for `AWS::Backup::LogicallyAirGappedBackupVault`.
22
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html#aws-resource-backup-logicallyairgappedbackupvault-return-values}
23
+ */
24
+ export type BackupLogicallyAirGappedBackupVaultAttributes = {
25
+ BackupVaultArn: string;
26
+ EncryptionKeyArn: string;
27
+ };
28
+ /**
29
+ * Type definition for `AWS::Backup::LogicallyAirGappedBackupVault.NotificationObjectType`.
30
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-backup-logicallyairgappedbackupvault-notificationobjecttype.html}
31
+ */
32
+ export type NotificationObjectType = {
33
+ BackupVaultEvents: string[];
34
+ SNSTopicArn: string;
35
+ };
36
+ /**
37
+ * Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault
38
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html}
39
+ */
40
+ export declare class BackupLogicallyAirGappedBackupVault extends $Resource<"AWS::Backup::LogicallyAirGappedBackupVault", BackupLogicallyAirGappedBackupVaultProperties, BackupLogicallyAirGappedBackupVaultAttributes> {
41
+ static readonly Type = "AWS::Backup::LogicallyAirGappedBackupVault";
42
+ constructor(logicalId: string, properties: BackupLogicallyAirGappedBackupVaultProperties, options?: $ResourceOptions);
43
+ }
44
+ //# sourceMappingURL=AWS-Backup-LogicallyAirGappedBackupVault.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html}
5
+ */
6
+ export class BackupLogicallyAirGappedBackupVault extends $Resource {
7
+ static Type = "AWS::Backup::LogicallyAirGappedBackupVault";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, BackupLogicallyAirGappedBackupVault.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-Backup-LogicallyAirGappedBackupVault.js.map
@@ -40,7 +40,7 @@ export type BedrockAgentProperties = {
40
40
  * ARN or name of a Bedrock model.
41
41
  * @minLength `1`
42
42
  * @maxLength `2048`
43
- * @pattern `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)$`
43
+ * @pattern `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:(([0-9]{12}:custom-model/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}(([:][a-z0-9-]{1,63}){0,2})?/[a-z0-9]{12})|(:foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|([0-9]{12}:(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+))|(([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2}))|(([0-9a-zA-Z][_-]?)+)$`
44
44
  */
45
45
  FoundationModel?: string;
46
46
  /**
@@ -152,7 +152,7 @@ export type ActionGroupExecutor = {
152
152
  * Action Group Signature for a BuiltIn Action
153
153
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupsignature.html}
154
154
  */
155
- export type ActionGroupSignature = "AMAZON.UserInput";
155
+ export type ActionGroupSignature = "AMAZON.UserInput" | "AMAZON.CodeInterpreter";
156
156
  /**
157
157
  * Type definition for `AWS::Bedrock::Agent.ActionGroupState`.
158
158
  * State of the action group
@@ -5,25 +5,18 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
5
5
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html}
6
6
  */
7
7
  export type CognitoUserPoolIdentityProviderProperties = {
8
- AttributeMapping?: Record<string, any>;
8
+ AttributeMapping?: Record<string, string>;
9
9
  IdpIdentifiers?: string[];
10
- ProviderDetails?: Record<string, any>;
10
+ ProviderDetails: Record<string, string>;
11
11
  ProviderName: string;
12
12
  ProviderType: string;
13
13
  UserPoolId: string;
14
14
  };
15
- /**
16
- * Attribute type definition for `AWS::Cognito::UserPoolIdentityProvider`.
17
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#aws-resource-cognito-userpoolidentityprovider-return-values}
18
- */
19
- export type CognitoUserPoolIdentityProviderAttributes = {
20
- Id: string;
21
- };
22
15
  /**
23
16
  * Resource Type definition for AWS::Cognito::UserPoolIdentityProvider
24
17
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html}
25
18
  */
26
- export declare class CognitoUserPoolIdentityProvider extends $Resource<"AWS::Cognito::UserPoolIdentityProvider", CognitoUserPoolIdentityProviderProperties, CognitoUserPoolIdentityProviderAttributes> {
19
+ export declare class CognitoUserPoolIdentityProvider extends $Resource<"AWS::Cognito::UserPoolIdentityProvider", CognitoUserPoolIdentityProviderProperties, Record<string, never>> {
27
20
  static readonly Type = "AWS::Cognito::UserPoolIdentityProvider";
28
21
  constructor(logicalId: string, properties: CognitoUserPoolIdentityProviderProperties, options?: $ResourceOptions);
29
22
  }
@@ -18,6 +18,7 @@ export type EC2CapacityReservationProperties = {
18
18
  PlacementGroupArn?: string;
19
19
  TagSpecifications?: TagSpecification[];
20
20
  Tenancy?: string;
21
+ UnusedReservationBillingOwnerId?: string;
21
22
  };
22
23
  /**
23
24
  * Attribute type definition for `AWS::EC2::CapacityReservation`.
@@ -11,7 +11,8 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
11
11
  export type EC2VPCEndpointProperties = {
12
12
  /**
13
13
  * An endpoint policy, which controls access to the service from the VPC. The default endpoint policy allows full access to the service. Endpoint policies are supported only for gateway and interface endpoints.
14
- For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. CFNlong converts YAML policies to JSON format before calling the API to create or modify the VPC endpoint.
14
+ For CloudFormation templates in YAML, you can provide the policy in JSON or YAML format. For example, if you have a JSON policy, you can convert it to YAML before including it in the YAML template, and CFNlong converts the policy to JSON format before calling the API actions for privatelink. Alternatively, you can include the JSON directly in the YAML, as shown in the following ``Properties`` section:
15
+ ``Properties: VpcEndpointType: 'Interface' ServiceName: !Sub 'com.amazonaws.${AWS::Region}.logs' PolicyDocument: '{ "Version":"2012-10-17", "Statement": [{ "Effect":"Allow", "Principal":"*", "Action":["logs:Describe*","logs:Get*","logs:List*","logs:FilterLogEvents"], "Resource":"*" }] }'``
15
16
  */
16
17
  PolicyDocument?: string | Record<string, any>;
17
18
  /**
@@ -91,60 +91,100 @@ export type EC2VPNConnectionAttributes = {
91
91
  };
92
92
  /**
93
93
  * Type definition for `AWS::EC2::VPNConnection.CloudwatchLogOptionsSpecification`.
94
+ * Options for sending VPN tunnel logs to CloudWatch.
94
95
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-cloudwatchlogoptionsspecification.html}
95
96
  */
96
97
  export type CloudwatchLogOptionsSpecification = {
98
+ /**
99
+ * Enable or disable VPN tunnel logging feature. Default value is ``False``.
100
+ Valid values: ``True`` | ``False``
101
+ */
97
102
  LogEnabled?: boolean;
103
+ /**
104
+ * The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.
105
+ */
98
106
  LogGroupArn?: string;
107
+ /**
108
+ * Set log format. Default format is ``json``.
109
+ Valid values: ``json`` | ``text``
110
+ */
99
111
  LogOutputFormat?: "json" | "text";
100
112
  };
101
113
  /**
102
114
  * Type definition for `AWS::EC2::VPNConnection.IKEVersionsRequestListValue`.
115
+ * The IKE version that is permitted for the VPN tunnel.
103
116
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-ikeversionsrequestlistvalue.html}
104
117
  */
105
118
  export type IKEVersionsRequestListValue = {
119
+ /**
120
+ * The IKE version.
121
+ */
106
122
  Value?: "ikev1" | "ikev2";
107
123
  };
108
124
  /**
109
125
  * Type definition for `AWS::EC2::VPNConnection.Phase1DHGroupNumbersRequestListValue`.
126
+ * Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE negotiations.
110
127
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase1dhgroupnumbersrequestlistvalue.html}
111
128
  */
112
129
  export type Phase1DHGroupNumbersRequestListValue = {
130
+ /**
131
+ * The Diffie-Hellmann group number.
132
+ */
113
133
  Value?: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24;
114
134
  };
115
135
  /**
116
136
  * Type definition for `AWS::EC2::VPNConnection.Phase1EncryptionAlgorithmsRequestListValue`.
137
+ * Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE negotiations.
117
138
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase1encryptionalgorithmsrequestlistvalue.html}
118
139
  */
119
140
  export type Phase1EncryptionAlgorithmsRequestListValue = {
141
+ /**
142
+ * The value for the encryption algorithm.
143
+ */
120
144
  Value?: "AES128" | "AES256" | "AES128-GCM-16" | "AES256-GCM-16";
121
145
  };
122
146
  /**
123
147
  * Type definition for `AWS::EC2::VPNConnection.Phase1IntegrityAlgorithmsRequestListValue`.
148
+ * Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE negotiations.
124
149
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase1integrityalgorithmsrequestlistvalue.html}
125
150
  */
126
151
  export type Phase1IntegrityAlgorithmsRequestListValue = {
152
+ /**
153
+ * The value for the integrity algorithm.
154
+ */
127
155
  Value?: "SHA1" | "SHA2-256" | "SHA2-384" | "SHA2-512";
128
156
  };
129
157
  /**
130
158
  * Type definition for `AWS::EC2::VPNConnection.Phase2DHGroupNumbersRequestListValue`.
159
+ * Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE negotiations.
131
160
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase2dhgroupnumbersrequestlistvalue.html}
132
161
  */
133
162
  export type Phase2DHGroupNumbersRequestListValue = {
163
+ /**
164
+ * The Diffie-Hellmann group number.
165
+ */
134
166
  Value?: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24;
135
167
  };
136
168
  /**
137
169
  * Type definition for `AWS::EC2::VPNConnection.Phase2EncryptionAlgorithmsRequestListValue`.
170
+ * Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE negotiations.
138
171
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase2encryptionalgorithmsrequestlistvalue.html}
139
172
  */
140
173
  export type Phase2EncryptionAlgorithmsRequestListValue = {
174
+ /**
175
+ * The encryption algorithm.
176
+ */
141
177
  Value?: "AES128" | "AES256" | "AES128-GCM-16" | "AES256-GCM-16";
142
178
  };
143
179
  /**
144
180
  * Type definition for `AWS::EC2::VPNConnection.Phase2IntegrityAlgorithmsRequestListValue`.
181
+ * Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE negotiations.
145
182
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-phase2integrityalgorithmsrequestlistvalue.html}
146
183
  */
147
184
  export type Phase2IntegrityAlgorithmsRequestListValue = {
185
+ /**
186
+ * The integrity algorithm.
187
+ */
148
188
  Value?: "SHA1" | "SHA2-256" | "SHA2-384" | "SHA2-512";
149
189
  };
150
190
  /**
@@ -164,9 +204,13 @@ export type Tag = {
164
204
  };
165
205
  /**
166
206
  * Type definition for `AWS::EC2::VPNConnection.VpnTunnelLogOptionsSpecification`.
207
+ * Options for logging VPN tunnel activity.
167
208
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunnellogoptionsspecification.html}
168
209
  */
169
210
  export type VpnTunnelLogOptionsSpecification = {
211
+ /**
212
+ * Options for sending VPN tunnel logs to CloudWatch.
213
+ */
170
214
  CloudwatchLogOptions?: CloudwatchLogOptionsSpecification;
171
215
  };
172
216
  /**
@@ -175,29 +219,77 @@ export type VpnTunnelLogOptionsSpecification = {
175
219
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-vpnconnection-vpntunneloptionsspecification.html}
176
220
  */
177
221
  export type VpnTunnelOptionsSpecification = {
222
+ /**
223
+ * The action to take after DPD timeout occurs. Specify ``restart`` to restart the IKE initiation. Specify ``clear`` to end the IKE session.
224
+ Valid Values: ``clear`` | ``none`` | ``restart``
225
+ Default: ``clear``
226
+ */
178
227
  DPDTimeoutAction?: "clear" | "none" | "restart";
179
228
  /**
180
- * @min `30`
181
- */
229
+ * The number of seconds after which a DPD timeout occurs.
230
+ Constraints: A value greater than or equal to 30.
231
+ Default: ``30``
232
+ * @min `30`
233
+ */
182
234
  DPDTimeoutSeconds?: number;
235
+ /**
236
+ * Turn on or off tunnel endpoint lifecycle control feature.
237
+ */
183
238
  EnableTunnelLifecycleControl?: boolean;
239
+ /**
240
+ * The IKE versions that are permitted for the VPN tunnel.
241
+ Valid values: ``ikev1`` | ``ikev2``
242
+ */
184
243
  IKEVersions?: IKEVersionsRequestListValue[];
244
+ /**
245
+ * Options for logging VPN tunnel activity.
246
+ */
185
247
  LogOptions?: VpnTunnelLogOptionsSpecification;
248
+ /**
249
+ * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations.
250
+ Valid values: ``2`` | ``14`` | ``15`` | ``16`` | ``17`` | ``18`` | ``19`` | ``20`` | ``21`` | ``22`` | ``23`` | ``24``
251
+ */
186
252
  Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestListValue[];
253
+ /**
254
+ * One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
255
+ Valid values: ``AES128`` | ``AES256`` | ``AES128-GCM-16`` | ``AES256-GCM-16``
256
+ */
187
257
  Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsRequestListValue[];
258
+ /**
259
+ * One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.
260
+ Valid values: ``SHA1`` | ``SHA2-256`` | ``SHA2-384`` | ``SHA2-512``
261
+ */
188
262
  Phase1IntegrityAlgorithms?: Phase1IntegrityAlgorithmsRequestListValue[];
189
263
  /**
190
- * @min `900`
191
- * @max `28800`
192
- */
264
+ * The lifetime for phase 1 of the IKE negotiation, in seconds.
265
+ Constraints: A value between 900 and 28,800.
266
+ Default: ``28800``
267
+ * @min `900`
268
+ * @max `28800`
269
+ */
193
270
  Phase1LifetimeSeconds?: number;
271
+ /**
272
+ * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations.
273
+ Valid values: ``2`` | ``5`` | ``14`` | ``15`` | ``16`` | ``17`` | ``18`` | ``19`` | ``20`` | ``21`` | ``22`` | ``23`` | ``24``
274
+ */
194
275
  Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestListValue[];
276
+ /**
277
+ * One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
278
+ Valid values: ``AES128`` | ``AES256`` | ``AES128-GCM-16`` | ``AES256-GCM-16``
279
+ */
195
280
  Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsRequestListValue[];
281
+ /**
282
+ * One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.
283
+ Valid values: ``SHA1`` | ``SHA2-256`` | ``SHA2-384`` | ``SHA2-512``
284
+ */
196
285
  Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsRequestListValue[];
197
286
  /**
198
- * @min `900`
199
- * @max `3600`
200
- */
287
+ * The lifetime for phase 2 of the IKE negotiation, in seconds.
288
+ Constraints: A value between 900 and 3,600. The value must be less than the value for ``Phase1LifetimeSeconds``.
289
+ Default: ``3600``
290
+ * @min `900`
291
+ * @max `3600`
292
+ */
201
293
  Phase2LifetimeSeconds?: number;
202
294
  /**
203
295
  * The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway.
@@ -205,19 +297,33 @@ export type VpnTunnelOptionsSpecification = {
205
297
  */
206
298
  PreSharedKey?: string;
207
299
  /**
208
- * @min `0`
209
- * @max `100`
210
- */
300
+ * The percentage of the rekey window (determined by ``RekeyMarginTimeSeconds``) during which the rekey time is randomly selected.
301
+ Constraints: A value between 0 and 100.
302
+ Default: ``100``
303
+ * @min `0`
304
+ * @max `100`
305
+ */
211
306
  RekeyFuzzPercentage?: number;
212
307
  /**
213
- * @min `60`
214
- */
308
+ * The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for ``RekeyFuzzPercentage``.
309
+ Constraints: A value between 60 and half of ``Phase2LifetimeSeconds``.
310
+ Default: ``270``
311
+ * @min `60`
312
+ */
215
313
  RekeyMarginTimeSeconds?: number;
216
314
  /**
217
- * @min `64`
218
- * @max `2048`
219
- */
315
+ * The number of packets in an IKE replay window.
316
+ Constraints: A value between 64 and 2048.
317
+ Default: ``1024``
318
+ * @min `64`
319
+ * @max `2048`
320
+ */
220
321
  ReplayWindowSize?: number;
322
+ /**
323
+ * The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify ``start`` for AWS to initiate the IKE negotiation.
324
+ Valid Values: ``add`` | ``start``
325
+ Default: ``add``
326
+ */
221
327
  StartupAction?: "add" | "start";
222
328
  /**
223
329
  * The range of inside IP addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.
@@ -231,6 +337,10 @@ export type VpnTunnelOptionsSpecification = {
231
337
  + ``169.254.169.252/30``
232
338
  */
233
339
  TunnelInsideCidr?: string;
340
+ /**
341
+ * The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.
342
+ Constraints: A size /126 CIDR block from the local ``fd00::/8`` range.
343
+ */
234
344
  TunnelInsideIpv6Cidr?: string;
235
345
  };
236
346
  /**
@@ -350,8 +350,17 @@ export type LogConfiguration = {
350
350
  */
351
351
  LogDriver?: string;
352
352
  /**
353
- * The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
354
- */
353
+ * The configuration options to send to the log driver.
354
+ The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:
355
+ + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using the Fargate launch type.Optional for the EC2 launch type, required for the Fargate launch type. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to CloudWatch Logs. The delivery mode you choose affects application availability when the flow of logs from container to CloudWatch is interrupted. If you use the blocking mode and the flow of logs to CloudWatch is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent to CloudWatch. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.
356
+ To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.
357
+ When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.
358
+ Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.
359
+ When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.
360
+ When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``.
361
+ When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.
362
+ This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
363
+ */
355
364
  Options?: Record<string, string>;
356
365
  /**
357
366
  * The secrets to pass to the log configuration. For more information, see [Specifying sensitive data](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) in the *Amazon Elastic Container Service Developer Guide*.
@@ -17,6 +17,10 @@ export type ElastiCacheGlobalReplicationGroupProperties = {
17
17
  * Cache parameter group name to use for the new engine version. This parameter cannot be modified independently.
18
18
  */
19
19
  CacheParameterGroupName?: string;
20
+ /**
21
+ * The engine of the Global Datastore.
22
+ */
23
+ Engine?: string;
20
24
  /**
21
25
  * The engine version of the Global Datastore.
22
26
  */
@@ -34,14 +34,14 @@ export type IVSEncoderConfigurationProperties = {
34
34
  */
35
35
  Framerate?: number;
36
36
  /**
37
- * Video-resolution height. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 720.
38
- * @min `1`
37
+ * Video-resolution height. This must be an even number. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 720.
38
+ * @min `2`
39
39
  * @max `1920`
40
40
  */
41
41
  Height?: number;
42
42
  /**
43
- * Video-resolution width. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 1280.
44
- * @min `1`
43
+ * Video-resolution width. This must be an even number. Note that the maximum value is determined by width times height, such that the maximum total pixels is 2073600 (1920x1080 or 1080x1920). Default: 1280.
44
+ * @min `2`
45
45
  * @max `1920`
46
46
  */
47
47
  Width?: number;
@@ -30,7 +30,7 @@ export type ImageBuilderComponentProperties = {
30
30
  /**
31
31
  * The platform of the component.
32
32
  */
33
- Platform: "Windows" | "Linux";
33
+ Platform: "Windows" | "Linux" | "macOS";
34
34
  /**
35
35
  * The operating system (OS) version supported by the component.
36
36
  */
@@ -33,6 +33,10 @@ export type ImageBuilderInfrastructureConfigurationProperties = {
33
33
  * The name of the infrastructure configuration.
34
34
  */
35
35
  Name: string;
36
+ /**
37
+ * The placement option settings for the infrastructure configuration.
38
+ */
39
+ Placement?: Placement;
36
40
  /**
37
41
  * The tags attached to the resource created by Image Builder.
38
42
  */
@@ -94,6 +98,29 @@ export type Logging = {
94
98
  */
95
99
  S3Logs?: S3Logs;
96
100
  };
101
+ /**
102
+ * Type definition for `AWS::ImageBuilder::InfrastructureConfiguration.Placement`.
103
+ * The placement options
104
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-infrastructureconfiguration-placement.html}
105
+ */
106
+ export type Placement = {
107
+ /**
108
+ * AvailabilityZone
109
+ */
110
+ AvailabilityZone?: string;
111
+ /**
112
+ * HostId
113
+ */
114
+ HostId?: string;
115
+ /**
116
+ * HostResourceGroupArn
117
+ */
118
+ HostResourceGroupArn?: string;
119
+ /**
120
+ * Tenancy
121
+ */
122
+ Tenancy?: "default" | "dedicated" | "host";
123
+ };
97
124
  /**
98
125
  * Type definition for `AWS::ImageBuilder::InfrastructureConfiguration.S3Logs`.
99
126
  * The S3 path in which to store the logs.
@@ -29,6 +29,10 @@ export type MemoryDBClusterProperties = {
29
29
  * An optional description of the cluster.
30
30
  */
31
31
  Description?: string;
32
+ /**
33
+ * The engine type used by the cluster.
34
+ */
35
+ Engine?: string;
32
36
  /**
33
37
  * The Redis engine version used by the cluster.
34
38
  */
@@ -16,8 +16,8 @@ export type RefactorSpacesEnvironmentProperties = {
16
16
  * @maxLength `63`
17
17
  * @pattern `^(?!env-)[a-zA-Z0-9]+[a-zA-Z0-9-_ ]+$`
18
18
  */
19
- Name: string;
20
- NetworkFabricType: NetworkFabricType;
19
+ Name?: string;
20
+ NetworkFabricType?: NetworkFabricType;
21
21
  /**
22
22
  * Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.
23
23
  */
@@ -1027,32 +1027,41 @@ export type S3KeyFilter = {
1027
1027
  };
1028
1028
  /**
1029
1029
  * Type definition for `AWS::S3::Bucket.ServerSideEncryptionByDefault`.
1030
- * Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. For more information, see [PUT Bucket encryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html) in the *Amazon S3 API Reference*.
1031
- If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
1030
+ * Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).
1031
+ + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
1032
+ + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket for the lifetime of the bucket. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported.
1033
+ + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.
1032
1034
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html}
1033
1035
  */
1034
1036
  export type ServerSideEncryptionByDefault = {
1035
1037
  /**
1036
- * AWS Key Management Service (KMS) customer AWS KMS key ID to use for the default encryption. This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.
1037
- You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.
1038
+ * AWS Key Management Service (KMS) customer managed key ID to use for the default encryption.
1039
+ + *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.
1040
+ + *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms``.
1041
+
1042
+ You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.
1038
1043
  + Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab``
1039
1044
  + Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab``
1040
1045
  + Key Alias: ``alias/alias-name``
1041
1046
 
1042
- If you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log.
1043
- If you are using encryption with cross-account or AWS service operations you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).
1044
- Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.
1047
+ If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).
1048
+ + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log.
1049
+ + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.
1050
+
1051
+ Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.
1045
1052
  */
1046
1053
  KMSMasterKeyID?: string;
1047
1054
  /**
1048
- * Server-side encryption algorithm to use for the default encryption.
1049
- */
1055
+ * Server-side encryption algorithm to use for the default encryption.
1056
+ For directory buckets, there are only two supported values for server-side encryption: ``AES256`` and ``aws:kms``.
1057
+ */
1050
1058
  SSEAlgorithm: "aws:kms" | "AES256" | "aws:kms:dsse";
1051
1059
  };
1052
1060
  /**
1053
1061
  * Type definition for `AWS::S3::Bucket.ServerSideEncryptionRule`.
1054
1062
  * Specifies the default server-side encryption configuration.
1055
- If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
1063
+ + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
1064
+ + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.
1056
1065
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html}
1057
1066
  */
1058
1067
  export type ServerSideEncryptionRule = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awboost/cfn-resource-types",
3
- "version": "0.1.171",
3
+ "version": "0.1.173",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },