Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Model Formulir Web dan cara membuat halaman dan menggunakan kontrol.
Mengapa sumber daya eksternal di halaman saya diblokir di Pratinjau Langsung Web?
Jika Anda memiliki sumber daya eksternal dari domain pihak ketiga yang ada di halaman Anda, Anda mungkin melihat bahwa desainer di Pratinjau Langsung Web telah mencegah memuatnya, dan menampilkan pesan ini:
Anda mungkin bertanya-tanya mengapa sumber daya telah diblokir agar tidak dimuat di perancang, dan mengapa toast ditampilkan. Artikel ini menjelaskan mengapa sumber daya telah diblokir.
Gambaran Umum Pratinjau Langsung Web dan BrowserLink
Web Live Preview (WLP) adalah ekstensi Visual Studio yang dibangun di atas BrowserLink. WLP menggunakan BrowserLink untuk menyediakan saluran untuk komunikasi dua arah antara Visual Studio dan perancang. Komunikasi dua arah ini memungkinkan WLP menyediakan banyak fitur:
- Menyinkronkan konten dan node yang saat ini dipilih di desainer dengan yang ada di editor.
- Mendorong konten baru yang dibuat dari perancang ke editor.
- Menjalankan perintah Panel Tindakan.
Potensi Kerentanan Keamanan dengan Pratinjau Langsung Web dan BrowserLink
Jika Anda menyuntikkan skrip atau sumber daya apa pun dari pihak ketiga ke halaman web Anda, ini dapat mengekspos Anda ke potensi kerentanan keamanan dengan menggunakan WLP dan BrowserLink untuk membuat serangan Cross-Site Scripting (XSS).
Jika sumber daya pihak ketiga dapat menyuntikkan kode berbahaya ke situs, kode dapat menggunakan skrip Tautan Browser yang disuntikkan ke perancang untuk melakukan panggilan kembali ke Visual Studio. Skrip yang disuntikkan dapat memungkinkan kode menulis konten arbitrer dalam file yang terbuka di Visual Studio atau membuka vektor serangan lainnya.
Saat ini, tidak ada cara yang baik untuk mencegah penyerang berkomunikasi melalui skrip BrowserLink kembali ke Visual Studio.
Mitigasi kerentanan keamanan
Sebanyak mungkin, kami telah membatasi dan mengurangi kerentanan keamanan dari komunikasi melalui skrip BrowserLink kembali ke Visual Studio. Namun, beberapa serangan masih dapat dimungkinkan melalui serangan XSS.
Untuk mengurangi kemungkinan serangan XSS tersebut, secara default, WLP memblokir semua sumber daya eksternal agar tidak dimuat. Jika ada sumber daya eksternal yang diblokir, WLP menunjukkan notifikasi berikut di sudut kanan atas antarmuka.
(Dalam contoh ini, kami menggunakan SVG berikut, yang merupakan sumber daya eksternal yang digunakan dalam contoh aplikasi web: https://visualstudio.microsoft.com/wp-content/uploads/2021/10/Product-Icon.svg)
Jika jendela Microsoft Edge DevTools dibuka, Anda mungkin juga melihat pesan berikut yang menjelaskan mengapa sumber daya eksternal gagal dimuat:
Dalam notifikasi perancang, jika Anda memilih tautan klik di sini, akan menampilkan dialog berikut, dengan domain dari sumber daya yang diblokir secara otomatis ditambahkan ke daftar dialog.
Sumber daya apa pun yang berasal dari domain eksternal yang disimpan dalam daftar dialog tidak akan diblokir secara default di WLP dan dimuat seperti biasa. Setelah mengklik OK, perancang memuat ulang halaman dan memuat sumber daya yang diblokir sebelumnya yang domainnya ditambahkan ke dialog. Pastikan Anda hanya mengizinkan domain eksternal yang telah Anda verifikasi agar dapat dipercaya dan aman.
Mengklik tautan Pratinjau Langsung Web - domain eksternal dalam dialog toast memunculkan dialog yang sama, tetapi tidak akan menambahkan domain sumber daya yang diblokir ke dalam dialog:
Anda juga dapat mengakses dialog melalui Tools -> Options -> Web Live Preview -> Allowed external domains during design pengaturan. Pengaturan dialog adalah per instans Visual Studio yang diinstal.
Peringatan
Mengizinkan domain tidak diblokir secara default dapat mengekspos Anda ke serangan XSS yang disebutkan di atas. Sekali lagi, kami sangat menyarankan hanya mengizinkan domain eksternal yang dapat Anda verifikasi sebagai dapat dipercaya dan aman.