Validasi validasi <>
Gambaran Umum
Elemen mengonfigurasi <validation>
Internet Information Services (IIS) 7 untuk mendeteksi apakah aplikasi ASP.NET yang disiapkan untuk dijalankan dalam mode Klasik .NET perlu diubah agar berfungsi dengan benar dalam mode Terintegrasi.
IIS menghasilkan pesan kesalahan migrasi jika atribut validateIntegratedModeConfiguration diatur ke true dan salah satu hal berikut ini juga benar:
Aplikasi Anda mendefinisikan
<httpModules>
bagian dalam file Web.config.Dalam mode Terintegrasi IIS 7, modul ASP.NET ditentukan dengan modul asli di bagian modul> terpadu< di bawah <system.webServer>.
Aplikasi Anda mendefinisikan
<httpHandlers>
bagian dalam file Web.config.Dalam mode Terintegrasi IIS 7, pemetaan handler ASP.NET ditentukan di bagian handler> terpadu< di dalam <system.webServer>. Bagian <handler> menggantikan konfigurasi ASP.NET
<httpHandlers>
dan pemetaan prosesor skrip IIS, yang keduanya diperlukan untuk menyiapkan pemetaan handler ASP.NET 1.0.File Web.config aplikasi Anda menentukan
<identity impersonate="true" />
.Dalam mode Terintegrasi IIS 7, peniruan identitas klien tidak tersedia dalam beberapa tahap pemrosesan permintaan awal. Oleh karena itu, IIS akan menghasilkan pesan kesalahan migrasi. Jika aplikasi web ASP.NET Anda meniru kredensial klien (paling umum dengan skenario intranet), Anda mungkin ingin mengatur atribut validateIntegratedModeConfiguration ke false.
Catatan
Jika Anda memigrasikan konfigurasi secara manual, atau tidak memigrasikan konfigurasi tetapi Anda ingin IIS tetap dalam mode Terintegrasi (yang tidak disarankan), Anda dapat menonaktifkan pesan kesalahan migrasi dengan mengatur atribut validateIntegratedModeConfiguration ke false. Karena IIS tidak akan lagi memberikan peringatan untuk konfigurasi yang tidak didukung saat validateIntegratedModeConfigurationsalah, pastikan aplikasi Anda berfungsi dengan benar dalam mode Terintegrasi sebelum Anda membuat pengaturan ini.
Kompatibilitas
Versi | Catatan |
---|---|
IIS 10.0 | Elemen <validation> tidak dimodifikasi di IIS 10.0. |
IIS 8.5 | Elemen <validation> tidak dimodifikasi di IIS 8.5. |
IIS 8.0 | Elemen <validation> tidak dimodifikasi di IIS 8.0. |
IIS 7.5 | Elemen <validation> tidak dimodifikasi dalam IIS 7.5. |
IIS 7.0 | Elemen <validation> ini diperkenalkan di IIS 7.0. |
IIS 6.0 | T/A |
Siapkan
Elemen <validation>
ini disertakan dalam penginstalan default IIS 7.
Bagaimana Caranya
Tidak ada antarmuka pengguna untuk menambahkan validasi untuk IIS 7. Untuk contoh cara menambahkan validasi secara terprogram, lihat bagian Sampel Kode dari dokumen ini.
Konfigurasi
Atribut
Atribut | Deskripsi |
---|---|
validateIntegratedModeConfiguration |
Atribut Boolean opsional. Menentukan apakah validasi konfigurasi diaktifkan saat berjalan dalam mode Terintegrasi. Bagian <system.Web/httpHandlers> dan <system.Web/httpModules> serta peniruan data diperiksa selama proses ini.Nilai defaultnya adalah true . |
Elemen Anak
Tidak ada.
Sampel Konfigurasi
Sampel konfigurasi berikut memungkinkan validasi. > [! CATATAN]
Kutipan ini berasal dari file Web.config, sehingga sampel konfigurasi ini dapat digunakan pada tingkat folder apa pun dalam situs Web.
<configuration>
<system.webServer>
<validation validateIntegratedModeConfiguration="true" />
</system.webServer>
</configuration>
Kode Sampel
Sampel kode berikut mengaktifkan validasi untuk Situs Web Default.
AppCmd.exe
appcmd.exe set config "Default Web Site" -section:system.webServer/validation /validateIntegratedModeConfiguration:"True"
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using(ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetWebConfiguration("Default Web Site");
ConfigurationSection validationSection = config.GetSection("system.webServer/validation");
validationSection["validateIntegratedModeConfiguration"] = true;
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetWebConfiguration("Default Web Site")
Dim validationSection As ConfigurationSection = config.GetSection("system.webServer/validation")
validationSection("validateIntegratedModeConfiguration") = True
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site";
var validationSection = adminManager.GetAdminSection("system.webServer/validation", "MACHINE/WEBROOT/APPHOST/Default Web Site");
validationSection.Properties.Item("validateIntegratedModeConfiguration").Value = true;
adminManager.CommitChanges();
Vbscript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site"
Set validationSection = adminManager.GetAdminSection("system.webServer/validation", "MACHINE/WEBROOT/APPHOST/Default Web Site")
validationSection.Properties.Item("validateIntegratedModeConfiguration").Value = True
adminManager.CommitChanges()
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk