Bagikan melalui


Keamanan Alur Kerja

Windows Workflow Foundation (WF) terintegrasi dengan beberapa teknologi, seperti Microsoft SQL Server dan Windows Communication Foundation (WCF). Berinteraksi dengan teknologi ini dapat menimbulkan masalah keamanan dalam alur kerja Anda jika dilakukan dengan tidak benar.

Catatan

Alur kerja menjelaskan urutan eksekusi dan dependensi antara tugas pendek atau jangka panjang. Sebagai mekanisme eksekusi kode, hanya kode tepercaya yang harus dimuat dan dijalankan. Pengembang harus memastikan bahwa hanya alur kerja tepercaya yang digunakan dengan aplikasi menggunakan WF.

Masalah Keamanan Persistensi

  1. Alur kerja yang menggunakan aktivitas Delay dan persistensi perlu diaktifkan kembali oleh layanan. Windows AppFabric menggunakan Workflow Management Service (WMS) untuk mengaktifkan kembali alur kerja dengan timer yang kedaluwarsa. WMS membuat WorkflowServiceHost untuk meng-host alur kerja yang diaktifkan kembali. Jika layanan WMS dihentikan, alur kerja yang bertahan tidak akan diaktifkan kembali jika timer-nya kedaluwarsa.

  2. Akses ke pembuatan instans yang tahan lama harus dilindungi terhadap entitas jahat di luar domain aplikasi. Selain itu, pengembang harus memastikan bahwa kode berbahaya tidak dapat dijalankan dalam domain aplikasi yang sama dengan kode pembuatan instans yang tahan lama.

  3. Pembuatan instans yang tahan lama tidak boleh dijalankan dengan izin yang ditingkatkan (Administrator).

  4. Data yang diproses di luar domain aplikasi harus dilindungi.

  5. Aplikasi yang memerlukan isolasi keamanan tidak boleh berbagi instans abstraksi skema yang sama. Aplikasi tersebut harus menggunakan penyedia penyimpanan yang berbeda, atau penyedia penyimpanan yang dikonfigurasi untuk menggunakan instantiasi penyimpanan yang berbeda.

Masalah Keamanan SQL Server

  • Jika sejumlah besar aktivitas turunan, lokasi, marka buku, ekstensi host, atau cakupan digunakan, atau jika marka buku dengan payload yang sangat besar digunakan, memori bisa habis, atau jumlah ruang database yang tidak semestinya bisa dialokasikan selama persistensi. Ini dapat dikurangi dengan menggunakan keamanan tingkat objek dan tingkat database.

  • Saat menggunakan SqlWorkflowInstanceStore, penyimpanan instans harus diamankan.

  • Data sensitif dalam penyimpanan instans harus dienkripsi. Untuk informasi selengkapnya, lihat Enkripsi SQL Server.

  • Karena string koneksi database sering disertakan dalam file konfigurasi, keamanan tingkat jendela (ACL) harus digunakan untuk memastikan bahwa file konfigurasi (biasanya Web.Config) aman, dan informasi masuk dan kata sandi tidak disertakan dalam string koneksi. Sebagai alternatif, autentikasi Windows harus digunakan antara database dan server web.

Pertimbangan untuk WorkflowServiceHost

CTP Paket Keamanan WF

Pratinjau teknologi komunitas (CTP) 1 Microsoft WF Security Pack adalah serangkaian aktivitas dan implementasinya berdasarkan Windows Workflow Foundation di .NET Framework 4 (WF 4) dan Windows Identity Foundation (WIF). Microsoft WF Security Pack CTP 1 berisi aktivitas dan perancangnya yang menggambarkan cara mudah mengaktifkan berbagai skenario terkait keamanan menggunakan alur kerja, termasuk:

  1. Meniru identitas klien dalam alur kerja

  2. Otorisasi dalam alur kerja, seperti PrincipalPermission dan validasi Klaim

  3. Pesan yang diautentikasi menggunakan ClientCredentials yang ditentukan dalam alur kerja, seperti nama pengguna/kata sandi atau token yang diambil dari Layanan Token Keamanan (STS)

  4. Mengalirkan token keamanan klien ke layanan back-end (delegasi berbasis klaim) menggunakan WS-Trust ActAs