Skip to content

azurermDataFactoryLinkedServiceAzureSqlDatabase

Manages a Linked Service (connection) between Azure SQL Database and Azure Data Factory.

\~> Note: All arguments including the connection_string will be stored in the raw state as plain-text. Read more about sensitive data in state.

Example Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
  this,
  "example",
  {
    location: "West Europe",
    name: "example-resources",
  }
);
const azurermDataFactoryExample = new azurerm.dataFactory.DataFactory(
  this,
  "example_1",
  {
    location: azurermResourceGroupExample.location,
    name: "example",
    resource_group_name: azurermResourceGroupExample.name,
  }
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermDataFactoryExample.overrideLogicalId("example");
const azurermDataFactoryLinkedServiceAzureSqlDatabaseExample =
  new azurerm.dataFactoryLinkedServiceAzureSqlDatabase.DataFactoryLinkedServiceAzureSqlDatabase(
    this,
    "example_2",
    {
      connection_string:
        "data source=serverhostname;initial catalog=master;user id=testUser;Password=test;integrated security=False;encrypt=True;connection timeout=30",
      data_factory_id: azurermDataFactoryExample.id,
      name: "example",
    }
  );
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermDataFactoryLinkedServiceAzureSqlDatabaseExample.overrideLogicalId(
  "example"
);

Argument Reference

The following arguments are supported:

  • name - (Required) Specifies the name of the Data Factory Linked Service Azure SQL Database. Changing this forces a new resource to be created. Must be unique within a data factory. See the Microsoft documentation for all restrictions.

  • dataFactoryId - (Required) The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource.

  • connectionString - (Optional) The connection string in which to authenticate with Azure SQL Database. Exactly one of either connectionString or keyVaultConnectionString is required.

  • useManagedIdentity - (Optional) Whether to use the Data Factory's managed identity to authenticate against the Azure SQL Database. Incompatible with servicePrincipalId and servicePrincipalKey

  • servicePrincipalId - (Optional) The service principal id in which to authenticate against the Azure SQL Database. Required if servicePrincipalKey is set.

  • servicePrincipalKey - (Optional) The service principal key in which to authenticate against the Azure SQL Database. Required if servicePrincipalId is set.

  • tenantId - (Optional) The tenant id or name in which to authenticate against the Azure SQL Database.

  • description - (Optional) The description for the Data Factory Linked Service Azure SQL Database.

  • integrationRuntimeName - (Optional) The integration runtime reference to associate with the Data Factory Linked Service Azure SQL Database.

  • annotations - (Optional) List of tags that can be used for describing the Data Factory Linked Service Azure SQL Database.

  • parameters - (Optional) A map of parameters to associate with the Data Factory Linked Service Azure SQL Database.

  • additionalProperties - (Optional) A map of additional properties to associate with the Data Factory Linked Service Azure SQL Database.

  • keyVaultConnectionString - (Optional) A keyVaultConnectionString block as defined below. Use this argument to store Azure SQL Database connection string in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either connectionString or keyVaultConnectionString is required.

  • keyVaultPassword - (Optional) A keyVaultPassword block as defined below. Use this argument to store SQL Server password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service.


A keyVaultConnectionString block supports the following:

  • linkedServiceName - (Required) Specifies the name of an existing Key Vault Data Factory Linked Service.

  • secretName - (Required) Specifies the secret name in Azure Key Vault that stores SQL Server connection string.


A keyVaultPassword block supports the following:

  • linkedServiceName - (Required) Specifies the name of an existing Key Vault Data Factory Linked Service.

  • secretName - (Required) Specifies the secret name in Azure Key Vault that stores SQL Server password.


Attributes Reference

The following attributes are exported:

  • id - The ID of the Data Factory Azure SQL Database Linked Service.

Timeouts

The timeouts block allows you to specify timeouts for certain actions:

  • create - (Defaults to 30 minutes) Used when creating the Data Factory Azure SQL Database Linked Service.
  • update - (Defaults to 30 minutes) Used when updating the Data Factory Azure SQL Database Linked Service.
  • read - (Defaults to 5 minutes) Used when retrieving the Data Factory Azure SQL Database Linked Service.
  • delete - (Defaults to 30 minutes) Used when deleting the Data Factory Azure SQL Database Linked Service.

Import

Data Factory Azure SQL Database Linked Service's can be imported using the resourceId, e.g.

terraform import azurerm_data_factory_linked_service_azure_sql_database.example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example/providers/Microsoft.DataFactory/factories/example/linkedservices/example