Bagikan melalui


Keamanan BITS, Token, dan Akun Administrator

Panggilan balik sertifikat Server HTTP

Memvalidasi sertifikat server dengan benar adalah bagian kunci dari menjaga keamanan HTTPS. BITS membantu dengan selalu memvalidasi sertifikat server terhadap daftar persyaratan yang ditentukan oleh SetSecurityFlags. Secara default, BITS menggunakan validasi sertifikat gaya "browser".

Anda juga dapat menentukan fungsi kustom yang akan dipanggil untuk memvalidasi sertifikat lebih lanjut. Atur panggilan balik sertifikat server dengan metode SetServerCertificateValidationInterface. Metode Anda hanya akan dipanggil setelah sistem operasi memvalidasi sertifikat berdasarkan panggilan SetSecurityFlag.

Sertifikat Klien HTTP

Anda dapat mengatur sertifikat klien pada pekerjaan HTTP dengan dua metode pengaturan sertifikat yang berbeda. Anda dapat mengatur sertifikat baik berdasarkan ID atau dengan nama subjek sertifikat. Sertifikat klien akan digunakan selama negosiasi TLS (atau negosiasi ulang) jika server memerlukan autentikasi klien.

Header HTTP tulis-saja

BITS membantu Anda melindungi token autentikasi HTTP dari akses yang tidak diinginkan. Seringkali server HTTP akan membutuhkan semacam token atau string keamanan saat mengunduh atau mengunggah file ke server HTTP.

BITS melindungi token autentikasi ini dalam beberapa cara.

Pengguna Standar dan Administrator

Pengguna yang berada dalam grup administrator dapat menjalankan proses dengan akses pengguna standar atau dalam status ditinggikan (dengan hak istimewa administrator). BITS akan menjalankan pekerjaan dalam salah satu status selama pengguna masuk ke komputer. Namun, jika pengguna membuat pekerjaan atau mengambil kepemilikan pekerjaan dalam keadaan ditingkatkan, pengguna harus dalam status ditingkatkan untuk mengambil atau memodifikasi pekerjaan (jika tidak, panggilan gagal dengan Akses Ditolak (0x80070005)). Untuk menentukan status pekerjaan yang ditinggikan, panggil metode IBackgroundCopyJob4::GetOwnerElevationState.

Pengguna standar tidak dapat menghitung atau mengubah pekerjaan yang dimiliki oleh pengguna lain.

Tingkat integritas

Selain status yang ditingkatkan, tingkat integritas token dapat menentukan apakah pengguna dapat memodifikasi pekerjaan. Klien tidak dapat mengubah pekerjaan yang dibuat oleh token dengan tingkat integritas yang lebih tinggi. Secara khusus, banyak token sistem lokal membawa tingkat integritas yang lebih tinggi dari tingkat integritas jendela yang ditinggikan, sehingga tidak dapat dimodifikasi oleh administrator dari jendela perintah yang ditinggikan biasa. Misalnya, pekerjaan Windows Update dan SMS berjalan sebagai LocalSystem yang memiliki tingkat integritas yang lebih tinggi daripada token yang ditinggikan sehingga administrator tidak dapat memodifikasi atau menghapus pekerjaan ini. Untuk mengubah pekerjaan ini, buat tugas Penjadwal Tugas yang berjalan sebagai sistem lokal. Tugas ini dapat menjalankan aplikasi konsol yang menggunakan BITS API, atau tugas dapat menjalankan skrip yang memanggil BitsAdmin.exe. Untuk menentukan tingkat integritas yang digunakan, panggil metode IBackgroundCopyJob4::GetOwnerIntegrityLevel.

Identitas layanan

Mulai dari Pembaruan Windows 10 Mei 2019 (10.0; Build 18362), pekerjaan BITS yang dimulai dari layanan akan mempertahankan identitas layanan. Ini memungkinkan layanan yang ingin menggunakan BITS untuk mengunduh file ke atau mengunggah file dari direktori yang izinnya terkait dengan SID layanan. Selain itu, lalu lintas jaringan akan dikaitkan dengan benar ke layanan yang meminta pekerjaan BITS alih-alih dikaitkan dengan BITS.