Share via


Etkinleştirme ve devre dışı bırakmaRDL Korumalı Alanı

rdl (rapor tanımlama dili) kum havuzuna alma özelliği algılamak ve belirli türde bir ortamda bir tek web grubu rapor sunucuları kullanan birden çok kiracılar, tek tek kiracılar tarafından kaynakları kullanımını sağlar.Bunun bir örneği burada birden fazla kiracılar ve belki de farklı şirketler tarafından kullanılan rapor sunucuları tek bir web çiftliği koruyabilir barındırma hizmetleri senaryodur.Olarak bir rapor sunucusu yöneticisi, aşağıdaki hedefleri yardımcı olmak bu özelliği etkinleştirebilir:

  • Dış kaynak boyutlarını kısıtlamak.Dış kaynaklar ve harita verileri görüntüler, XSLT dosyaları içerir.

  • Raporun saat, sınır türü ve kullanılan üyeleri ifade metin olarak yayınlayın.

  • Rapor işleme sırasında saat, metin uzunluğunu ve ifadeler için dönen değer boyutunu sınırlamak.

Zaman RDL Korumalı Alanı olan etkin, aşağıdaki özellikleri devre dışı bırakılır:

  • Özel kod <Code> öğesi bir rapor tanımı.

  • rdl için geriye dönük uyumluluk modunu SQL Server 2005 Reporting Services Özel rapor öğeler.

  • Adlandırılmış parametreleri ifadelerde.

Bu konuda her öğesi açıklar <RDLSandboxing> öğesi RSReportServer.Config dosya.Bu dosya değiştirme hakkında daha fazla bilgi için bkz: Nasıl yapılır: Raporlama Hizmetleri Yapılandırma dosyası Değiştir.Sunucu izleme günlüğü kayıtları ilgili etkinliğin RDL Korumalı Alanı özelliği.İzleme günlükleri hakkında daha fazla bilgi için bkz: Raporu sunucu hizmeti izleme günlüğü.

Örnek yapılandırma

Aşağıdaki örnek için ayarlar ve örnek değerleri gösterir <RDLSandboxing> öğesi RSReportServer.Config dosya.

  <RDLSandboxing>
     <MaxExpressionLength>5000</MaxExpressionLength>
     <MaxResourceSize>5000</MaxResourceSize>
     <MaxStringResultLength>3000</MaxStringResultLength>
     <MaxArrayResultLength>250</MaxArrayResultLength>
     <Types>
        <Allow Namespace=”System.Drawing” AllowNew=”True”>Bitmap</Allow>
        <Allow Namespace=”TypeConverters.Custom” AllowNew=”True”>*</Allow>
     </Types>
     <Members>
        <Deny>Format</Deny>
        <Deny>StrDup</Deny>
     </Members>
  </RDLSandboxing>

Yapılandırma ayarları

Aşağıdaki tablo yapılandırma ayarları hakkında bilgi sağlar.Ayarları göründükleri de sırada sunulur yapılandırma dosyası.

Ayarı

Açıklama

MaxExpressionLength

rdl ifadelerinde, izin verilen karakter sayısı üst sınırı.

Varsayılan: 1000

MaxResourceSize

kb bir dış kaynak için izin verilen en fazla sayısı.

Varsayılan: 100

MaxStringResultLength

rdl ifade için bir dönüş değeri izin verilen karakter sayısı üst sınırı.

Varsayılan: 1000

MaxArrayResultLength

rdl ifade için bir dizi dönüş değeri izin verilen öğe sayısı üst sınırı.

Varsayılan: 100

Türler

rdl deyimler içinde izin vermek için üye listesi.

İzin ver

Bir tür veya küme rdl ifadelerinde izin türleri.

Ad alanı

Öznitelik için Ver yani, değeri için bir veya daha fazla türleri içeren ad.Bu özellik durum duyarlıdır.

AllowNew

Boole Öznitelik için Ver türden yeni örneklerini rdl ifadelerde veya bir rdl oluşturulmasına izin verilip verilmeyeceğini denetler <Class> öğesi.

NotNot
Zaman RDLSandboxing etkin, ayarı ne olursa olsun rdl ifadelerde yeni diziler oluşturulamıyor AllowNew.

Değer

İçin değer Ver yani izin rdl ifadelerde türü adı.Değeri * ad alanındaki tüm türleri izin verildiğini gösterir.Bu özellik durum duyarlıdır.

Üyeler

Dahil olan türleri listesi için <Types> öğesi, üye isimlerinin, verilmez rdl ifadeler.

İzin verme

rdl ifadelerinde izin verilmeyen bir üye adı.Bu özellik durum duyarlıdır.

NotNot
Zaman izin verme bir üye için belirtilen tüm türleri için bu adı taşıyan tüm üyelerini verilmez.

Deyimlerle çalýþma, RDL Korumalı Alanı etkin

Değiştirebileceğiniz RDL Korumalı Alanı özelliği aşağıdaki yollarla bir deyim tarafından kullanılan kaynakları yönetmenize yardımcı olmak için:

  • ifade için kullanılan karakter sayısını sınırlayın.

  • Tarafından döndürülen sonuç boyutunu sınırlamak bir ifade.

  • Kullanılabilir türleri belirli bir listesini ver bir ifade.

  • Üye listesi kullanılabilir izin verilen türler listesi adıyla sınırlamak bir ifade.

  • RDL Korumalı Alanı Özelliği onaylanmış türlerinin bir listesini ve reddedilen üye listesi oluşturmanıza olanak sağlar.Onaylanan tiplerine izin verilenler listesi olarak adlandırılır.Reddedilen üye listesi adı verilen bir blok listesi.

Not

De rapor tanımı, bir bilgisayarın her bir ifade başvuru örneklerini türünü bilemez.Bir üye eklediğinizde, blok listesinde, reddederek tüm üyeleri bu adı, izin ver listesinde tüm türleri arasında.

rdl ifade sonuçlar çalışma zamanında onaylanmış saat.rdl ifadeler de doğrulanmış rapor tanımı raporu ne zaman yayınlanır.Monitör rapor sunucusu ihlalleri için izleme günlüğü.Daha fazla bilgi için bkz: Raporu sunucu hizmeti izleme günlüğü.

Türlerle çalýþmak

Bir tür izin verilenler listesine eklediğinizde, rdl ifadeler erişmek için aşağıdaki giriş noktalarını denetlediğiniz:

  • Static üyeler bir tür.

  • The Visual Basic New method.

  • The <Classes> element in the report definition.

  • Eklemiş olduğunuz üyeleri blok izin ver listesinde bir tür listesi.

İzin verilenler listesi, aşağıdaki giriş noktalarını denetler:

  • Rapor datasets.Geçerli rdl her türlü sorgularından döndürülen rapor datasets alanları içerebilir.

  • Rapor parametreleri.Kullanıcı tarafından sağlanan parametre değerleri, geçerli rdl her türlü içerebilir.

  • Blok listede olmayan üyelerinin etkin bir türü.Tüm üyeleri tüm türleri izin ver listesinde, varsayılan olarak etkinleştirilir.Bir üye adı eklediğinizde, blok listesinde, size reddetme, aynı ada sahip tüm üyeler İzin Verdiklerim listesinde bulunan tüm türleri arasında.

Üye, bir tür etkinleştirir, ancak farklı bir türü için aynı ada sahip bir üye engellemek için aşağıdakileri yapmanız gerekir:

  • Ekleme bir <Deny> öğesi için üye adı.

  • Proxy üye etkinleştirmek istediğiniz üyenin özel bir derleme sınıfında farklı bir adla oluşturun.

  • Yeni bir sınıf izin verilenler listesine ekleyin.

To add Visual Basic .net Framework işlevler izin verilenler listesine eklemek gelen türleri ve karşılık gelen Microsoft.VisualBasic ad alanı için izin ver listesi.

To add Visual Basic .net Framework türü anahtar sözcükler izin verilenler listesine karşılık gelen clr türü ekleme izin ver listesi.Örneğin, kullanmak için Visual Basic .net Framework anahtar sözcük Integer, eklemek için aşağıdaki xml parçası <RDLSandboxing> öğesi:

<Allow Namespace="System">Int32</Allow>

Genel eklemek veya bir Visual Basic .net Framework nullable türü izin verilenler listesine gerekir bunu şu:

  • Genel için bir proxy türü oluşturmak veya Visual Basic .net Framework nullable türü.

  • Proxy türü izin verilenler listesine ekleyin.

Bir tür özel bir derleme izin verilenler listesine ekleyerek değil örtülü olarak vermek yürütmek derleme izni.Özellikle değiştirmeniz gerekir kod erişimi güvenliği sağlamak ve dosya yürütmek izni derlemenize için.Daha fazla bilgi için bkz: Raporlama Servisleri içinde kod erişimi güvenliği.

Koruma <reddetme> üye listesi

Yeni bir tür izin verilenler listesine eklediğinizde, ne zaman güncelleştirmek gerekebilir belirlemek için aşağıdaki listeyi kullanın blok üye listesi:

  • Özel derleme sürüm ile güncelleştirdiğinizde, yeni türleri tanıtır.

  • Üyelerin izin ver listesinde türlerini eklediğinizde.

  • Güncelleştirdiğinizde .NET Framework rapor sunucusu.

  • Yükselttiğinizde rapor sunucusu bir sonraki sürüm , Reporting Services.

  • Yeni üyeler için rdl türleri eklenmiş olabilir çünkü bir sonraki rdl şema işlemek için rapor sunucusu güncelleştirdiğinizde.

İşleçler ve yeni çalışma

Varsayılan olarak, Visual Basic .Framework dil İşletmenleri hariç net New, her zaman izin.The New operator is controlled by the AllowNew attribute on the <Allow> element.Varsayılan koleksiyon gibi diğer dil işleçleri erişimci işleç ! ve Visual Basic .net Framework artığını makrolar gibi CInt, her zaman izin.

Operatörler için ekleme bir blok listesi, özel işleçleri dahil desteklenmiyor.Bir tür işleçleri dışlamak için aşağıdakileri yapmanız gerekir:

  • Dışarıda bırakmak istediğiniz işleçleri uygulamayan bir proxy türü oluşturun.

  • Proxy türü izin verilenler listesine ekleyin.

Yeni bir dizi içinde bir rdl oluşturmak için ifade, tanımladığınız bir sınıf bir yöntem, bir dizi oluşturmak ve o sınıfın izin verilenler listesine ekleyin.

Yeni bir dizi içinde bir rdl oluşturmak için ifade, aşağıdakileri yapmanız gerekir:

  • Yeni bir sınıf tanımlamak ve bir dizi yöntem bu sınıf üzerinde oluşturun.

  • Sınıf izin verilenler listesine ekleyin.