Azure Data Factory - Pertimbangan keamanan untuk pergerakan data
Catatan
Artikel ini berlaku untuk versi 1 dari Azure Data Factory. Jika Anda menggunakan versi layanan Azure Data Factory saat ini, lihat pertimbangan keamanan pergerakan data untuk Azure Data Factory.
Pengantar
Artikel ini menjelaskan infrastruktur keamanan dasar yang digunakan layanan pergerakan data di Azure Data Factory untuk mengamankan data Anda. Sumber daya manajemen Azure Data Factory dibangun di atas infrastruktur keamanan Azure dan menggunakan semua langkah keamanan yang mungkin ditawarkan oleh Azure.
Dalam solusi Azure Data Factory, Anda membuat satu atau beberapa alur data. Pipeline adalah pengelompokan logis aktivitas yang melakukan tugas bersama-sama. Alur ini berada di wilayah tempat data factory dibuat.
Meskipun Data Factory hanya tersedia di wilayah AS Barat, AS Timur, dan Eropa Utara, layanan pergerakan data tersedia secara global di beberapa wilayah. Layanan Azure Data Factory memastikan bahwa data tidak meninggalkan area/wilayah geografis kecuali Anda secara eksplisit menginstruksikan layanan untuk menggunakan wilayah alternatif jika layanan pergerakan data belum digunakan ke wilayah tersebut.
Azure Data Factory sendiri tidak menyimpan data apa pun kecuali kredensial layanan tertaut untuk penyimpanan data cloud, yang dienkripsi menggunakan sertifikat. Ini memungkinkan Anda membuat alur kerja berbasis data untuk mengatur pergerakan data antara penyimpanan data yang didukung dan pemrosesan data menggunakan layanan komputasi di wilayah lain atau di lingkungan lokal. Ia juga memungkinkan Anda untuk memantau dan mengelola alur kerja dengan menggunakan mekanisme terprogram dan mekanisme antarmuka pengguna.
Pergerakan data menggunakan Azure Data Factory telah disertifikasi untuk:
Jika Anda tertarik dengan kepatuhan Azure dan bagaimana Azure mengamankan infrastrukturnya sendiri, kunjungi Microsoft Trust Center.
Dalam artikel ini, kami meninjau pertimbangan keamanan dalam dua skenario pergerakan data berikut:
- Skenario cloud- Dalam skenario ini, sumber dan tujuan Anda dapat diakses secara publik melalui internet. Ini termasuk layanan penyimpanan cloud terkelola seperti Azure Storage, Azure Synapse Analytics, Azure SQL Database, Azure Data Lake Store, Amazon S3, Amazon Redshift, layanan SaaS seperti Salesforce, dan protokol web seperti FTP dan OData. Anda bisa menemukan daftar lengkap sumber data yang didukung di sini.
- Skenario hibrida- Dalam skenario ini, sumber atau tujuan Anda berada di belakang firewall atau di dalam jaringan perusahaan lokal atau penyimpanan data berada dalam jaringan pribadi/jaringan virtual (paling sering sumber) dan tidak dapat diakses secara publik. Server database yang dihosting di mesin virtual juga termasuk dalam skenario ini.
Catatan
Artikel ini menggunakan modul Azure Az PowerShell, yang merupakan modul PowerShell yang direkomendasikan untuk berinteraksi dengan Azure. Untuk mulai menggunakan modul Az PowerShell, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Skenario cloud
Mengamankan kredensial penyimpanan data
Azure Data Factory melindungi kredensial penyimpanan data Anda dengan mengenkripsinya dengan menggunakan sertifikat yang dikelola oleh Microsoft. Sertifikat ini diputar setiap dua tahun (yang mencakup pembaruan sertifikat dan migrasi kredensial). Kredensial terenkripsi ini disimpan dengan aman di Microsoft Azure Storage yang dikelola oleh layanan manajemen Azure Data Factory. Untuk informasi selengkapnya tentang keamanan Penyimpanan Azure, lihat Ringkasan Keamanan Microsoft Azure Storage.
Enkripsi data dalam transit
Jika penyimpanan data cloud mendukung HTTPS atau TLS, semua transfer data antara layanan pergerakan data di Azure Data Factory dan penyimpanan data cloud melalui saluran aman HTTPS atau TLS.
Catatan
Semua koneksi ke Azure SQL Database dan Azure Synapse Analytics selalu memerlukan enkripsi (SSL/TLS) saat data sedang transit ke dan dari database. Saat penulisan alur menggunakan editor JSON, tambahkan properti enkripsi dan atur ke true dalam string koneksi. Ketika Anda menggunakan Wizard Salin, wzard mengatur properti ini secara default. Untuk Microsoft Azure Storage, Anda dapat menggunakan HTTPS dalam string koneksi.
Enkripsi data saat nonaktif
Beberapa penyimpanan data mendukung enkripsi data tidak aktif. Kami menyarankan agar Anda mengaktifkan mekanisme enkripsi data untuk penyimpanan data tersebut.
Azure Synapse Analytics
Transparent Data Encryption (TDE) di Azure Synapse Analytics membantu melindungi dari ancaman aktivitas berbahaya dengan melakukan enkripsi real-time dan dekripsi data Anda tidak aktif. Perilaku ini transparan kepada klien. Untuk informasi lebih lanjut, lihat Mengamankan database di Azure Synapse Analytics.
Azure SQL Database
Azure SQL Database juga mendukung transparent data encryption (TDE), yang membantu melindungi dari ancaman aktivitas berbahaya dengan melakukan enkripsi real-time dan dekripsi data tanpa memerlukan perubahan pada aplikasi. Perilaku ini transparan kepada klien. Untuk informasi selengkapnya, lihat Enkripsi Data Transparan dengan Microsoft Azure SQL Database.
Azure Data Lake Store
Penyimpanan Azure Data Lake juga menyediakan enkripsi untuk data yang disimpan di akun. Ketika diaktifkan, penyimpanan Data Lake secara otomatis mengenkripsi data sebelum bertahan dan mendekripsi sebelum pengambilan, membuatnya transparan kepada klien yang mengakses data. Untuk informasi selengkapnya, lihat Keamanan di Azure Data Lake Store.
Azure Blob Storage dan Azure Table Storage
Azure Blob Storage dan penyimpanan Azure Table mendukung Enkripsi Layanan Penyimpanan (SSE), yang secara otomatis mengenkripsi data Anda sebelum bertahan pada penyimpanan dan dekripsi sebelum pengambilan. Untuk informasi selengkapnya, lihat Enkripsi Azure Storage untuk data tidak aktif.
Amazon S3
Amazon S3 mendukung enkripsi data klien dan server tidak aktif. Untuk informasi selengkapnya, lihat Melindungi Data Menggunakan Enkripsi. Saat ini, Data Factory tidak mendukung Amazon S3 di dalam virtual private cloud (VPC).
Amazon Redshift
Amazon Redshift mendukung enkripsi kluster untuk data tidak aktif. Untuk informasi selengkapnya, lihat Amazon Redshift Database Encryption. Saat ini, Data Factory tidak mendukung Amazon Redshift di dalam VPC.
Salesforce
Salesforce mendukung Enkripsi Platform Perisai yang memungkinkan enkripsi semua file, lampiran, bidang kustom. Untuk informasi selengkapnya, lihat Memahami Alur Autentikasi OAuth Server Web.
Skenario Hibrid (menggunakan Data Management Gateway)
Skenario hibrid mengharuskan Data Management Gateway diinstal dalam jaringan lokal atau di dalam jaringan virtual (Azure) atau cloud pribadi virtual (Amazon). Gateway harus dapat mengakses penyimpanan data lokal. Untuk informasi selengkapnya tentang gateway, lihat Data Management Gateway.
Saluran perintah memungkinkan komunikasi antara layanan pergerakan data di Azure Data Factory dan Data Management Gateway. Komunikasi tersebut berisi informasi terkait kegiatan tersebut. Saluran data digunakan untuk mentransfer data antara penyimpanan data lokal dan penyimpanan data cloud.
Kredensial penyimpanan data di tempat
Kredensial untuk penyimpanan data lokal Anda disimpan secara lokal (bukan pada cloud). Mereka dapat diatur dengan tiga cara yang berbeda.
- Menggunakan plain-text (kurang aman) melalui HTTPS dari Portal Microsoft Azure/Wizard Salin. Kredensial diteruskan dalam teks biasa ke gateway lokal.
- Menggunakan pustaka Kriptografi JavaScript dari Wizard Salin.
- Menggunakan aplikasi pengelola kredensial berbasis sekali klik. Aplikasi sekali klik dijalankan pada mesin lokal yang memiliki akses ke gateway dan mengatur kredensial untuk penyimpanan data. Opsi ini dan opsi berikutnya adalah opsi yang paling aman. Aplikasi manajer kredensial, secara default, menggunakan port 8050 pada mesin dengan gateway untuk komunikasi yang aman.
- Gunakan cmdlet New-AzDataFactoryEncryptValue PowerShell untuk mengenkripsi kredensial. Cmdlet menggunakan sertifikat yang dikonfigurasi gateway untuk digunakan untuk mengenkripsi kredensial. Anda dapat menggunakan kredensial terenkripsi yang dikembalikan oleh cmdlet ini dan menambahkannya ke elemen EncryptedCredential dari connectionString dalam file JSON yang Anda gunakan dengan cmdlet New-AzDataFactoryLinkedService atau di cuplikan JSON di Editor Azure Data Factory pada portal. Opsi ini dan aplikasi sekali klik adalah opsi yang paling aman.
Enkripsi JavaScript enkripsi berbasis pustaka
Anda bisa mengenkripsi kredensial penyimpanan data menggunakan pustaka Kriptografi JavaScript dari Wizard Salin. Saat Anda memilih opsi ini, Wizard Salin mengambil kunci publik gateway dan menggunakannya untuk mengenkripsi kredensial penyimpanan data. Kredensial didekripsi oleh mesin gateway dan dilindungi oleh Windows DPAPI.
Browser yang didukung: IE8, IE9, IE10, IE11, Microsoft Azure Stack Edge, dan browser Firefox, Chrome, Opera, Safari terbaru.
Aplikasi pengelola kredensial sekali klik
Anda dapat meluncurkan aplikasi pengelola kredensial berbasis sekali klik dari portal Microsoft Azure/Wizard Salin saat penulisan alur. Aplikasi ini memastikan bahwa kredensial tidak ditransfer dalam teks biasa melalui kawat. Secara default, ia menggunakan port 8050 pada mesin dengan gateway untuk komunikasi yang aman. Jika perlu, port ini dapat diubah.
Saat ini, Data Management Gateway menggunakan satu sertifikat. Sertifikat ini dibuat selama instalasi gateway (berlaku untuk Data Management Gateway yang dibuat setelah November 2016 dan versi 2.4.xxxx.x atau yang lebih baru). Anda bisa mengganti sertifikat ini dengan sertifikat SSL/TLS Anda sendiri. Sertifikat ini digunakan oleh aplikasi pengelola kredensial sekali klik untuk menyambungkan dengan aman ke mesin gateway untuk mengatur kredensial penyimpanan data. Ini menyimpan kredensial penyimpanan data dengan aman di tempat dengan menggunakan Windows DPAPI pada mesin dengan gateway.
Catatan
Gateway lama yang diinstal sebelum November 2016 atau versi 2.3.xxxx.x terus menggunakan kredensial yang dienkripsi dan disimpan di cloud. Bahkan jika Anda memutakhirkan gateway ke versi terbaru, kredensial tidak dimigrasikan ke mesin lokal
| Versi gateway (selama pembuatan) | Mandat Disimpan | Enkripsi/ keamanan mandat |
|---|---|---|
| < = 2.3.xxxx.x | Pada cloud | Dienkripsi menggunakan sertifikat (berbeda dari yang digunakan oleh aplikasi manajer Kredensial) |
| > = 2.4.xxxx.x | Lokal | Diamankan melalui DPAPI |
Enkripsi saat transit
Semua transfer data melalui saluran aman HTTPS dan TLS melalui TCP untuk mencegah serangan man-in-the-middle selama komunikasi dengan layanan Azure.
Anda juga dapat menggunakan IPSec VPN atau Rute Ekspres untuk lebih mengamankan saluran komunikasi antara jaringan lokal Anda dan Azure.
Jaringan virtual adalah representasi logis jaringan Anda sendiri di cloud. Anda dapat menyambungkan jaringan lokal ke jaringan virtual Azure (VNet) Anda dengan menyiapkan IPSec VPN (situs ke situs) atau Rute Ekspres (Peering Pribadi)
Tabel berikut ini merangkum rekomendasi konfigurasi jaringan dan gateway berdasarkan kombinasi lokasi sumber dan tujuan yang berbeda untuk pergerakan data hibrid.
| Sumber | Tujuan | Konfigurasi jaringan | Penyetelan gateway |
|---|---|---|---|
| Lokal | Komputer virtual dan layanan cloud yang disebarkan di jaringan virtual | IPSec VPN (point-to-site atau situs-ke-situs) | Gateway dapat diinstal baik di tempat atau di Azure virtual machine (VM) di VNet |
| Lokal | Jaringan virtual, termasuk semua komputer virtual dan layanan cloud | ExpressRoute (Peering Pribadi) | Gateway dapat diinstal baik di tempat atau di Azure VM di VNet |
| Lokal | Layanan berbasis Azure yang memiliki titik akhir publik | ExpressRoute (Peering Publik) | Gateway harus diinstal di tempat |
Gambar berikut ini memperlihatkan penggunaan Data Management Gateway untuk memindahkan data antara database lokal dan layanan Azure menggunakan rute Ekspres dan IPSec VPN (dengan Jaringan Virtual):
Rute Ekspres:
IPSec VPN:
Konfigurasi firewall dan memfilter alamat IP gateway
Persyaratan firewall untuk jaringan lokal/privat
Di perusahaan, firewall perusahaan berjalan pada router pusat organisasi. Dan, firewall Windows berjalan sebagai daemon pada mesin lokal tempat gateway diinstal.
Tabel berikut menyediakan port keluar dan persyaratan domain untuk firewall perusahaan.
| Nama domain | Port keluar | Deskripsi |
|---|---|---|
*.servicebus.windows.net |
443, 80 | Diperlukan oleh gateway untuk menyambungkan ke layanan pergerakan data di Azure Data Factory |
*.core.windows.net |
443 | Digunakan oleh gateway untuk menyambung ke Akun Microsoft Azure Storage saat Anda menggunakan fitur penyalinan bertahap. |
*.frontend.clouddatahub.net |
443 | Diperlukan oleh gateway untuk menyambungkan ke layanan Azure Data Factory. |
*.database.windows.net |
1433 | (OPSIONAL) diperlukan saat tujuan Anda adalah Azure SQL Database/ Azure Synapse Analytics. Gunakan fitur salinan yang bertahap untuk menyalin data ke SQL Database atau Azure Synapse Analytics tanpa membuka port 1433. |
*.azuredatalakestore.net |
443 | (OPSIONAL) diperlukan saat tujuan Anda adalah penyimpanan Azure Data Lake |
Catatan
Anda mungkin harus mengelola domain port/pemfilteran di tingkat firewall perusahaan sebagaimana diperlukan oleh masing-masing sumber data. Tabel ini hanya menggunakan Azure SQL Database, Azure Synapse Analytics, Azure Data Lake Store sebagai contoh.
Tabel berikut ini menyediakan persyaratan port masuk untuk firewall windows.
| Port masuk | Deskripsi |
|---|---|
| 8050 (TCP) | Diperlukan oleh aplikasi manajer kredensial untuk mengatur kredensial penyimpanan data lokal di gateway dengan aman. |
Konfigurasi/pemfilteran IP di penyimpanan data
Beberapa penyimpanan data di cloud juga memerlukan persetujuan alamat IP mesin yang mengaksesnya. Pastikan bahwa alamat IP mesin gateway disetujui/dikonfigurasi dalam firewall dengan tepat.
Penyimpanan data awan berikut memerlukan persetujuan alamat IP mesin gateway. Beberapa penyimpanan data ini, secara default, mungkin tidak memerlukan persetujuan alamat IP.
Tanya jawab umum
Pertanyaan: Bisakah Gateway dibagikan di berbagai data factory? Jawaban: Kami belum mendukung fitur ini. Kami secara aktif mengerjakannya.
Pertanyaan: Apa saja persyaratan pemindahan agar gateway berfungsi? Jawaban: Gateway membuat koneksi berbasis HTTP untuk membuka internet. Port keluar 443 dan 80 harus dibuka untuk gateway dengan tujuan membuat koneksi ini. Buka port masuk 8050 hanya di tingkat komputer (bukan di tingkat firewall perusahaan) untuk aplikasi Pengelola Kredensial. Jika Azure SQL Database atau Azure Synapse Analytics digunakan sebagai sumber atau tujuan, maka Anda juga perlu membuka port 1433. Untuk informasi selengkapnya, lihat Bagian Konfigurasi firewall dan memfilter alamat IP.
Pertanyaan: Apa persyaratan sertifikat untuk Gateway? Jawaban: Gateway saat ini memerlukan sertifikat yang digunakan oleh aplikasi manajer kredensial untuk mengatur kredensial penyimpanan data dengan aman. Sertifikat ini adalah sertifikat yang ditandatangani sendiri yang dibuat dan dikonfigurasi oleh pengaturan gateway. Anda dapat menggunakan sertifikat TLS/SSL Anda sendiri sebagai gantinya. Untuk informasi selengkapnya, lihat bagian aplikasi manajer kredensial sekali klik.
Langkah berikutnya
Untuk informasi tentang kinerja aktivitas salin, lihat Menyalin kinerja aktivitas dan panduan penyetelan.