UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

914 lines 338 kB
import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { CertificateReference, DataMigrationReference, DataProviderReference, EndpointReference, EventSubscriptionReference, ICertificateRef, IDataMigrationRef, IDataProviderRef, IEndpointRef, IEventSubscriptionRef, IInstanceProfileRef, IMigrationProjectRef, InstanceProfileReference, IReplicationConfigRef, IReplicationInstanceRef, IReplicationSubnetGroupRef, IReplicationTaskRef, MigrationProjectReference, ReplicationConfigReference, ReplicationInstanceReference, ReplicationSubnetGroupReference, ReplicationTaskReference } from "../../interfaces/generated/aws-dms-interfaces.generated"; /** * The `AWS::DMS::Certificate` resource creates an Secure Sockets Layer (SSL) certificate that encrypts connections between AWS DMS endpoints and the replication instance. * * @cloudformationResource AWS::DMS::Certificate * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html */ export declare class CfnCertificate extends cdk.CfnResource implements cdk.IInspectable, ICertificateRef { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnCertificate 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): CfnCertificate; /** * Checks whether the given object is a CfnCertificate */ static isCfnCertificate(x: any): x is CfnCertificate; /** * Creates a new ICertificateRef from a certificateId */ static fromCertificateId(scope: constructs.Construct, id: string, certificateId: string): ICertificateRef; static arnForCertificate(resource: ICertificateRef): string; /** * A customer-assigned name for the certificate. */ private _certificateIdentifier?; /** * The contents of a `.pem` file, which contains an X.509 certificate. */ private _certificatePem?; /** * The location of an imported Oracle Wallet certificate for use with SSL. */ private _certificateWallet?; /** * Create a new `AWS::DMS::Certificate`. * * @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?: CfnCertificateProps); get certificateRef(): CertificateReference; /** * A customer-assigned name for the certificate. */ get certificateIdentifier(): string | undefined; /** * A customer-assigned name for the certificate. */ set certificateIdentifier(value: string | undefined); /** * The contents of a `.pem` file, which contains an X.509 certificate. */ get certificatePem(): string | undefined; /** * The contents of a `.pem` file, which contains an X.509 certificate. */ set certificatePem(value: string | undefined); /** * The location of an imported Oracle Wallet certificate for use with SSL. */ get certificateWallet(): string | undefined; /** * The location of an imported Oracle Wallet certificate for use with SSL. */ set certificateWallet(value: string | undefined); /** * @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>; } /** * Properties for defining a `CfnCertificate` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html */ export interface CfnCertificateProps { /** * A customer-assigned name for the certificate. * * Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificateidentifier */ readonly certificateIdentifier?: string; /** * The contents of a `.pem` file, which contains an X.509 certificate. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatepem */ readonly certificatePem?: string; /** * The location of an imported Oracle Wallet certificate for use with SSL. * * An example is: `filebase64("${path.root}/rds-ca-2019-root.sso")` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatewallet */ readonly certificateWallet?: string; } /** * The `AWS::DMS::Endpoint` resource specifies an AWS DMS endpoint. * * Currently, AWS CloudFormation supports all AWS DMS endpoint types. * * @cloudformationResource AWS::DMS::Endpoint * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html */ export declare class CfnEndpoint extends cdk.CfnResource implements cdk.IInspectable, IEndpointRef, cdk.ITaggable { /** * 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; /** * Creates a new IEndpointRef from a endpointId */ static fromEndpointId(scope: constructs.Construct, id: string, endpointId: string): IEndpointRef; static arnForEndpoint(resource: IEndpointRef): string; /** * The Amazon Resource Name (ARN) for the certificate. */ private _certificateArn?; /** * The name of the endpoint database. */ private _databaseName?; /** * Settings in JSON format for the source and target DocumentDB endpoint. */ private _docDbSettings?; /** * Settings in JSON format for the target Amazon DynamoDB endpoint. */ private _dynamoDbSettings?; /** * Settings in JSON format for the target OpenSearch endpoint. */ private _elasticsearchSettings?; /** * The database endpoint identifier. */ private _endpointIdentifier?; /** * The type of endpoint. */ private _endpointType; /** * The type of engine for the endpoint, depending on the `EndpointType` value. */ private _engineName; /** * Additional attributes associated with the connection. */ private _extraConnectionAttributes?; /** * Settings in JSON format for the source GCP MySQL endpoint. */ private _gcpMySqlSettings?; /** * Settings in JSON format for the source IBM Db2 LUW endpoint. */ private _ibmDb2Settings?; /** * Settings in JSON format for the target Apache Kafka endpoint. */ private _kafkaSettings?; /** * Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. */ private _kinesisSettings?; /** * An AWS key identifier that is used to encrypt the connection parameters for the endpoint. */ private _kmsKeyId?; /** * Settings in JSON format for the source and target Microsoft SQL Server endpoint. */ private _microsoftSqlServerSettings?; /** * Settings in JSON format for the source MongoDB endpoint. */ private _mongoDbSettings?; /** * Settings in JSON format for the source and target MySQL endpoint. */ private _mySqlSettings?; /** * Settings in JSON format for the target Amazon Neptune endpoint. */ private _neptuneSettings?; /** * Settings in JSON format for the source and target Oracle endpoint. */ private _oracleSettings?; /** * The password to be used to log in to the endpoint database. */ private _password?; /** * The port used by the endpoint database. */ private _port?; /** * Settings in JSON format for the source and target PostgreSQL endpoint. */ private _postgreSqlSettings?; /** * Settings in JSON format for the target Redis endpoint. */ private _redisSettings?; /** * Settings in JSON format for the Amazon Redshift endpoint. */ private _redshiftSettings?; /** * A display name for the resource identifier at the end of the `EndpointArn` response parameter that is returned in the created `Endpoint` object. */ private _resourceIdentifier?; /** * Settings in JSON format for the source and target Amazon S3 endpoint. */ private _s3Settings?; /** * The name of the server where the endpoint database resides. */ private _serverName?; /** * The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is `none` . */ private _sslMode?; /** * Settings in JSON format for the source and target SAP ASE endpoint. */ private _sybaseSettings?; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * One or more tags to be assigned to the endpoint. */ private _tagsRaw?; /** * The user name to be used to log in to the endpoint database. */ private _username?; /** * Create a new `AWS::DMS::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; /** * The Amazon Resource Name (ARN) for the certificate. */ get certificateArn(): string | undefined; /** * The Amazon Resource Name (ARN) for the certificate. */ set certificateArn(value: string | undefined); /** * The name of the endpoint database. */ get databaseName(): string | undefined; /** * The name of the endpoint database. */ set databaseName(value: string | undefined); /** * Settings in JSON format for the source and target DocumentDB endpoint. */ get docDbSettings(): CfnEndpoint.DocDbSettingsProperty | cdk.IResolvable | undefined; /** * Settings in JSON format for the source and target DocumentDB endpoint. */ set docDbSettings(value: CfnEndpoint.DocDbSettingsProperty | cdk.IResolvable | undefined); /** * Settings in JSON format for the target Amazon DynamoDB endpoint. */ get dynamoDbSettings(): CfnEndpoint.DynamoDbSettingsProperty | cdk.IResolvable | undefined; /** * Settings in JSON format for the target Amazon DynamoDB endpoint. */ set dynamoDbSettings(value: CfnEndpoint.DynamoDbSettingsProperty | cdk.IResolvable | undefined); /** * Settings in JSON format for the target OpenSearch endpoint. */ get elasticsearchSettings(): CfnEndpoint.ElasticsearchSettingsProperty | cdk.IResolvable | undefined; /** * Settings in JSON format for the target OpenSearch endpoint. */ set elasticsearchSettings(value: CfnEndpoint.ElasticsearchSettingsProperty | cdk.IResolvable | undefined); /** * The database endpoint identifier. */ get endpointIdentifier(): string | undefined; /** * The database endpoint identifier. */ set endpointIdentifier(value: string | undefined); /** * The type of endpoint. */ get endpointType(): string; /** * The type of endpoint. */ set endpointType(value: string); /** * The type of engine for the endpoint, depending on the `EndpointType` value. */ get engineName(): string; /** * The type of engine for the endpoint, depending on the `EndpointType` value. */ set engineName(value: string); /** * Additional attributes associated with the connection. */ get extraConnectionAttributes(): string | undefined; /** * Additional attributes associated with the connection. */ set extraConnectionAttributes(value: string | undefined); /** * Settings in JSON format for the source GCP MySQL endpoint. */ get gcpMySqlSettings(): CfnEndpoint.GcpMySQLSettingsProperty | cdk.IResolvable | undefined; /** * Settings in JSON format for the source GCP MySQL endpoint. */ set gcpMySqlSettings(value: CfnEndpoint.GcpMySQLSettingsProperty | cdk.IResolvable | undefined); /** * Settings in JSON format for the source IBM Db2 LUW endpoint. */ get ibmDb2Settings(): CfnEndpoint.IbmDb2SettingsProperty | cdk.IResolvable | undefined; /** * Settings in JSON format for the source IBM Db2 LUW endpoint. */ set ibmDb2Settings(value: CfnEndpoint.IbmDb2SettingsProperty | cdk.IResolvable | undefined); /** * Settings in JSON format for the target Apache Kafka endpoint. */ get kafkaSettings(): cdk.IResolvable | CfnEndpoint.KafkaSettingsProperty | undefined; /** * Settings in JSON format for the target Apache Kafka endpoint. */ set kafkaSettings(value: cdk.IResolvable | CfnEndpoint.KafkaSettingsProperty | undefined); /** * Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. */ get kinesisSettings(): cdk.IResolvable | CfnEndpoint.KinesisSettingsProperty | undefined; /** * Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. */ set kinesisSettings(value: cdk.IResolvable | CfnEndpoint.KinesisSettingsProperty | undefined); /** * An AWS key identifier that is used to encrypt the connection parameters for the endpoint. */ get kmsKeyId(): string | undefined; /** * An AWS key identifier that is used to encrypt the connection parameters for the endpoint. */ set kmsKeyId(value: string | undefined); /** * Settings in JSON format for the source and target Microsoft SQL Server endpoint. */ get microsoftSqlServerSettings(): cdk.IResolvable | CfnEndpoint.MicrosoftSqlServerSettingsProperty | undefined; /** * Settings in JSON format for the source and target Microsoft SQL Server endpoint. */ set microsoftSqlServerSettings(value: cdk.IResolvable | CfnEndpoint.MicrosoftSqlServerSettingsProperty | undefined); /** * Settings in JSON format for the source MongoDB endpoint. */ get mongoDbSettings(): cdk.IResolvable | CfnEndpoint.MongoDbSettingsProperty | undefined; /** * Settings in JSON format for the source MongoDB endpoint. */ set mongoDbSettings(value: cdk.IResolvable | CfnEndpoint.MongoDbSettingsProperty | undefined); /** * Settings in JSON format for the source and target MySQL endpoint. */ get mySqlSettings(): cdk.IResolvable | CfnEndpoint.MySqlSettingsProperty | undefined; /** * Settings in JSON format for the source and target MySQL endpoint. */ set mySqlSettings(value: cdk.IResolvable | CfnEndpoint.MySqlSettingsProperty | undefined); /** * Settings in JSON format for the target Amazon Neptune endpoint. */ get neptuneSettings(): cdk.IResolvable | CfnEndpoint.NeptuneSettingsProperty | undefined; /** * Settings in JSON format for the target Amazon Neptune endpoint. */ set neptuneSettings(value: cdk.IResolvable | CfnEndpoint.NeptuneSettingsProperty | undefined); /** * Settings in JSON format for the source and target Oracle endpoint. */ get oracleSettings(): cdk.IResolvable | CfnEndpoint.OracleSettingsProperty | undefined; /** * Settings in JSON format for the source and target Oracle endpoint. */ set oracleSettings(value: cdk.IResolvable | CfnEndpoint.OracleSettingsProperty | undefined); /** * The password to be used to log in to the endpoint database. */ get password(): string | undefined; /** * The password to be used to log in to the endpoint database. */ set password(value: string | undefined); /** * The port used by the endpoint database. */ get port(): number | undefined; /** * The port used by the endpoint database. */ set port(value: number | undefined); /** * Settings in JSON format for the source and target PostgreSQL endpoint. */ get postgreSqlSettings(): cdk.IResolvable | CfnEndpoint.PostgreSqlSettingsProperty | undefined; /** * Settings in JSON format for the source and target PostgreSQL endpoint. */ set postgreSqlSettings(value: cdk.IResolvable | CfnEndpoint.PostgreSqlSettingsProperty | undefined); /** * Settings in JSON format for the target Redis endpoint. */ get redisSettings(): cdk.IResolvable | CfnEndpoint.RedisSettingsProperty | undefined; /** * Settings in JSON format for the target Redis endpoint. */ set redisSettings(value: cdk.IResolvable | CfnEndpoint.RedisSettingsProperty | undefined); /** * Settings in JSON format for the Amazon Redshift endpoint. */ get redshiftSettings(): cdk.IResolvable | CfnEndpoint.RedshiftSettingsProperty | undefined; /** * Settings in JSON format for the Amazon Redshift endpoint. */ set redshiftSettings(value: cdk.IResolvable | CfnEndpoint.RedshiftSettingsProperty | undefined); /** * A display name for the resource identifier at the end of the `EndpointArn` response parameter that is returned in the created `Endpoint` object. */ get resourceIdentifier(): string | undefined; /** * A display name for the resource identifier at the end of the `EndpointArn` response parameter that is returned in the created `Endpoint` object. */ set resourceIdentifier(value: string | undefined); /** * Settings in JSON format for the source and target Amazon S3 endpoint. */ get s3Settings(): cdk.IResolvable | CfnEndpoint.S3SettingsProperty | undefined; /** * Settings in JSON format for the source and target Amazon S3 endpoint. */ set s3Settings(value: cdk.IResolvable | CfnEndpoint.S3SettingsProperty | undefined); /** * The name of the server where the endpoint database resides. */ get serverName(): string | undefined; /** * The name of the server where the endpoint database resides. */ set serverName(value: string | undefined); /** * The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is `none` . */ get sslMode(): string | undefined; /** * The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is `none` . */ set sslMode(value: string | undefined); /** * Settings in JSON format for the source and target SAP ASE endpoint. */ get sybaseSettings(): cdk.IResolvable | CfnEndpoint.SybaseSettingsProperty | undefined; /** * Settings in JSON format for the source and target SAP ASE endpoint. */ set sybaseSettings(value: cdk.IResolvable | CfnEndpoint.SybaseSettingsProperty | undefined); /** * One or more tags to be assigned to the endpoint. */ get tagsRaw(): Array<cdk.CfnTag> | undefined; /** * One or more tags to be assigned to the endpoint. */ set tagsRaw(value: Array<cdk.CfnTag> | undefined); /** * The user name to be used to log in to the endpoint database. */ get username(): string | undefined; /** * The user name to be used to log in to the endpoint database. */ set username(value: string | undefined); /** * A value that can be used for cross-account validation. * * @cloudformationAttribute ExternalId */ get attrExternalId(): string; /** * @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 CfnEndpoint { /** * Provides information that defines a SAP ASE endpoint. * * This information includes the output format of records applied to the endpoint and details of transaction and control table data information. For information about other available settings, see [Extra connection attributes when using SAP ASE as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib) and [Extra connection attributes when using SAP ASE as a target for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib) in the *AWS Database Migration Service User Guide* . * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html */ interface SybaseSettingsProperty { /** * The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS as the trusted entity and grants the required permissions to access the value in `SecretsManagerSecret` . * * The role must allow the `iam:PassRole` action. `SecretsManagerSecret` has the value of the AWS Secrets Manager secret that allows access to the SAP ASE endpoint. * * > You can specify one of two sets of values for these permissions. You can specify the values for this setting and `SecretsManagerSecretId` . Or you can specify clear-text values for `UserName` , `Password` , `ServerName` , and `Port` . You can't specify both. * > * > For more information on creating this `SecretsManagerSecret` , the corresponding `SecretsManagerAccessRoleArn` , and the `SecretsManagerSecretId` that is required to access it, see [Using secrets to access AWS Database Migration Service resources](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager) in the *AWS Database Migration Service User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html#cfn-dms-endpoint-sybasesettings-secretsmanageraccessrolearn */ readonly secretsManagerAccessRoleArn?: string; /** * The full ARN, partial ARN, or display name of the `SecretsManagerSecret` that contains the SAP SAE endpoint connection details. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-sybasesettings.html#cfn-dms-endpoint-sybasesettings-secretsmanagersecretid */ readonly secretsManagerSecretId?: string; } /** * Provides information that defines a Redis target endpoint. * * This information includes the output format of records applied to the endpoint and details of transaction and control table data information. For information about other available settings, see [Specifying endpoint settings for Redis as a target](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Redis.html#CHAP_Target.Redis.EndpointSettings) in the *AWS Database Migration Service User Guide* . * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html */ interface RedisSettingsProperty { /** * The password provided with the `auth-role` and `auth-token` options of the `AuthType` setting for a Redis target endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-authpassword */ readonly authPassword?: string; /** * The type of authentication to perform when connecting to a Redis target. * * Options include `none` , `auth-token` , and `auth-role` . The `auth-token` option requires an `AuthPassword` value to be provided. The `auth-role` option requires `AuthUserName` and `AuthPassword` values to be provided. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-authtype */ readonly authType?: string; /** * The user name provided with the `auth-role` option of the `AuthType` setting for a Redis target endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-authusername */ readonly authUserName?: string; /** * Transmission Control Protocol (TCP) port for the endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-port */ readonly port?: number; /** * Fully qualified domain name of the endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-servername */ readonly serverName?: string; /** * The Amazon Resource Name (ARN) for the certificate authority (CA) that DMS uses to connect to your Redis target endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-sslcacertificatearn */ readonly sslCaCertificateArn?: string; /** * The connection to a Redis target endpoint using Transport Layer Security (TLS). * * Valid values include `plaintext` and `ssl-encryption` . The default is `ssl-encryption` . The `ssl-encryption` option makes an encrypted connection. Optionally, you can identify an Amazon Resource Name (ARN) for an SSL certificate authority (CA) using the `SslCaCertificateArn` setting. If an ARN isn't given for a CA, DMS uses the Amazon root CA. * * The `plaintext` option doesn't provide Transport Layer Security (TLS) encryption for traffic between endpoint and database. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-redissettings.html#cfn-dms-endpoint-redissettings-sslsecurityprotocol */ readonly sslSecurityProtocol?: string; } /** * Provides information that defines an Oracle endpoint. * * This information includes the output format of records applied to the endpoint and details of transaction and control table data information. For information about other available settings, see [Extra connection attributes when using Oracle as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib) and [Extra connection attributes when using Oracle as a target for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib) in the *AWS Database Migration Service User Guide* . * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html */ interface OracleSettingsProperty { /** * Set this attribute to `false` in order to use the Binary Reader to capture change data for an Amazon RDS for Oracle as the source. * * This tells the DMS instance to not access redo logs through any specified path prefix replacement using direct file access. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-accessalternatedirectly */ readonly accessAlternateDirectly?: boolean | cdk.IResolvable; /** * Set this attribute with `ArchivedLogDestId` in a primary/ standby setup. * * This attribute is useful in the case of a switchover. In this case, AWS DMS needs to know which destination to get archive redo logs from to read changes. This need arises because the previous primary instance is now a standby instance after switchover. * * Although AWS DMS supports the use of the Oracle `RESETLOGS` option to open the database, never use `RESETLOGS` unless necessary. For additional information about `RESETLOGS` , see [RMAN Data Repair Concepts](https://docs.aws.amazon.com/https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/rman-data-repair-concepts.html#GUID-1805CCF7-4AF2-482D-B65A-998192F89C2B) in the *Oracle Database Backup and Recovery User's Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-additionalarchivedlogdestid */ readonly additionalArchivedLogDestId?: number; /** * Set this attribute to set up table-level supplemental logging for the Oracle database. * * This attribute enables PRIMARY KEY supplemental logging on all tables selected for a migration task. * * If you use this option, you still need to enable database-level supplemental logging. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-addsupplementallogging */ readonly addSupplementalLogging?: boolean | cdk.IResolvable; /** * Set this attribute to `true` to enable replication of Oracle tables containing columns that are nested tables or defined types. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-allowselectnestedtables */ readonly allowSelectNestedTables?: boolean | cdk.IResolvable; /** * Specifies the ID of the destination for the archived redo logs. * * This value should be the same as a number in the dest_id column of the v$archived_log view. If you work with an additional redo log destination, use the `AdditionalArchivedLogDestId` option to specify the additional destination ID. Doing this improves performance by ensuring that the correct logs are accessed from the outset. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-archivedlogdestid */ readonly archivedLogDestId?: number; /** * When this field is set to `True` , AWS DMS only accesses the archived redo logs. * * If the archived redo logs are stored on Automatic Storage Management (ASM) only, the AWS DMS user account needs to be granted ASM privileges. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-archivedlogsonly */ readonly archivedLogsOnly?: boolean | cdk.IResolvable; /** * For an Oracle source endpoint, your Oracle Automatic Storage Management (ASM) password. * * You can set this value from the `*asm_user_password*` value. You set this value as part of the comma-separated value that you set to the `Password` request parameter when you create the endpoint to access transaction logs using Binary Reader. For more information, see [Configuration for change data capture (CDC) on an Oracle source database](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-asmpassword */ readonly asmPassword?: string; /** * For an Oracle source endpoint, your ASM server address. * * You can set this value from the `asm_server` value. You set `asm_server` as part of the extra connection attribute string to access an Oracle server with Binary Reader that uses ASM. For more information, see [Configuration for change data capture (CDC) on an Oracle source database](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-asmserver */ readonly asmServer?: string; /** * For an Oracle source endpoint, your ASM user name. * * You can set this value from the `asm_user` value. You set `asm_user` as part of the extra connection attribute string to access an Oracle server with Binary Reader that uses ASM. For more information, see [Configuration for change data capture (CDC) on an Oracle source database](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.CDC.Configuration) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-asmuser */ readonly asmUser?: string; /** * Specifies whether the length of a character column is in bytes or in characters. * * To indicate that the character column length is in characters, set this attribute to `CHAR` . Otherwise, the character column length is in bytes. * * Example: `charLengthSemantics=CHAR;` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-charlengthsemantics */ readonly charLengthSemantics?: string; /** * When set to `true` , this attribute helps to increase the commit rate on the Oracle target database by writing directly to tables and not writing a trail to database logs. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-directpathnolog */ readonly directPathNoLog?: boolean | cdk.IResolvable; /** * When set to `true` , this attribute specifies a parallel load when `useDirectPathFullLoad` is set to `Y` . * * This attribute also only applies when you use the AWS DMS parallel load feature. Note that the target table cannot have any constraints or indexes. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-directpathparallelload */ readonly directPathParallelLoad?: boolean | cdk.IResolvable; /** * Set this attribute to enable homogenous tablespace replication and create existing tables or indexes under the same tablespace on the target. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-enablehomogenoustablespace */ readonly enableHomogenousTablespace?: boolean | cdk.IResolvable; /** * Specifies the IDs of one more destinations for one or more archived redo logs. * * These IDs are the values of the `dest_id` column in the `v$archived_log` view. Use this setting with the `archivedLogDestId` extra connection attribute in a primary-to-single setup or a primary-to-multiple-standby setup. * * This setting is useful in a switchover when you use an Oracle Data Guard database as a source. In this case, AWS DMS needs information about what destination to get archive redo logs from to read changes. AWS DMS needs this because after the switchover the previous primary is a standby instance. For example, in a primary-to-single standby setup you might apply the following settings. * * `archivedLogDestId=1; ExtraArchivedLogDestIds=[2]` * * In a primary-to-multiple-standby setup, you might apply the following settings. * * `archivedLogDestId=1; ExtraArchivedLogDestIds=[2,3,4]` * * Although AWS DMS supports the use of the Oracle `RESETLOGS` option to open the database, never use `RESETLOGS` unless it's necessary. For more information about `RESETLOGS` , see [RMAN Data Repair Concepts](https://docs.aws.amazon.com/https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/rman-data-repair-concepts.html#GUID-1805CCF7-4AF2-482D-B65A-998192F89C2B) in the *Oracle Database Backup and Recovery User's Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-extraarchivedlogdestids */ readonly extraArchivedLogDestIds?: Array<number> | cdk.IResolvable; /** * When set to `true` , this attribute causes a task to fail if the actual size of an LOB column is greater than the specified `LobMaxSize` . * * If a task is set to limited LOB mode and this option is set to `true` , the task fails instead of truncating the LOB data. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-failtasksonlobtruncation */ readonly failTasksOnLobTruncation?: boolean | cdk.IResolvable; /** * Specifies the number scale. * * You can select a scale up to 38, or you can select FLOAT. By default, the NUMBER data type is converted to precision 38, scale 10. * * Example: `numberDataTypeScale=12` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-numberdatatypescale */ readonly numberDatatypeScale?: number; /** * Set this string attribute to the required value in order to use the Binary Reader to capture change data for an Amazon RDS for Oracle as the source. * * This value specifies the default Oracle root used to access the redo logs. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-oraclepathprefix */ readonly oraclePathPrefix?: string; /** * Set this attribute to change the number of threads that DMS configures to perform a change data capture (CDC) load using Oracle Automatic Storage Management (ASM). * * You can specify an integer value between 2 (the default) and 8 (the maximum). Use this attribute together with the `readAheadBlocks` attribute. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-parallelasmreadthreads */ readonly parallelAsmReadThreads?: number; /** * Set this attribute to change the number of read-ahead blocks that DMS configures to perform a change data capture (CDC) load using Oracle Automatic Storage Management (ASM). * * You can specify an integer value between 1000 (the default) and 200,000 (the maximum). * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-readaheadblocks */ readonly readAheadBlocks?: number; /** * When set to `true` , this attribute supports tablespace replication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-readtablespacename */ readonly readTableSpaceName?: boolean | cdk.IResolvable; /** * Set this attribute to true in order to use the Binary Reader to capture change data for an Amazon RDS for Oracle as the source. * * This setting tells DMS instance to replace the default Oracle root with the specified `usePathPrefix` setting to access the redo logs. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-replacepathprefix */ readonly replacePathPrefix?: boolean | cdk.IResolvable; /** * Specifies the number of seconds that the system waits before resending a query. * * Example: `retryInterval=6;` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-retryinterval */ readonly retryInterval?: number; /** * The full Amazon Resource Name (ARN) of the IAM role that specifies AWS DMS as the trusted entity and grants the required permissions to access the value in `SecretsManagerSecret` . * * The role must allow the `iam:PassRole` action. `SecretsManagerSecret` has the value of the AWS Secrets Manager secret that allows access to the Oracle endpoint. * * > You can specify one of two sets of values for these permissions. You can specify the values for this setting and `SecretsManagerSecretId` . Or you can specify clear-text values for `UserName` , `Password` , `ServerName` , and `Port` . You can't specify both. * > * > For more information on creating this `SecretsManagerSecret` , the corresponding `SecretsManagerAccessRoleArn` , and the `SecretsManagerSecretId` that is required to access it, see [Using secrets to access AWS Database Migration Service resources](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager) in the *AWS Database Migration Service User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageraccessrolearn */ readonly secretsManagerAccessRoleArn?: string; /** * Required only if your Oracle endpoint uses Advanced Storage Manager (ASM). * * The full ARN of the IAM role that specifies AWS DMS as the trusted entity and grants the required permissions to access the `SecretsManagerOracleAsmSecret` . This `SecretsManagerOracleAsmSecret` has the secret value that allows access to the Oracle ASM of the endpoint. * * > You can specify one of two sets of values for these permissions. You can specify the values for this setting and `SecretsManagerOracleAsmSecretId` . Or you can specify clear-text values for `AsmUser` , `AsmPassword` , and `AsmServerName` . You can't specify both. * > * > For more information on creating this `SecretsManagerOracleAsmSecret` , the corresponding `SecretsManagerOracleAsmAccessRoleArn` , and the `SecretsManagerOracleAsmSecretId` that is required to access it, see [Using secrets to access AWS Database Migration Service resources](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Security.html#security-iam-secretsmanager) in the *AWS Database Migration Service User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageroracleasmaccessrolearn */ readonly secretsManagerOracleAsmAccessRoleArn?: string; /** * Required only if your Oracle endpoint uses Advanced Storage Manager (ASM). * * The full ARN, partial ARN, or display name of the `SecretsManagerOracleAsmSecret` that contains the Oracle ASM connection details for the Oracle endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanageroracleasmsecretid */ readonly secretsManagerOracleAsmSecretId?: string; /** * The full ARN, partial ARN, or display name of the `SecretsManagerSecret` that contains the Oracle endpoint connection details. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-secretsmanagersecretid */ readonly secretsManagerSecretId?: string; /** * For an Oracle source endpoint, the transparent data encryption (TDE) password required by AWM DMS to access Oracle redo logs encrypted by TDE using Binary Reader. * * It is also the `*TDE_Password*` part of the comma-separated value you set to the `Password` request parameter when you create the endpoint. The `SecurityDbEncryptian` setting is related to this `SecurityDbEncryptionName` setting. For more information, see [Supported encryption methods for using Oracle as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption) in the *AWS Database Migration Service User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-securitydbencryption */ readonly securityDbEncryption?: string; /** * For an Oracle source endpoint, the name of a key used for the transparent data encryption (TDE) of the columns and tablespaces in an Oracle source database that is encrypted using TDE. * * The key value is the value of the `SecurityDbEncryption` setting. For more information on setting the key name value of `SecurityDbEncryptionName` , see the information and example for setting the `securityDbEncryptionName` extra connection attribute in [Supported encryption methods for using Oracle as a source for AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Encryption) in the *AWS Database Migration Service User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-securitydbencryptionname */ readonly securityDbEncryptionName?: string; /** * Use this attribute to convert `SDO_GEOMETRY` to `GEOJSON` format. * * By default, DMS calls the `SDO2GEOJSON` custom function if present and accessible. Or you can create your own custom function that mimics the operation of `SDOGEOJSON` and set `SpatialDataOptionToGeoJsonFunctionName` to call it instead. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dms-endpoint-oraclesettings.html#cfn-dms-endpoint-oraclesettings-spatialdataoptiontogeojsonfunctionname */ readonly spatialDataOptionToGeoJsonFunctionName?: string; /** * Use this attribute to specify a time in minutes for the delay in standby sync. * * If the source is an Oracle Active Data Guard standby database, use this attribute to specify the time lag between primary and standby databases. * * In AWS DMS , you can create an Oracle CDC task that uses an Active Data Guard standby instance as a source for replicating ongoing changes. Doing this eliminates the need to connect to an ac