# CfnDataProviderProps

Properties for defining a `CfnDataProvider`.

Extends: CfnDataProviderProps
Used as props by: CfnDataProvider

- Source: Generated code
- Type last changed: v2.275.0 · 26 Oct 2026

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_dms as dms } from 'aws-cdk-lib';
const cfnDataProviderProps: dms.CfnDataProviderProps = {
  engine: 'engine',

  // the properties below are optional
  dataProviderIdentifier: 'dataProviderIdentifier',
  dataProviderName: 'dataProviderName',
  description: 'description',
  exactSettings: false,
  settings: {
    docDbSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',

      // the properties below are optional
      certificateArn: 'certificateArn',
      sslMode: 'sslMode',
    },
    ibmDb2LuwSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
      encryptionAlgorithm: 123,
      securityMechanism: 123,
    },
    ibmDb2ZOsSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
    },
    mariaDbSettings: {
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
    },
    microsoftSqlServerSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
      s3AccessRoleArn: 's3AccessRoleArn',
      s3Path: 's3Path',
    },
    mongoDbSettings: {
      port: 123,
      serverName: 'serverName',

      // the properties below are optional
      authMechanism: 'authMechanism',
      authSource: 'authSource',
      authType: 'authType',
      certificateArn: 'certificateArn',
      databaseName: 'databaseName',
      sslMode: 'sslMode',
    },
    mySqlSettings: {
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
    },
    oracleSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      asmServer: 'asmServer',
      certificateArn: 'certificateArn',
      secretsManagerOracleAsmAccessRoleArn: 'secretsManagerOracleAsmAccessRoleArn',
      secretsManagerOracleAsmSecretId: 'secretsManagerOracleAsmSecretId',
      secretsManagerSecurityDbEncryptionAccessRoleArn: 'secretsManagerSecurityDbEncryptionAccessRoleArn',
      secretsManagerSecurityDbEncryptionSecretId: 'secretsManagerSecurityDbEncryptionSecretId',
    },
    postgreSqlSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
    },
    redshiftSettings: {
      databaseName: 'databaseName',
      port: 123,
      serverName: 'serverName',
    },
    sybaseAseSettings: {
      port: 123,
      serverName: 'serverName',
      sslMode: 'sslMode',

      // the properties below are optional
      certificateArn: 'certificateArn',
      databaseName: 'databaseName',
      encryptPassword: false,
    },
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
  virtual: false,
};
```

## Properties

- `dataProviderIdentifier`: string — this property has been deprecated

  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.

- `dataProviderName`: string — The name of the data provider.

- `description`: string — A description of the data provider.

  Descriptions can have up to 31 characters. A description can contain only ASCII letters, digits, and hyphens ('-'). Also, it can't end with a hyphen or contain two consecutive hyphens, and can only begin with a letter.

- `engine`: string (required) — The type of database engine for the data provider.

  Valid values include `"aurora"` , `"aurora-postgresql"` , `"mysql"` , `"oracle"` , `"postgres"` , `"sqlserver"` , `redshift` , `mariadb` , `mongodb` , `db2` , `db2-zos` , `docdb` , and `sybase` . A value of `"aurora"` represents Amazon Aurora MySQL-Compatible Edition.

- `exactSettings`: boolean | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) = false — The property describes the exact settings which can be modified.

- `settings`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnDataProvider.SettingsProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_dms.CfnDataProvider.SettingsProperty.html) — The settings in JSON format for a data provider.

- `tags`: [CfnTag](/cdk/api/v2/docs/aws-cdk-lib.CfnTag.html)[] — An array of key-value pairs to apply to this resource.

- `virtual`: boolean | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) = false — Indicates whether the data provider is virtual.
