Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, bu API'nin başvuru belgelerine ek açıklamalar sağlar.
Create yöntemini kullanarak XmlReader örnekleri elde edersiniz. Bu yöntem, oluşturduğu nesnede XmlReaderSettings hangi özelliklerin uygulanacağını belirtmek için sınıfını XmlReader kullanır.
Uyumluluk denetimleri, doğrulama ve diğer yaygın senaryolar için hangi ayarların kullanılacağını öğrenmek amacıyla XmlReader ve Create başvuru sayfalarının Açıklama bölümlerine bakın. Varsayılan ayarların XmlReaderSettings() listesi için oluşturucuya bakın.
Güvenlikle ilgili dikkat edilmesi gerekenler
sınıfını XmlReaderSettings kullanırken aşağıdakileri göz önünde bulundurun.
Bir ProcessInlineSchema nesnenin ProcessSchemaLocation ve XmlReaderSettings doğrulama bayrakları varsayılan olarak ayarlanmaz. Bu bayraklar ayarlandığında, XmlResolver nesnesi, XmlReaderSettings öğesindeki örnek belgede XmlReader karşılaşılan şema konumlarını çözümlemek için kullanılır. XmlResolver nesnesi
nullise, ProcessInlineSchema ve ProcessSchemaLocation doğrulama bayrakları ayarlansa bile şema konumları çözümlenmez.Doğrulama sırasında eklenen şemalar yeni türler ekler ve doğrulanan belgenin doğrulama sonucunu değiştirebilir. Sonuç olarak dış şemalar yalnızca güvenilir kaynaklardan çözümlenmelidir.
Doğrulama hata iletileri hassas içerik modeli bilgilerini açığa çıkarabilir. Doğrulama hatası ve uyarı iletileri, ValidationEventHandler temsilcisi kullanılarak işlenir veya XmlSchemaValidationException nesnesine hiçbir olay işleyicisi sağlanmadığında XmlReaderSettings olarak sunulur (doğrulama uyarıları bir XmlSchemaValidationException istisnasının fırlatılmasına neden olmaz). Bu içerik modeli bilgileri güvenilmeyen senaryolarda gösterilmemelidir. Doğrulama uyarı iletileri varsayılan olarak gizlenmiştir ve ReportValidationWarnings bayrağı ayarlanarak raporlanabilir.
SourceUri özelliği, XmlSchemaValidationException istisnanın sebebi olan şema dosyasının URI yolunu döndürür. SourceUri özelliği güvenilmeyen senaryolarda kullanıma sunulmamalıdır.
ProcessIdentityConstraints bayrağının devre dışı bırakılması (varsayılan olarak etkindir), kimlik kısıtlamaları olan bir şemaya karşı, belgenin büyük bir bölümü üzerinde yüksek kullanılabilirlik senaryolarında, güvenilmeyen ve büyük XML belgeleri doğrulanırken önerilir.
XmlReaderSettings nesneleri, kullanıcı kimlik bilgileri gibi hassas bilgiler içerebilir. Nesneleri önbelleğe alırken XmlReaderSettings veya nesneyi bir bileşenden diğerine geçirirken XmlReaderSettings dikkatli olmanız gerekir.
DTD işleme varsayılan olarak devre dışıdır. DTD işlemeyi etkinleştirirseniz, güvenilmeyen kaynaklardan gelen DTD'leri dahil etme konusunda dikkatli olmanız ve olası hizmet reddi saldırılarına karşı uyanık olmanız gerekir. XmlSecureResolver kullanarak XmlReader'nin erişebileceği kaynakları kısıtlayın.
Güvenilmeyen bir kaynaktan , NameTableve XmlNamespaceManager nesneleri gibi XmlResolverdestekleyici bileşenleri kabul etmeyin.
kullanan XmlReader bir uygulamanın bellek kullanımı, ayrıştırılmış XML belgesinin boyutuyla bağıntıya sahip olabilir. Hizmet reddi saldırısının bir biçimi, ayrıştırmak üzere aşırı büyük XML belgelerinin gönderilmesidir. Özelliği ayarlayarak MaxCharactersInDocument ayrıştırılabilir belgenin boyutunu sınırlayabilir ve ardından özelliği ayarlayarak MaxCharactersFromEntities varlıkların genişletilmesiyle sonuçlanan karakter sayısını sınırlayabilirsiniz.