|
| 1 | +--- |
| 2 | +title: Data access strategies |
| 3 | +description: Azure Data Factory now supports Static IP address ranges. |
| 4 | +services: data-factory |
| 5 | +ms.author: abnarain |
| 6 | +author: nabhishek |
| 7 | +ms.service: data-factory |
| 8 | +ms.workload: data-services |
| 9 | +ms.topic: conceptual |
| 10 | +ms.date: 05/08/2020 |
| 11 | +--- |
| 12 | + |
| 13 | +# Data access strategies |
| 14 | + |
| 15 | +A vital security goal of an organization is to protect their data stores from random access over the internet, may it be an on-premise or a Cloud/ SaaS data store. |
| 16 | + |
| 17 | +Typically a cloud data store control access using the below mechanisms: |
| 18 | +* Firewall rules that limit connectivity by IP address |
| 19 | +* Authentication mechanisms that require users to prove their identity |
| 20 | +* Authorization mechanisms that restrict users to specific actions and data |
| 21 | + |
| 22 | +> [!TIP] |
| 23 | +> With the [introduction of Static IP address range](https://docs.microsoft.com/azure/data-factory/azure-integration-runtime-ip-addresses), you can now allow list IP ranges for the particular Azure integration runtime region to ensure you don’t have to allow all Azure IP addresses in your cloud data stores. This way, you can restrict the IP addresses that are permitted to access the data stores. |
| 24 | +
|
| 25 | +> [!NOTE] |
| 26 | +> The IP address ranges are blocked for Azure integration runtime and is currently only used for Data Movement, pipeline and external activities. Dataflows now do not use these IP ranges. |
| 27 | +
|
| 28 | +Though this should work in many scenarios, we do understand that a unique Static IP address per integration runtime would be desirable, but this wouldn't be possible using Azure Integration Runtime currently, which is serverless. If necessary, you can always set up a Self-hosted Integration Runtime and use your Static IP with it. |
| 29 | + |
| 30 | +## Data access strategies through Azure Data Factory |
| 31 | + |
| 32 | +* **[Trusted Service](https://docs.microsoft.com/azure/storage/common/storage-network-security#exceptions)** - Azure Storage (Blob, ADLS Gen2) supports firewall configuration that enables select trusted Azure platform services to access the storage account securely. Trusted Services enforces Managed Identity authentication, which ensures no other data factory can connect to this storage unless whitelisted to do so using it's managed identity. You can find more details in **[this blog](https://techcommunity.microsoft.com/t5/azure-data-factory/data-factory-is-now-a-trusted-service-in-azure-storage-and-azure/ba-p/964993)**. Hence, this is extremely secure and recommended. |
| 33 | +* **Unique Static IP** - You will need to set up a self-hosted integration runtime to get a Static IP for Data Factory connectors. This mechanism ensures you can block access from all other IP addresses. |
| 34 | +* **[Static IP range](https://docs.microsoft.com/azure/data-factory/azure-integration-runtime-ip-addresses)** - You can use Azure Integration Runtime's IP addresses to allow list it in your storage (say S3, Salesforce, etc.). It certainly restricts IP addresses that can connect to the data stores but also relies on Authentication/ Authorization rules. |
| 35 | +* **[Service Tag](https://docs.microsoft.com/azure/virtual-network/service-tags-overview)** - A service tag represents a group of IP address prefixes from a given Azure service (like Azure Data Factory). Microsoft manages the address prefixes encompassed by the service tag and automatically updates the service tag as addresses change, minimizing the complexity of frequent updates to network security rules. It is useful when whitelisting data access on IaaS hosted data stores in Virtual Network. |
| 36 | +* **Allow Azure Services** - Some services lets you allow all Azure services to connect to it in case you choose this option. |
| 37 | + * **Azure Integration Runtime** |
| 38 | + |
| 39 | + | Data Stores | Supported Network Security Mechanism on Data Stores | Trusted Service | Static IP range | Service Tags | Allow Azure Services | |
| 40 | + |------------------------------|-------------------------------------------------------------|---------------------|-----------------|--------------|----------------------| |
| 41 | + | Azure PaaS Data stores | Azure Cosmos DB | - | Yes | - | Yes | |
| 42 | + | | Azure Data Explorer | - | Yes* | Yes* | - | |
| 43 | + | | Azure Data Lake Gen1 | - | Yes | - | Yes | |
| 44 | + | | Azure Database for MariaDB, MySQL, PostgreSQL | - | Yes | - | Yes | |
| 45 | + | | Azure File Storage | - | Yes | - | . | |
| 46 | + | | Azure Storage (Blog, ADLS Gen2) | Yes (MSI auth only) | Yes | - | . | |
| 47 | + | | Azure SQL DB, SQL DW (Synapse Analytics), SQL Ml | - | Yes | - | Yes | |
| 48 | + | | Azure Key Vault (for fetching secrets/ connection string) | Yes | Yes | - | - | |
| 49 | + | Other PaaS/ SaaS Data stores | AWS S3, SalesForce, Google Cloud Storage, etc. | - | Yes | - | - | |
| 50 | + | Azure laaS | SQL Server, Oracle, etc. | - | Yes | Yes | - | |
| 51 | + | On-premise laaS | SQL Server, Oracle, etc. | - | Yes | - | - | |
| 52 | + |
| 53 | + **Applicable only when Azure Data Explorer is virtual network injected, and IP range can be applied on NSG/ Firewall.* |
| 54 | + |
| 55 | + * **Self-hosted Integration Runtime (in Vnet/on-premise)** |
| 56 | + |
| 57 | + | Data Stores | Supported Network Security Mechanism on Data Stores | Static IP | Trusted Services | |
| 58 | + |--------------------------------|---------------------------------------------------------------|-----------|---------------------| |
| 59 | + | Azure PaaS Data stores | Azure Cosmos DB | Yes | - | |
| 60 | + | | Azure Data Explorer | - | - | |
| 61 | + | | Azure Data Lake Gen1 | Yes | - | |
| 62 | + | | Azure Database for MariaDB, MySQL, PostgreSQL | Yes | - | |
| 63 | + | | Azure File Storage | Yes | - | |
| 64 | + | | Azure Storage (Blog, ADLS Gen2) | Yes | Yes (MSI auth only) | |
| 65 | + | | Azure SQL DB, SQL DW (Synapse Analytics), SQL Ml | Yes | - | |
| 66 | + | | Azure Key Vault (for fetching secrets/ connection string) | Yes | Yes | |
| 67 | + | Other PaaS/ SaaS Data stores | AWS S3, SalesForce, Google Cloud Storage, etc. | Yes | - | |
| 68 | + | Azure laaS | SQL Server, Oracle, etc. | Yes | - | |
| 69 | + | On-premise laaS | SQL Server, Oracle, etc. | Yes | - | |
| 70 | + |
| 71 | +## Next steps |
| 72 | + |
| 73 | +For more information, see the following related articles: |
| 74 | +* [Supported data stores](https://docs.microsoft.com/azure/data-factory/copy-activity-overview#supported-data-stores-and-formats) |
| 75 | +* [Azure Key Vault ‘Trusted Services’](https://docs.microsoft.com/azure/key-vault/key-vault-overview-vnet-service-endpoints#trusted-services) |
| 76 | +* [Azure Storage ‘Trusted Microsoft Services’](https://docs.microsoft.com/azure/storage/common/storage-network-security#trusted-microsoft-services) |
| 77 | +* [Managed identity for Data Factory](https://docs.microsoft.com/azure/data-factory/data-factory-service-identity) |
0 commit comments