UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1,061 lines (1,060 loc) 48.4 kB
import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { EndpointReference, IEndpointRef, ISecurityConfigurationRef, IVirtualClusterRef, SecurityConfigurationReference, VirtualClusterReference } from "../../interfaces/generated/aws-emrcontainers-interfaces.generated"; /** * The `AWS::EMRContainers::VirtualCluster` resource specifies a virtual cluster. * * A virtual cluster is a managed entity on Amazon EMR on EKS. You can create, describe, list, and delete virtual clusters. They do not consume any additional resources in your system. A single virtual cluster maps to a single Kubernetes namespace. Given this relationship, you can model virtual clusters the same way you model Kubernetes namespaces to meet your requirements. * * @cloudformationResource AWS::EMRContainers::VirtualCluster * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html */ export declare class CfnVirtualCluster extends cdk.CfnResource implements cdk.IInspectable, IVirtualClusterRef, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnVirtualCluster from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnVirtualCluster; /** * Checks whether the given object is a CfnVirtualCluster */ static isCfnVirtualCluster(x: any): x is CfnVirtualCluster; /** * Creates a new IVirtualClusterRef from an ARN */ static fromVirtualClusterArn(scope: constructs.Construct, id: string, arn: string): IVirtualClusterRef; /** * Creates a new IVirtualClusterRef from a virtualClusterId */ static fromVirtualClusterId(scope: constructs.Construct, id: string, virtualClusterId: string): IVirtualClusterRef; static arnForVirtualCluster(resource: IVirtualClusterRef): string; /** * The container provider of the virtual cluster. */ private _containerProvider; /** * The name of the virtual cluster. */ private _name; /** * The ID of the security configuration. */ private _securityConfigurationId?; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * An array of key-value pairs to apply to this resource. */ private _tagsRaw?; /** * Create a new `AWS::EMRContainers::VirtualCluster`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnVirtualClusterProps); get virtualClusterRef(): VirtualClusterReference; /** * The container provider of the virtual cluster. */ get containerProvider(): CfnVirtualCluster.ContainerProviderProperty | cdk.IResolvable; /** * The container provider of the virtual cluster. */ set containerProvider(value: CfnVirtualCluster.ContainerProviderProperty | cdk.IResolvable); /** * The name of the virtual cluster. */ get name(): string; /** * The name of the virtual cluster. */ set name(value: string); /** * The ID of the security configuration. */ get securityConfigurationId(): string | undefined; /** * The ID of the security configuration. */ set securityConfigurationId(value: string | undefined); /** * An array of key-value pairs to apply to this resource. */ get tagsRaw(): Array<cdk.CfnTag> | undefined; /** * An array of key-value pairs to apply to this resource. */ set tagsRaw(value: Array<cdk.CfnTag> | undefined); /** * The Amazon Resource Name (ARN) of the project, such as `arn:aws:emr-containers:us-east-1:123456789012:/virtualclusters/ab4rp1abcs8xz47n3x0example` . * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The ID of the virtual cluster, such as `ab4rp1abcs8xz47n3x0example` . * * @cloudformationAttribute Id */ get attrId(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnVirtualCluster { /** * The information about the container provider. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html */ interface ContainerProviderProperty { /** * The ID of the container cluster. * * *Minimum* : 1 * * *Maximum* : 100 * * *Pattern* : `^[0-9A-Za-z][A-Za-z0-9\-_]*` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-id */ readonly id: string; /** * The information about the container cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-info */ readonly info: CfnVirtualCluster.ContainerInfoProperty | cdk.IResolvable; /** * The type of the container provider. * * Amazon EKS is the only supported type as of now. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-type */ readonly type: string; } /** * The information about the container used for a job run or a managed endpoint. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerinfo.html */ interface ContainerInfoProperty { /** * The information about the Amazon EKS cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerinfo.html#cfn-emrcontainers-virtualcluster-containerinfo-eksinfo */ readonly eksInfo: CfnVirtualCluster.EksInfoProperty | cdk.IResolvable; } /** * The information about the Amazon EKS cluster. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-eksinfo.html */ interface EksInfoProperty { /** * The namespaces of the EKS cluster. * * *Minimum* : 1 * * *Maximum* : 63 * * *Pattern* : `[a-z0-9]([-a-z0-9]*[a-z0-9])?` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-eksinfo.html#cfn-emrcontainers-virtualcluster-eksinfo-namespace */ readonly namespace: string; } } /** * Properties for defining a `CfnVirtualCluster` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html */ export interface CfnVirtualClusterProps { /** * The container provider of the virtual cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-containerprovider */ readonly containerProvider: CfnVirtualCluster.ContainerProviderProperty | cdk.IResolvable; /** * The name of the virtual cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-name */ readonly name: string; /** * The ID of the security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-securityconfigurationid */ readonly securityConfigurationId?: string; /** * An array of key-value pairs to apply to this resource. * * For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-tags */ readonly tags?: Array<cdk.CfnTag>; } /** * Resource Schema of AWS::EMRContainers::Endpoint Type. * * @cloudformationResource AWS::EMRContainers::Endpoint * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html */ export declare class CfnEndpoint extends cdk.CfnResource implements cdk.IInspectable, IEndpointRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnEndpoint from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnEndpoint; /** * Checks whether the given object is a CfnEndpoint */ static isCfnEndpoint(x: any): x is CfnEndpoint; static arnForEndpoint(resource: IEndpointRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; private _configurationOverrides?; /** * The execution role ARN for the managed endpoint. */ private _executionRoleArn; /** * The name of the managed endpoint. */ private _name?; /** * The Amazon EMR release label. */ private _releaseLabel; /** * An array of key-value pairs to apply to this managed endpoint. */ private _tags?; /** * The type of the managed endpoint. */ private _type; /** * The ID of the virtual cluster for which the managed endpoint is created. */ private _virtualClusterId; /** * Create a new `AWS::EMRContainers::Endpoint`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnEndpointProps); get endpointRef(): EndpointReference; get configurationOverrides(): CfnEndpoint.ConfigurationOverridesProperty | cdk.IResolvable | undefined; set configurationOverrides(value: CfnEndpoint.ConfigurationOverridesProperty | cdk.IResolvable | undefined); /** * The execution role ARN for the managed endpoint. */ get executionRoleArn(): string; /** * The execution role ARN for the managed endpoint. */ set executionRoleArn(value: string); /** * The name of the managed endpoint. */ get name(): string | undefined; /** * The name of the managed endpoint. */ set name(value: string | undefined); /** * The Amazon EMR release label. */ get releaseLabel(): string; /** * The Amazon EMR release label. */ set releaseLabel(value: string); /** * An array of key-value pairs to apply to this managed endpoint. */ get tags(): Array<cdk.CfnTag> | undefined; /** * An array of key-value pairs to apply to this managed endpoint. */ set tags(value: Array<cdk.CfnTag> | undefined); /** * The type of the managed endpoint. */ get type(): string; /** * The type of the managed endpoint. */ set type(value: string); /** * The ID of the virtual cluster for which the managed endpoint is created. */ get virtualClusterId(): string; /** * The ID of the virtual cluster for which the managed endpoint is created. */ set virtualClusterId(value: string); /** * The ARN of the managed endpoint. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * @cloudformationAttribute CertificateAuthority */ get attrCertificateAuthority(): cdk.IResolvable; /** * The date and time when the managed endpoint was created. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The reason for a failed managed endpoint. * * @cloudformationAttribute FailureReason */ get attrFailureReason(): string; /** * The ID of the managed endpoint. * * @cloudformationAttribute Id */ get attrId(): string; /** * The security group associated with the managed endpoint. * * @cloudformationAttribute SecurityGroup */ get attrSecurityGroup(): string; /** * The server URL of the managed endpoint. * * @cloudformationAttribute ServerUrl */ get attrServerUrl(): string; /** * The state of the managed endpoint. * * @cloudformationAttribute State */ get attrState(): string; /** * Additional details about the state of the managed endpoint. * * @cloudformationAttribute StateDetails */ get attrStateDetails(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnEndpoint { /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-configurationoverrides.html */ interface ConfigurationOverridesProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-configurationoverrides.html#cfn-emrcontainers-endpoint-configurationoverrides-applicationconfiguration */ readonly applicationConfiguration?: Array<CfnEndpoint.EMREKSConfigurationProperty | cdk.IResolvable> | cdk.IResolvable; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-configurationoverrides.html#cfn-emrcontainers-endpoint-configurationoverrides-monitoringconfiguration */ readonly monitoringConfiguration?: cdk.IResolvable | CfnEndpoint.MonitoringConfigurationProperty; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-emreksconfiguration.html */ interface EMREKSConfigurationProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-emreksconfiguration.html#cfn-emrcontainers-endpoint-emreksconfiguration-classification */ readonly classification: string; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-emreksconfiguration.html#cfn-emrcontainers-endpoint-emreksconfiguration-configurations */ readonly configurations?: Array<CfnEndpoint.EMREKSConfigurationProperty | cdk.IResolvable> | cdk.IResolvable; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-emreksconfiguration.html#cfn-emrcontainers-endpoint-emreksconfiguration-properties */ readonly properties?: cdk.IResolvable | Record<string, string>; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html */ interface MonitoringConfigurationProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html#cfn-emrcontainers-endpoint-monitoringconfiguration-cloudwatchmonitoringconfiguration */ readonly cloudWatchMonitoringConfiguration?: CfnEndpoint.CloudWatchMonitoringConfigurationProperty | cdk.IResolvable; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html#cfn-emrcontainers-endpoint-monitoringconfiguration-containerlogrotationconfiguration */ readonly containerLogRotationConfiguration?: CfnEndpoint.ContainerLogRotationConfigurationProperty | cdk.IResolvable; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html#cfn-emrcontainers-endpoint-monitoringconfiguration-persistentappui */ readonly persistentAppUi?: string; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-monitoringconfiguration.html#cfn-emrcontainers-endpoint-monitoringconfiguration-s3monitoringconfiguration */ readonly s3MonitoringConfiguration?: cdk.IResolvable | CfnEndpoint.S3MonitoringConfigurationProperty; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-containerlogrotationconfiguration.html */ interface ContainerLogRotationConfigurationProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-containerlogrotationconfiguration.html#cfn-emrcontainers-endpoint-containerlogrotationconfiguration-maxfilestokeep */ readonly maxFilesToKeep: number; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-containerlogrotationconfiguration.html#cfn-emrcontainers-endpoint-containerlogrotationconfiguration-rotationsize */ readonly rotationSize: string; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-cloudwatchmonitoringconfiguration.html */ interface CloudWatchMonitoringConfigurationProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-cloudwatchmonitoringconfiguration.html#cfn-emrcontainers-endpoint-cloudwatchmonitoringconfiguration-loggroupname */ readonly logGroupName: string; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-cloudwatchmonitoringconfiguration.html#cfn-emrcontainers-endpoint-cloudwatchmonitoringconfiguration-logstreamnameprefix */ readonly logStreamNamePrefix?: string; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-s3monitoringconfiguration.html */ interface S3MonitoringConfigurationProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-s3monitoringconfiguration.html#cfn-emrcontainers-endpoint-s3monitoringconfiguration-loguri */ readonly logUri: string; } /** * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-certificate.html */ interface CertificateProperty { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-certificate.html#cfn-emrcontainers-endpoint-certificate-certificatearn */ readonly certificateArn?: string; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-endpoint-certificate.html#cfn-emrcontainers-endpoint-certificate-certificatedata */ readonly certificateData?: string; } } /** * Properties for defining a `CfnEndpoint` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html */ export interface CfnEndpointProps { /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-configurationoverrides */ readonly configurationOverrides?: CfnEndpoint.ConfigurationOverridesProperty | cdk.IResolvable; /** * The execution role ARN for the managed endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-executionrolearn */ readonly executionRoleArn: string; /** * The name of the managed endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-name */ readonly name?: string; /** * The Amazon EMR release label. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-releaselabel */ readonly releaseLabel: string; /** * An array of key-value pairs to apply to this managed endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-tags */ readonly tags?: Array<cdk.CfnTag>; /** * The type of the managed endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-type */ readonly type: string; /** * The ID of the virtual cluster for which the managed endpoint is created. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-endpoint.html#cfn-emrcontainers-endpoint-virtualclusterid */ readonly virtualClusterId: string; } /** * Resource Schema of AWS::EMRContainers::SecurityConfiguration Type. * * @cloudformationResource AWS::EMRContainers::SecurityConfiguration * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html */ export declare class CfnSecurityConfiguration extends cdk.CfnResource implements cdk.IInspectable, ISecurityConfigurationRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnSecurityConfiguration from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnSecurityConfiguration; /** * Checks whether the given object is a CfnSecurityConfiguration */ static isCfnSecurityConfiguration(x: any): x is CfnSecurityConfiguration; static arnForSecurityConfiguration(resource: ISecurityConfigurationRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * Container provider information. */ private _containerProvider?; /** * The name of the security configuration. */ private _name?; /** * Security configuration data containing encryption and authorization settings. */ private _securityConfigurationData; /** * An array of key-value pairs to apply to this security configuration. */ private _tags?; /** * Create a new `AWS::EMRContainers::SecurityConfiguration`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnSecurityConfigurationProps); get securityConfigurationRef(): SecurityConfigurationReference; /** * Container provider information. */ get containerProvider(): CfnSecurityConfiguration.ContainerProviderProperty | cdk.IResolvable | undefined; /** * Container provider information. */ set containerProvider(value: CfnSecurityConfiguration.ContainerProviderProperty | cdk.IResolvable | undefined); /** * The name of the security configuration. */ get name(): string | undefined; /** * The name of the security configuration. */ set name(value: string | undefined); /** * Security configuration data containing encryption and authorization settings. */ get securityConfigurationData(): cdk.IResolvable | CfnSecurityConfiguration.SecurityConfigurationDataProperty; /** * Security configuration data containing encryption and authorization settings. */ set securityConfigurationData(value: cdk.IResolvable | CfnSecurityConfiguration.SecurityConfigurationDataProperty); /** * An array of key-value pairs to apply to this security configuration. */ get tags(): Array<cdk.CfnTag> | undefined; /** * An array of key-value pairs to apply to this security configuration. */ set tags(value: Array<cdk.CfnTag> | undefined); /** * The ARN of the security configuration. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The ID of the security configuration. * * @cloudformationAttribute Id */ get attrId(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnSecurityConfiguration { /** * Container provider information. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerprovider.html */ interface ContainerProviderProperty { /** * The container provider ID. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerprovider.html#cfn-emrcontainers-securityconfiguration-containerprovider-id */ readonly id: string; /** * Container information. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerprovider.html#cfn-emrcontainers-securityconfiguration-containerprovider-info */ readonly info?: CfnSecurityConfiguration.ContainerInfoProperty | cdk.IResolvable; /** * The container provider type. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerprovider.html#cfn-emrcontainers-securityconfiguration-containerprovider-type */ readonly type: string; } /** * Container information. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerinfo.html */ interface ContainerInfoProperty { /** * EKS information. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-containerinfo.html#cfn-emrcontainers-securityconfiguration-containerinfo-eksinfo */ readonly eksInfo?: CfnSecurityConfiguration.EksInfoProperty | cdk.IResolvable; } /** * EKS information. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-eksinfo.html */ interface EksInfoProperty { /** * The EKS namespace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-eksinfo.html#cfn-emrcontainers-securityconfiguration-eksinfo-namespace */ readonly namespace?: string; } /** * Security configuration data containing encryption and authorization settings. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securityconfigurationdata.html */ interface SecurityConfigurationDataProperty { /** * Authentication configuration for the security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securityconfigurationdata.html#cfn-emrcontainers-securityconfiguration-securityconfigurationdata-authenticationconfiguration */ readonly authenticationConfiguration?: CfnSecurityConfiguration.AuthenticationConfigurationProperty | cdk.IResolvable; /** * Authorization configuration for the security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securityconfigurationdata.html#cfn-emrcontainers-securityconfiguration-securityconfigurationdata-authorizationconfiguration */ readonly authorizationConfiguration?: CfnSecurityConfiguration.AuthorizationConfigurationProperty | cdk.IResolvable; /** * Encryption configuration for the security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securityconfigurationdata.html#cfn-emrcontainers-securityconfiguration-securityconfigurationdata-encryptionconfiguration */ readonly encryptionConfiguration?: CfnSecurityConfiguration.EncryptionConfigurationProperty | cdk.IResolvable; } /** * Authorization configuration for the security configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authorizationconfiguration.html */ interface AuthorizationConfigurationProperty { /** * Lake Formation configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authorizationconfiguration.html#cfn-emrcontainers-securityconfiguration-authorizationconfiguration-lakeformationconfiguration */ readonly lakeFormationConfiguration?: cdk.IResolvable | CfnSecurityConfiguration.LakeFormationConfigurationProperty; } /** * Lake Formation configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html */ interface LakeFormationConfigurationProperty { /** * The session tag to authorize Lake Formation access. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html#cfn-emrcontainers-securityconfiguration-lakeformationconfiguration-authorizedsessiontagvalue */ readonly authorizedSessionTagValue?: string; /** * Whether query access control is enabled. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html#cfn-emrcontainers-securityconfiguration-lakeformationconfiguration-queryaccesscontrolenabled */ readonly queryAccessControlEnabled?: boolean | cdk.IResolvable; /** * The ARN of the query engine role. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html#cfn-emrcontainers-securityconfiguration-lakeformationconfiguration-queryenginerolearn */ readonly queryEngineRoleArn?: string; /** * Secure namespace information for Lake Formation. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-lakeformationconfiguration.html#cfn-emrcontainers-securityconfiguration-lakeformationconfiguration-securenamespaceinfo */ readonly secureNamespaceInfo?: cdk.IResolvable | CfnSecurityConfiguration.SecureNamespaceInfoProperty; } /** * Secure namespace information for Lake Formation. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securenamespaceinfo.html */ interface SecureNamespaceInfoProperty { /** * The ID of the cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securenamespaceinfo.html#cfn-emrcontainers-securityconfiguration-securenamespaceinfo-clusterid */ readonly clusterId?: string; /** * The namespace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-securenamespaceinfo.html#cfn-emrcontainers-securityconfiguration-securenamespaceinfo-namespace */ readonly namespace?: string; } /** * Authentication configuration for the security configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authenticationconfiguration.html */ interface AuthenticationConfigurationProperty { /** * IAM configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authenticationconfiguration.html#cfn-emrcontainers-securityconfiguration-authenticationconfiguration-iamconfiguration */ readonly iamConfiguration?: CfnSecurityConfiguration.IAMConfigurationProperty | cdk.IResolvable; /** * Identity Center configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-authenticationconfiguration.html#cfn-emrcontainers-securityconfiguration-authenticationconfiguration-identitycenterconfiguration */ readonly identityCenterConfiguration?: CfnSecurityConfiguration.IdentityCenterConfigurationProperty | cdk.IResolvable; } /** * Identity Center configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-identitycenterconfiguration.html */ interface IdentityCenterConfigurationProperty { /** * Whether to enable Identity Center integration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-identitycenterconfiguration.html#cfn-emrcontainers-securityconfiguration-identitycenterconfiguration-enableidentitycenter */ readonly enableIdentityCenter?: boolean | cdk.IResolvable; /** * Whether Identity Center application assignment is required. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-identitycenterconfiguration.html#cfn-emrcontainers-securityconfiguration-identitycenterconfiguration-identitycenterapplicationassignmentrequired */ readonly identityCenterApplicationAssignmentRequired?: boolean | cdk.IResolvable; /** * The ARN of the Identity Center instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-identitycenterconfiguration.html#cfn-emrcontainers-securityconfiguration-identitycenterconfiguration-identitycenterinstancearn */ readonly identityCenterInstanceArn?: string; } /** * IAM configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-iamconfiguration.html */ interface IAMConfigurationProperty { /** * The system role ARN. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-iamconfiguration.html#cfn-emrcontainers-securityconfiguration-iamconfiguration-systemrole */ readonly systemRole?: string; } /** * Encryption configuration for the security configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-encryptionconfiguration.html */ interface EncryptionConfigurationProperty { /** * At-rest encryption configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-encryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-encryptionconfiguration-atrestencryptionconfiguration */ readonly atRestEncryptionConfiguration?: CfnSecurityConfiguration.AtRestEncryptionConfigurationProperty | cdk.IResolvable; /** * In-transit encryption configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-encryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-encryptionconfiguration-intransitencryptionconfiguration */ readonly inTransitEncryptionConfiguration?: CfnSecurityConfiguration.InTransitEncryptionConfigurationProperty | cdk.IResolvable; } /** * In-transit encryption configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-intransitencryptionconfiguration.html */ interface InTransitEncryptionConfigurationProperty { /** * TLS certificate configuration for in-transit encryption. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-intransitencryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-intransitencryptionconfiguration-tlscertificateconfiguration */ readonly tlsCertificateConfiguration?: cdk.IResolvable | CfnSecurityConfiguration.TLSCertificateConfigurationProperty; } /** * TLS certificate configuration for in-transit encryption. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-tlscertificateconfiguration.html */ interface TLSCertificateConfigurationProperty { /** * The certificate provider type. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-tlscertificateconfiguration.html#cfn-emrcontainers-securityconfiguration-tlscertificateconfiguration-certificateprovidertype */ readonly certificateProviderType?: string; /** * The ARN of the secret containing the private key. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-tlscertificateconfiguration.html#cfn-emrcontainers-securityconfiguration-tlscertificateconfiguration-privatekeysecretarn */ readonly privateKeySecretArn?: string; /** * The ARN of the secret containing the public key. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-tlscertificateconfiguration.html#cfn-emrcontainers-securityconfiguration-tlscertificateconfiguration-publickeysecretarn */ readonly publicKeySecretArn?: string; } /** * At-rest encryption configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-atrestencryptionconfiguration.html */ interface AtRestEncryptionConfigurationProperty { /** * Local disk encryption configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-atrestencryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-atrestencryptionconfiguration-localdiskencryptionconfiguration */ readonly localDiskEncryptionConfiguration?: cdk.IResolvable | CfnSecurityConfiguration.LocalDiskEncryptionConfigurationProperty; /** * S3 encryption configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-atrestencryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-atrestencryptionconfiguration-s3encryptionconfiguration */ readonly s3EncryptionConfiguration?: cdk.IResolvable | CfnSecurityConfiguration.S3EncryptionConfigurationProperty; } /** * S3 encryption configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-s3encryptionconfiguration.html */ interface S3EncryptionConfigurationProperty { /** * The S3 encryption option. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-s3encryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-s3encryptionconfiguration-encryptionoption */ readonly encryptionOption?: string; /** * The KMS key ID for encryption. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-s3encryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-s3encryptionconfiguration-kmskeyid */ readonly kmsKeyId?: string; } /** * Local disk encryption configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-localdiskencryptionconfiguration.html */ interface LocalDiskEncryptionConfigurationProperty { /** * The AWS KMS key ID. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-localdiskencryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-localdiskencryptionconfiguration-awskmskeyid */ readonly awsKmsKeyId?: string; /** * The encryption key provider type. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-securityconfiguration-localdiskencryptionconfiguration.html#cfn-emrcontainers-securityconfiguration-localdiskencryptionconfiguration-encryptionkeyprovidertype */ readonly encryptionKeyProviderType?: string; } } /** * Properties for defining a `CfnSecurityConfiguration` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html */ export interface CfnSecurityConfigurationProps { /** * Container provider information. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html#cfn-emrcontainers-securityconfiguration-containerprovider */ readonly containerProvider?: CfnSecurityConfiguration.ContainerProviderProperty | cdk.IResolvable; /** * The name of the security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html#cfn-emrcontainers-securityconfiguration-name */ readonly name?: string; /** * Security configuration data containing encryption and authorization settings. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html#cfn-emrcontainers-securityconfiguration-securityconfigurationdata */ readonly securityConfigurationData: cdk.IResolvable | CfnSecurityConfiguration.SecurityConfigurationDataProperty; /** * An array of key-value pairs to apply to this security configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-securityconfiguration.html#cfn-emrcontainers-securityconfiguration-tags */ readonly tags?: Array<cdk.CfnTag>; } export type { IVirtualClusterRef, VirtualClusterReference }; export type { IEndpointRef, EndpointReference }; export type { ISecurityConfigurationRef, SecurityConfigurationReference };